From c577ef0a7524eacefc09b7eafa0c58b4f7f4f6c2 Mon Sep 17 00:00:00 2001 From: jackqdyulei Date: Mon, 27 Mar 2017 16:38:47 -0700 Subject: [PATCH] Hide Wifi and Systemui in settings main page Also move the systemui to category system Fix: 36644740 Fix: 36645264 Test: RunSettingsRoboTests Change-Id: I6b64a7dca58091f3a1d8b7d99c8bae7ddf9169f9 (cherry picked from commit 1e95b74f774b2b8b97b8f512451313696ed97c50) --- .../PowerUsageFeatureProviderImpl.java | 3 ++- .../settings/fuelgauge/PowerUsageSummary.java | 7 ++++-- .../PowerUsageFeatureProviderImplTest.java | 25 +++++++++++++------ .../fuelgauge/PowerUsageSummaryTest.java | 6 +++++ 4 files changed, 31 insertions(+), 10 deletions(-) diff --git a/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java b/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java index b8c40fd7193..10ffc4977d3 100644 --- a/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java +++ b/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImpl.java @@ -27,8 +27,9 @@ public class PowerUsageFeatureProviderImpl implements PowerUsageFeatureProvider private static final String PACKAGE_CALENDAR_PROVIDER = "com.android.providers.calendar"; private static final String PACKAGE_MEDIA_PROVIDER = "com.android.providers.media"; + private static final String PACKAGE_SYSTEMUI = "com.android.systemui"; private static final String[] PACKAGES_SYSTEM = {PACKAGE_MEDIA_PROVIDER, - PACKAGE_CALENDAR_PROVIDER}; + PACKAGE_CALENDAR_PROVIDER, PACKAGE_SYSTEMUI}; protected PackageManager mPackageManager; diff --git a/src/com/android/settings/fuelgauge/PowerUsageSummary.java b/src/com/android/settings/fuelgauge/PowerUsageSummary.java index b0e8fb0aeaa..f31961e6200 100644 --- a/src/com/android/settings/fuelgauge/PowerUsageSummary.java +++ b/src/com/android/settings/fuelgauge/PowerUsageSummary.java @@ -594,8 +594,11 @@ public class PowerUsageSummary extends PowerUsageBase { boolean shouldHideSipper(BatterySipper sipper) { final DrainType drainType = sipper.drainType; - return drainType == DrainType.IDLE || drainType == DrainType.CELL - || drainType == DrainType.SCREEN || drainType == DrainType.BLUETOOTH + return drainType == DrainType.IDLE + || drainType == DrainType.CELL + || drainType == DrainType.WIFI + || drainType == DrainType.SCREEN + || drainType == DrainType.BLUETOOTH || (sipper.totalPowerMah * SECONDS_IN_HOUR) < MIN_POWER_THRESHOLD_MILLI_AMP || mPowerFeatureProvider.isTypeService(sipper) || mPowerFeatureProvider.isTypeSystem(sipper); diff --git a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImplTest.java b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImplTest.java index d4672218229..f32ea7a5340 100644 --- a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImplTest.java +++ b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageFeatureProviderImplTest.java @@ -38,8 +38,10 @@ public class PowerUsageFeatureProviderImplTest { private static final int UID_OTHER = Process.FIRST_APPLICATION_UID + 2; private static final int UID_CALENDAR = Process.FIRST_APPLICATION_UID + 3; private static final int UID_MEDIA = Process.FIRST_APPLICATION_UID + 4; + private static final int UID_SYSTEMUI = Process.FIRST_APPLICATION_UID + 5; private static final String[] PACKAGES_CALENDAR = {"com.android.providers.calendar"}; private static final String[] PACKAGES_MEDIA = {"com.android.providers.media"}; + private static final String[] PACKAGES_SYSTEMUI = {"com.android.systemui"}; @Mock private Context mContext; @Mock @@ -55,12 +57,13 @@ public class PowerUsageFeatureProviderImplTest { mPowerFeatureProvider = new PowerUsageFeatureProviderImpl(mContext); when(mPackageManager.getPackagesForUid(UID_CALENDAR)).thenReturn(PACKAGES_CALENDAR); when(mPackageManager.getPackagesForUid(UID_MEDIA)).thenReturn(PACKAGES_MEDIA); + when(mPackageManager.getPackagesForUid(UID_SYSTEMUI)).thenReturn(PACKAGES_SYSTEMUI); mPowerFeatureProvider.mPackageManager = mPackageManager; mBatterySipper.uidObj = new FakeUid(UID_OTHER); } @Test - public void testIsTypeSystem_UidRoot_ReturnTrue() { + public void testIsTypeSystem_uidRoot_returnTrue() { mBatterySipper.drainType = BatterySipper.DrainType.APP; when(mBatterySipper.getUid()).thenReturn(Process.ROOT_UID); @@ -68,7 +71,7 @@ public class PowerUsageFeatureProviderImplTest { } @Test - public void testIsTypeSystem_UidSystem_ReturnTrue() { + public void testIsTypeSystem_uidSystem_returnTrue() { mBatterySipper.drainType = BatterySipper.DrainType.APP; when(mBatterySipper.getUid()).thenReturn(Process.SYSTEM_UID); @@ -76,7 +79,7 @@ public class PowerUsageFeatureProviderImplTest { } @Test - public void testIsTypeSystem_UidMedia_ReturnTrue() { + public void testIsTypeSystem_uidMedia_returnTrue() { mBatterySipper.drainType = BatterySipper.DrainType.APP; when(mBatterySipper.getUid()).thenReturn(Process.MEDIA_UID); @@ -84,7 +87,7 @@ public class PowerUsageFeatureProviderImplTest { } @Test - public void testIsTypeSystem_AppCalendar_ReturnTrue() { + public void testIsTypeSystem_appCalendar_returnTrue() { mBatterySipper.drainType = BatterySipper.DrainType.APP; when(mBatterySipper.getUid()).thenReturn(UID_CALENDAR); @@ -92,7 +95,7 @@ public class PowerUsageFeatureProviderImplTest { } @Test - public void testIsTypeSystem_AppMedia_ReturnTrue() { + public void testIsTypeSystem_appMedia_returnTrue() { mBatterySipper.drainType = BatterySipper.DrainType.APP; when(mBatterySipper.getUid()).thenReturn(UID_MEDIA); @@ -100,7 +103,15 @@ public class PowerUsageFeatureProviderImplTest { } @Test - public void testIsTypeSystem_UidOther_ReturnFalse() { + public void testIsTypeSystem_appSystemUi_returnTrue() { + mBatterySipper.drainType = BatterySipper.DrainType.APP; + when(mBatterySipper.getUid()).thenReturn(UID_SYSTEMUI); + + assertThat(mPowerFeatureProvider.isTypeSystem(mBatterySipper)).isTrue(); + } + + @Test + public void testIsTypeSystem_uidOther_returnFalse() { mBatterySipper.drainType = BatterySipper.DrainType.APP; when(mBatterySipper.getUid()).thenReturn(UID_OTHER); @@ -108,7 +119,7 @@ public class PowerUsageFeatureProviderImplTest { } @Test - public void testIsTypeSystem_UidObjNull_ReturnFalse() { + public void testIsTypeSystem_uidObjNull_returnFalse() { mBatterySipper.drainType = BatterySipper.DrainType.APP; mBatterySipper.uidObj = null; diff --git a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java index a7772bba571..a6e0943a2e5 100644 --- a/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java +++ b/tests/robotests/src/com/android/settings/fuelgauge/PowerUsageSummaryTest.java @@ -314,6 +314,12 @@ public class PowerUsageSummaryTest { assertThat(mFragment.shouldHideSipper(mNormalBatterySipper)).isTrue(); } + @Test + public void testShouldHideSipper_TypeWifi_ReturnTrue() { + mNormalBatterySipper.drainType = BatterySipper.DrainType.WIFI; + assertThat(mFragment.shouldHideSipper(mNormalBatterySipper)).isTrue(); + } + @Test public void testShouldHideSipper_TypeCell_ReturnTrue() { mNormalBatterySipper.drainType = BatterySipper.DrainType.CELL;