OSDN Git Service

Move listening to brightness changes to onStart/onStop.
authorDoris Ling <dling@google.com>
Wed, 20 Sep 2017 22:36:14 +0000 (15:36 -0700)
committerDoris Ling <dling@google.com>
Wed, 20 Sep 2017 22:36:14 +0000 (15:36 -0700)
Currently, we register the brightness listener in onResume() and stop
listening in onPause(). When we launch the brightness selection bar, the
display settings is paused, and hence we don't get the brightness
update, and only refresh the percentage when the brightness bar is
dismissed.

Moving the listening logic to onStart()/onStop() instead, so that we
will get the updates all the time when the display settings is launched.

Change-Id: I6ed9c8485fdf7721374baff5cea5f7011b63d7ea
Fixes: 65981061
Test: make RunSettingsRoboTests

src/com/android/settings/display/BrightnessLevelPreferenceController.java
tests/robotests/src/com/android/settings/display/BrightnessLevelPreferenceControllerTest.java

index e1461dc..78fec32 100644 (file)
@@ -34,13 +34,13 @@ import com.android.settings.core.PreferenceControllerMixin;
 import com.android.settingslib.core.AbstractPreferenceController;
 import com.android.settingslib.core.lifecycle.Lifecycle;
 import com.android.settingslib.core.lifecycle.LifecycleObserver;
-import com.android.settingslib.core.lifecycle.events.OnPause;
-import com.android.settingslib.core.lifecycle.events.OnResume;
+import com.android.settingslib.core.lifecycle.events.OnStart;
+import com.android.settingslib.core.lifecycle.events.OnStop;
 
 import java.text.NumberFormat;
 
 public class BrightnessLevelPreferenceController extends AbstractPreferenceController implements
-        PreferenceControllerMixin, LifecycleObserver, OnResume, OnPause {
+        PreferenceControllerMixin, LifecycleObserver, OnStart, OnStop {
 
     private static final String TAG = "BrightnessPrefCtrl";
     private static final String KEY_BRIGHTNESS = "brightness";
@@ -113,7 +113,7 @@ public class BrightnessLevelPreferenceController extends AbstractPreferenceContr
     }
 
     @Override
-    public void onResume() {
+    public void onStart() {
         mContentResolver.registerContentObserver(BRIGHTNESS_MODE_URI, false, mBrightnessObserver);
         mContentResolver.registerContentObserver(BRIGHTNESS_URI, false, mBrightnessObserver);
         mContentResolver.registerContentObserver(BRIGHTNESS_FOR_VR_URI, false, mBrightnessObserver);
@@ -121,7 +121,7 @@ public class BrightnessLevelPreferenceController extends AbstractPreferenceContr
     }
 
     @Override
-    public void onPause() {
+    public void onStop() {
         mContentResolver.unregisterContentObserver(mBrightnessObserver);
     }
 
index d35adef..56b940b 100644 (file)
@@ -79,14 +79,14 @@ public class BrightnessLevelPreferenceControllerTest {
     }
 
     @Test
-    public void onResume_shouldRegisterObserver() {
+    public void onStart_shouldRegisterObserver() {
         Context context = RuntimeEnvironment.application;
         BrightnessLevelPreferenceController controller =
             new BrightnessLevelPreferenceController(context, null, mPowerManager);
         ShadowContentResolver shadowContentResolver =
             (ShadowContentResolver) ShadowExtractor.extract(context.getContentResolver());
 
-        controller.onResume();
+        controller.onStart();
 
         assertThat(shadowContentResolver.getContentObservers(
             System.getUriFor(System.SCREEN_BRIGHTNESS_MODE))).isNotEmpty();
@@ -99,7 +99,7 @@ public class BrightnessLevelPreferenceControllerTest {
     }
 
     @Test
-    public void onPause_shouldUnregisterObserver() {
+    public void onStop_shouldUnregisterObserver() {
         Context context = RuntimeEnvironment.application;
         BrightnessLevelPreferenceController controller =
             new BrightnessLevelPreferenceController(context, null, mPowerManager);
@@ -107,8 +107,8 @@ public class BrightnessLevelPreferenceControllerTest {
             (ShadowContentResolver) ShadowExtractor.extract(context.getContentResolver());
 
         controller.displayPreference(mScreen);
-        controller.onResume();
-        controller.onPause();
+        controller.onStart();
+        controller.onStop();
 
         assertThat(shadowContentResolver.getContentObservers(
             System.getUriFor(System.SCREEN_BRIGHTNESS_MODE))).isEmpty();