Update UI to use a smaller icon for ManageApplication page.
- Rewrite preference_app.xml to have a small icon
- Update ApplicationViewHolder to hide/show summary row dynamically
- but only do this for notification settings - this UI has empty
summary for most row. For other UI, just keep the empty summary row
until summary comes in. If we also hide/show summary row there will
be a height change animation which is janky.
Bug : 65182905
Fixes: 63582851
Test: robotests
Change-Id: Ice67324f08c67e014a018dfc51e00fe4449036dd
This commit is contained in:
@@ -22,7 +22,6 @@ import static org.mockito.Mockito.mock;
|
||||
import android.content.Context;
|
||||
import android.content.pm.ApplicationInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.widget.FrameLayout;
|
||||
|
||||
@@ -48,9 +47,8 @@ public class ApplicationViewHolderTest {
|
||||
@Before
|
||||
public void seUp() {
|
||||
mContext = RuntimeEnvironment.application;
|
||||
mView = ApplicationViewHolder.newView(LayoutInflater.from(mContext),
|
||||
new FrameLayout(mContext));
|
||||
mHolder = new ApplicationViewHolder(mView);
|
||||
mView = ApplicationViewHolder.newView(new FrameLayout(mContext));
|
||||
mHolder = new ApplicationViewHolder(mView, false /* useStableHeight */);
|
||||
}
|
||||
|
||||
@Test
|
||||
@@ -71,6 +69,10 @@ public class ApplicationViewHolderTest {
|
||||
|
||||
mHolder.setSummary(R.string.disabled);
|
||||
assertThat(mHolder.mSummary.getText()).isEqualTo(mContext.getText(R.string.disabled));
|
||||
assertThat(mHolder.mSummaryContainer.getVisibility()).isEqualTo(View.VISIBLE);
|
||||
|
||||
mHolder.setSummary(null);
|
||||
assertThat(mHolder.mSummaryContainer.getVisibility()).isEqualTo(View.GONE);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -18,6 +18,10 @@ package com.android.settings.applications.manageapplications;
|
||||
|
||||
import static com.android.settings.applications.manageapplications.AppFilterRegistry
|
||||
.FILTER_APPS_ALL;
|
||||
import static com.android.settings.applications.manageapplications.ManageApplications
|
||||
.LIST_TYPE_MAIN;
|
||||
import static com.android.settings.applications.manageapplications.ManageApplications
|
||||
.LIST_TYPE_NOTIFICATION;
|
||||
import static com.google.common.truth.Truth.assertThat;
|
||||
import static org.mockito.Matchers.any;
|
||||
import static org.mockito.Matchers.anyInt;
|
||||
@@ -102,7 +106,7 @@ public class ManageApplicationsTest {
|
||||
@Test
|
||||
public void updateMenu_mainListType_showAppReset() {
|
||||
setUpOptionMenus();
|
||||
ReflectionHelpers.setField(mFragment, "mListType", ManageApplications.LIST_TYPE_MAIN);
|
||||
ReflectionHelpers.setField(mFragment, "mListType", LIST_TYPE_MAIN);
|
||||
ReflectionHelpers.setField(mFragment, "mOptionsMenu", mMenu);
|
||||
|
||||
mFragment.updateOptionsMenu();
|
||||
@@ -182,6 +186,21 @@ public class ManageApplicationsTest {
|
||||
verify(loadingViewController).showLoadingViewDelayed();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void shouldUseStableItemHeight_mainType_yes() {
|
||||
assertThat(ManageApplications.ApplicationsAdapter.shouldUseStableItemHeight(
|
||||
LIST_TYPE_MAIN))
|
||||
.isTrue();
|
||||
assertThat(ManageApplications.ApplicationsAdapter.shouldUseStableItemHeight(
|
||||
LIST_TYPE_NOTIFICATION))
|
||||
.isFalse();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void shouldUseStableItemHeight_notificationType_no() {
|
||||
|
||||
}
|
||||
|
||||
@Test
|
||||
public void onRebuildComplete_shouldHideLoadingView() {
|
||||
final Context context = RuntimeEnvironment.application;
|
||||
|
||||
@@ -27,7 +27,6 @@ import android.content.Intent;
|
||||
import android.os.UserHandle;
|
||||
import android.os.storage.VolumeInfo;
|
||||
import android.provider.DocumentsContract;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.widget.FrameLayout;
|
||||
|
||||
@@ -68,9 +67,8 @@ public class MusicViewHolderControllerTest {
|
||||
mController = new MusicViewHolderController(mContext, mSource, mVolume.fsUuid,
|
||||
new UserHandle(0));
|
||||
|
||||
LayoutInflater inflater = LayoutInflater.from(mContext);
|
||||
mView = ApplicationViewHolder.newView(inflater, new FrameLayout(mContext));
|
||||
mHolder = new ApplicationViewHolder(mView);
|
||||
mView = ApplicationViewHolder.newView(new FrameLayout(mContext));
|
||||
mHolder = new ApplicationViewHolder(mView, false /* useStableHeight */);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -26,7 +26,6 @@ import android.content.Context;
|
||||
import android.content.Intent;
|
||||
import android.os.UserHandle;
|
||||
import android.os.storage.VolumeInfo;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.widget.FrameLayout;
|
||||
|
||||
@@ -67,9 +66,8 @@ public class PhotosViewHolderControllerTest {
|
||||
new PhotosViewHolderController(
|
||||
mContext, mSource, mVolume.fsUuid, new UserHandle(0));
|
||||
|
||||
final LayoutInflater inflater = LayoutInflater.from(mContext);
|
||||
mView = ApplicationViewHolder.newView(inflater, new FrameLayout(mContext));
|
||||
mHolder = new ApplicationViewHolder(mView);
|
||||
mView = ApplicationViewHolder.newView(new FrameLayout(mContext));
|
||||
mHolder = new ApplicationViewHolder(mView, false /* useStableHeight */);
|
||||
}
|
||||
|
||||
@Test
|
||||
|
||||
@@ -32,6 +32,7 @@ import android.content.Context;
|
||||
import android.provider.Settings;
|
||||
import android.support.v7.preference.Preference;
|
||||
import android.support.v7.preference.PreferenceScreen;
|
||||
|
||||
import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
|
||||
import com.android.settings.TestConfig;
|
||||
import com.android.settings.core.instrumentation.MetricsFeatureProvider;
|
||||
@@ -41,6 +42,8 @@ import com.android.settings.testutils.FakeFeatureFactory;
|
||||
import com.android.settings.testutils.SettingsRobolectricTestRunner;
|
||||
import com.android.settings.testutils.shadow.SettingsShadowSystemProperties;
|
||||
import com.android.settings.widget.MasterSwitchPreference;
|
||||
|
||||
import org.junit.After;
|
||||
import org.junit.Before;
|
||||
import org.junit.Test;
|
||||
import org.junit.runner.RunWith;
|
||||
@@ -83,6 +86,10 @@ public class AutomaticStorageManagementSwitchPreferenceControllerTest {
|
||||
mContext, mMetricsFeature, mFragmentManager);
|
||||
when(mScreen.findPreference(mController.getPreferenceKey())).thenReturn(mPreference);
|
||||
}
|
||||
@After
|
||||
public void tearDown() {
|
||||
SettingsShadowSystemProperties.clear();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void isAvailable_shouldReturnTrue_forHighRamDevice() {
|
||||
@@ -146,6 +153,9 @@ public class AutomaticStorageManagementSwitchPreferenceControllerTest {
|
||||
public void togglingOnShouldTriggerWarningFragment() {
|
||||
FragmentTransaction transaction = mock(FragmentTransaction.class);
|
||||
when (mFragmentManager.beginTransaction()).thenReturn(transaction);
|
||||
SettingsShadowSystemProperties.set(
|
||||
AutomaticStorageManagementSwitchPreferenceController
|
||||
.STORAGE_MANAGER_ENABLED_BY_DEFAULT_PROPERTY, "false");
|
||||
|
||||
mController.onSwitchToggled(true);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user