Snap for 4861480 from 4d4e6ab87a to qt-release

Change-Id: Ib203b9c767b8dbc35e26885c1fc03b60f96b7d66
This commit is contained in:
android-build-team Robot
2018-06-26 03:25:51 +00:00
4 changed files with 91 additions and 15 deletions

View File

@@ -23,6 +23,7 @@ import android.os.UserHandle;
import android.os.UserManager;
import android.text.format.DateUtils;
import android.util.ArrayMap;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.Switch;
@@ -46,6 +47,8 @@ import java.util.Map;
*/
public class AppStateNotificationBridge extends AppStateBaseBridge {
private final String TAG = "AppStateNotificationBridge";
private final boolean DEBUG = true;
private final Context mContext;
private IUsageStatsManager mUsageStatsManager;
protected List<Integer> mUserIds;
@@ -70,7 +73,12 @@ public class AppStateNotificationBridge extends AppStateBaseBridge {
@Override
protected void loadAllExtraInfo() {
ArrayList<AppEntry> apps = mAppSession.getAllApps();
if (apps == null) return;
if (apps == null) {
if (DEBUG) {
Log.d(TAG, "No apps. No extra info loaded");
}
return;
}
final Map<String, NotificationsSentState> map = getAggregatedUsageEvents();
for (AppEntry entry : apps) {

View File

@@ -16,7 +16,6 @@
package com.android.settings.applications.manageapplications;
import static androidx.recyclerview.widget.RecyclerView.SCROLL_STATE_IDLE;
import static com.android.settings.applications.manageapplications.AppFilterRegistry
.FILTER_APPS_ALL;
import static com.android.settings.applications.manageapplications.AppFilterRegistry
@@ -38,6 +37,8 @@ import static com.android.settings.applications.manageapplications.AppFilterRegi
import static com.android.settings.applications.manageapplications.AppFilterRegistry
.FILTER_APPS_WORK;
import static androidx.recyclerview.widget.RecyclerView.SCROLL_STATE_IDLE;
import android.annotation.Nullable;
import android.annotation.StringRes;
import android.app.Activity;
@@ -141,7 +142,7 @@ public class ManageApplications extends InstrumentedFragment
implements View.OnClickListener, OnItemSelectedListener {
static final String TAG = "ManageApplications";
static final boolean DEBUG = Log.isLoggable(TAG, Log.DEBUG);
static final boolean DEBUG = true;
// Intent extras.
public static final String EXTRA_CLASSNAME = "classname";
@@ -721,7 +722,9 @@ public class ManageApplications extends InstrumentedFragment
mFilter = mFilterAdapter.getFilter(position);
mApplications.setFilter(mFilter);
if (DEBUG) Log.d(TAG, "Selecting filter " + mFilter);
if (DEBUG) {
Log.d(TAG, "Selecting filter " + getContext().getText(mFilter.getTitle()));
}
}
@Override
@@ -784,7 +787,7 @@ public class ManageApplications extends InstrumentedFragment
return;
}
if (DEBUG) {
Log.d(TAG, "Enabling filter " + filter);
Log.d(TAG, "Enabling filter " + mContext.getText(filter.getTitle()));
}
mFilterOptions.add(filter);
Collections.sort(mFilterOptions);
@@ -793,7 +796,8 @@ public class ManageApplications extends InstrumentedFragment
notifyDataSetChanged();
if (mFilterOptions.size() == 1) {
if (DEBUG) {
Log.d(TAG, "Auto selecting filter " + filter);
Log.d(TAG, "Auto selecting filter " + filter + " " + mContext.getText(
filter.getTitle()));
}
mManageApplications.mFilterSpinner.setSelection(0);
mManageApplications.onItemSelected(null, null, 0, 0);
@@ -816,7 +820,8 @@ public class ManageApplications extends InstrumentedFragment
return;
}
if (DEBUG) {
Log.d(TAG, "Disabling filter " + filter);
Log.d(TAG, "Disabling filter " + filter + " " + mContext.getText(
filter.getTitle()));
}
Collections.sort(mFilterOptions);
mManageApplications.mSpinnerHeader.setVisibility(
@@ -825,7 +830,8 @@ public class ManageApplications extends InstrumentedFragment
if (mManageApplications.mFilter == filter) {
if (mFilterOptions.size() > 0) {
if (DEBUG) {
Log.d(TAG, "Auto selecting filter " + mFilterOptions.get(0));
Log.d(TAG, "Auto selecting filter " + mFilterOptions.get(0)
+ mContext.getText(mFilterOptions.get(0).getTitle()));
}
mManageApplications.mFilterSpinner.setSelection(0);
mManageApplications.onItemSelected(null, null, 0, 0);
@@ -1035,6 +1041,12 @@ public class ManageApplications extends InstrumentedFragment
if (!mHasReceivedLoadEntries
|| (mExtraInfoBridge != null && !mHasReceivedBridgeCallback)) {
// Don't rebuild the list until all the app entries are loaded.
if (DEBUG) {
Log.d(TAG, "Not rebuilding until all the app entries loaded."
+ " !mHasReceivedLoadEntries=" + !mHasReceivedLoadEntries
+ " !mExtraInfoBridgeNull=" + (mExtraInfoBridge != null)
+ " !mHasReceivedBridgeCallback=" + !mHasReceivedBridgeCallback);
}
return;
}
ApplicationsState.AppFilter filterObj;
@@ -1140,6 +1152,9 @@ public class ManageApplications extends InstrumentedFragment
@Override
public void onRebuildComplete(ArrayList<AppEntry> entries) {
if (DEBUG) {
Log.d(TAG, "onRebuildComplete");
}
final int filterType = mAppFilter.getFilterType();
if (filterType == FILTER_APPS_POWER_WHITELIST ||
filterType == FILTER_APPS_POWER_WHITELIST_ALL) {

View File

@@ -60,7 +60,6 @@ import androidx.preference.Preference;
public class DashboardFeatureProviderImpl implements DashboardFeatureProvider {
private static final String TAG = "DashboardFeatureImpl";
private static final String DASHBOARD_TILE_PREF_KEY_PREFIX = "dashboard_tile_pref_";
private static final String META_DATA_KEY_INTENT_ACTION = "com.android.settings.intent.action";
@VisibleForTesting
@@ -277,7 +276,8 @@ public class DashboardFeatureProviderImpl implements DashboardFeatureProvider {
return;
}
ProfileSelectDialog.updateUserHandlesIfNeeded(mContext, tile);
if (tile.userHandle == null) {
if (tile.userHandle == null || tile.isPrimaryProfileOnly()) {
mMetricsFeatureProvider.logDashboardStartIntent(mContext, intent, sourceMetricCategory);
activity.startActivityForResult(intent, 0);
} else if (tile.userHandle.size() == 1) {

View File

@@ -16,12 +16,16 @@
package com.android.settings.dashboard;
import static com.android.settingslib.drawer.TileUtils.META_DATA_KEY_PROFILE;
import static com.android.settingslib.drawer.TileUtils.PROFILE_ALL;
import static com.android.settingslib.drawer.TileUtils.PROFILE_PRIMARY;
import static com.google.common.truth.Truth.assertThat;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyInt;
import static org.mockito.Matchers.eq;
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.spy;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verifyZeroInteractions;
@@ -39,7 +43,7 @@ import android.graphics.drawable.Icon;
import android.os.Bundle;
import android.os.UserHandle;
import android.os.UserManager;
import androidx.preference.Preference;
import com.android.internal.logging.nano.MetricsProto;
import com.android.settings.R;
import com.android.settings.SettingsActivity;
@@ -55,6 +59,7 @@ import com.android.settingslib.drawer.DashboardCategory;
import com.android.settingslib.drawer.Tile;
import com.android.settingslib.drawer.TileUtils;
import java.util.ArrayList;
import org.junit.Before;
import org.junit.Test;
import org.junit.runner.RunWith;
@@ -68,10 +73,6 @@ import org.robolectric.shadows.ShadowActivity;
import org.robolectric.shadows.ShadowApplication;
import org.robolectric.util.ReflectionHelpers;
import java.util.ArrayList;
import androidx.preference.Preference;
@RunWith(SettingsRobolectricTestRunner.class)
@Config(shadows = ShadowUserManager.class)
public class DashboardFeatureProviderImplTest {
@@ -455,4 +456,56 @@ public class DashboardFeatureProviderImplTest {
public void testShouldTintIcon_disabledInResources_shouldBeFalse() {
assertThat(mImpl.shouldTintIcon()).isFalse();
}
@Test
public void openTileIntent_profileSelectionDialog_shouldShow() {
final Tile tile = new Tile();
tile.metaData = new Bundle();
tile.intent = new Intent();
tile.intent.setComponent(new ComponentName("pkg", "class"));
final ArrayList<UserHandle> handles = new ArrayList<>();
handles.add(new UserHandle(0));
handles.add(new UserHandle(10));
tile.userHandle = handles;
mImpl.openTileIntent(mActivity, tile);
verify(mActivity, never())
.startActivityForResult(any(Intent.class), eq(0));
verify(mActivity).getFragmentManager();
}
@Test
public void openTileIntent_profileSelectionDialog_explicitMetadataShouldShow() {
final Tile tile = new Tile();
tile.metaData = new Bundle();
tile.metaData.putString(META_DATA_KEY_PROFILE, PROFILE_ALL);
tile.intent = new Intent();
tile.intent.setComponent(new ComponentName("pkg", "class"));
final ArrayList<UserHandle> handles = new ArrayList<>();
handles.add(new UserHandle(0));
handles.add(new UserHandle(10));
tile.userHandle = handles;
mImpl.openTileIntent(mActivity, tile);
verify(mActivity, never())
.startActivityForResult(any(Intent.class), eq(0));
verify(mActivity).getFragmentManager();
}
@Test
public void openTileIntent_profileSelectionDialog_shouldNotShow() {
final Tile tile = new Tile();
tile.metaData = new Bundle();
tile.metaData.putString(META_DATA_KEY_PROFILE, PROFILE_PRIMARY);
tile.intent = new Intent();
tile.intent.setComponent(new ComponentName("pkg", "class"));
final ArrayList<UserHandle> handles = new ArrayList<>();
handles.add(new UserHandle(0));
handles.add(new UserHandle(10));
tile.userHandle = handles;
mImpl.openTileIntent(mActivity, tile);
verify(mActivity)
.startActivityForResult(any(Intent.class), eq(0));
verify(mActivity, never()).getFragmentManager();
}
}