diff --git a/res/values/strings.xml b/res/values/strings.xml
index b88c6118a8e..a17a0654299 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -2568,9 +2568,9 @@
Adjust the brightness of the screen
Adaptive brightness
-
- Optimize brightness level for available light
-
+
+ On
+
Off
Preferred brightness is very low
diff --git a/res/xml/display_settings.xml b/res/xml/display_settings.xml
index bbf2883c4fb..0686bdb1bf8 100644
--- a/res/xml/display_settings.xml
+++ b/res/xml/display_settings.xml
@@ -42,7 +42,7 @@
diff --git a/src/com/android/settings/display/AutoBrightnessPreferenceController.java b/src/com/android/settings/display/AutoBrightnessPreferenceController.java
index 3661056667b..3b7a076f0f3 100644
--- a/src/com/android/settings/display/AutoBrightnessPreferenceController.java
+++ b/src/com/android/settings/display/AutoBrightnessPreferenceController.java
@@ -21,6 +21,7 @@ import android.content.Context;
import android.provider.Settings;
import android.text.TextUtils;
+import com.android.settings.R;
import com.android.settings.core.TogglePreferenceController;
@@ -59,4 +60,11 @@ public class AutoBrightnessPreferenceController extends TogglePreferenceControll
public boolean isSliceable() {
return TextUtils.equals(getPreferenceKey(), "auto_brightness");
}
+
+ @Override
+ public CharSequence getSummary() {
+ return mContext.getText(isChecked()
+ ? R.string.auto_brightness_summary_on
+ : R.string.auto_brightness_summary_off);
+ }
}
\ No newline at end of file
diff --git a/tests/robotests/src/com/android/settings/display/AutoBrightnessPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/display/AutoBrightnessPreferenceControllerTest.java
index 188cb92a646..5ceb70f2f86 100644
--- a/tests/robotests/src/com/android/settings/display/AutoBrightnessPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/display/AutoBrightnessPreferenceControllerTest.java
@@ -25,6 +25,7 @@ import android.content.ContentResolver;
import android.content.Context;
import android.provider.Settings;
+import com.android.settings.R;
import com.android.settings.testutils.SettingsRobolectricTestRunner;
import org.junit.Before;
@@ -52,50 +53,68 @@ public class AutoBrightnessPreferenceControllerTest {
}
@Test
- public void testOnPreferenceChange_TurnOnAuto_ReturnAuto() {
+ public void onPreferenceChange_TurnOnAuto_ReturnAuto() {
mController.onPreferenceChange(null, true);
final int mode = Settings.System.getInt(mContentResolver, SCREEN_BRIGHTNESS_MODE,
- SCREEN_BRIGHTNESS_MODE_MANUAL);
+ SCREEN_BRIGHTNESS_MODE_MANUAL);
assertThat(mode).isEqualTo(SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
}
@Test
- public void testOnPreferenceChange_TurnOffAuto_ReturnManual() {
+ public void onPreferenceChange_TurnOffAuto_ReturnManual() {
mController.onPreferenceChange(null, false);
final int mode = Settings.System.getInt(mContentResolver, SCREEN_BRIGHTNESS_MODE,
- SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
+ SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
assertThat(mode).isEqualTo(SCREEN_BRIGHTNESS_MODE_MANUAL);
}
@Test
- public void testSetValue_updatesCorrectly() {
- boolean newValue = true;
- Settings.System.putInt(mContentResolver, SCREEN_BRIGHTNESS_MODE,
- SCREEN_BRIGHTNESS_MODE_MANUAL);
+ public void setChecked_updatesCorrectly() {
+ mController.setChecked(true);
- mController.setChecked(newValue);
- boolean updatedValue = Settings.System.getInt(mContentResolver, SCREEN_BRIGHTNESS_MODE, -1)
- != SCREEN_BRIGHTNESS_MODE_MANUAL;
+ assertThat(mController.isChecked()).isTrue();
- assertThat(updatedValue).isEqualTo(newValue);
+ mController.setChecked(false);
+
+ assertThat(mController.isChecked()).isFalse();
}
@Test
- public void testGetValue_correctValueReturned() {
+ public void isChecked_no() {
Settings.System.putInt(mContentResolver, SCREEN_BRIGHTNESS_MODE,
- SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
+ SCREEN_BRIGHTNESS_MODE_MANUAL);
- int newValue = mController.isChecked() ?
- SCREEN_BRIGHTNESS_MODE_AUTOMATIC
- : SCREEN_BRIGHTNESS_MODE_MANUAL;
-
- assertThat(newValue).isEqualTo(SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
+ assertThat(mController.isChecked()).isFalse();
}
@Test
- public void isSliceableCorrectKey_returnsTrue() {
+ public void isChecked_yes() {
+ Settings.System.putInt(mContentResolver, SCREEN_BRIGHTNESS_MODE,
+ SCREEN_BRIGHTNESS_MODE_AUTOMATIC);
+
+ assertThat(mController.isChecked()).isTrue();
+ }
+
+ @Test
+ public void getSummary_settingOn_shouldReturnOnSummary() {
+ mController.setChecked(true);
+
+ assertThat(mController.getSummary())
+ .isEqualTo(mContext.getText(R.string.auto_brightness_summary_on));
+ }
+
+ @Test
+ public void getSummary_settingOff_shouldReturnOffSummary() {
+ mController.setChecked(false);
+
+ assertThat(mController.getSummary())
+ .isEqualTo(mContext.getText(R.string.auto_brightness_summary_off));
+ }
+
+ @Test
+ public void isSliceable_correctKey_returnsTrue() {
final AutoBrightnessPreferenceController controller =
new AutoBrightnessPreferenceController(mContext,
"auto_brightness");
@@ -103,7 +122,7 @@ public class AutoBrightnessPreferenceControllerTest {
}
@Test
- public void isSliceableIncorrectKey_returnsFalse() {
+ public void isSliceable_incorrectKey_returnsFalse() {
final AutoBrightnessPreferenceController controller =
new AutoBrightnessPreferenceController(mContext, "bad_key");
assertThat(controller.isSliceable()).isFalse();