Fix 3333434: Rename "Display" to "Screen" and make dynamic
This changes the setting "Display" to "Screen" and updates the timeout summary to reflect the current setting. Change-Id: Id8209d445f65a0908ae8093a8f5f7f951f333053
This commit is contained in:
@@ -1150,7 +1150,7 @@
|
|||||||
<!-- Main Settings screen setting option name to go into the sound settings screen -->
|
<!-- Main Settings screen setting option name to go into the sound settings screen -->
|
||||||
<string name="sound_settings_title">Sound</string>
|
<string name="sound_settings_title">Sound</string>
|
||||||
<!-- Main Settings screen setting option name to go into the display settings screen -->
|
<!-- Main Settings screen setting option name to go into the display settings screen -->
|
||||||
<string name="display_settings_title">Display</string>
|
<string name="display_settings_title">Screen</string>
|
||||||
<!-- Sound settings screen heading -->
|
<!-- Sound settings screen heading -->
|
||||||
<string name="sound_settings">Sound settings</string>
|
<string name="sound_settings">Sound settings</string>
|
||||||
<!-- Sound settings screen, setting option name checkbox -->
|
<!-- Sound settings screen, setting option name checkbox -->
|
||||||
@@ -1298,9 +1298,9 @@
|
|||||||
<!-- Sound & display settings screen, setting option summary to change brightness -->
|
<!-- Sound & display settings screen, setting option summary to change brightness -->
|
||||||
<string name="brightness_summary">Adjust the brightness of the screen</string>
|
<string name="brightness_summary">Adjust the brightness of the screen</string>
|
||||||
<!-- Sound & display settings screen, setting option name to change screen timeout -->
|
<!-- Sound & display settings screen, setting option name to change screen timeout -->
|
||||||
<string name="screen_timeout">Screen timeout</string>
|
<string name="screen_timeout">Timeout</string>
|
||||||
<!-- Sound & display settings screen, setting option summary to change screen timeout -->
|
<!-- Sound & display settings screen, setting option summary to change screen timeout -->
|
||||||
<string name="screen_timeout_summary">Adjust the delay before the screen automatically turns off</string>
|
<string name="screen_timeout_summary">Screen turns off automatically after <xliff:g id="timeout_description">%1$s</xliff:g></string>
|
||||||
<!-- Sound & display settings screen, setting option name to change whether the screen adjusts automatically based on lighting conditions -->
|
<!-- Sound & display settings screen, setting option name to change whether the screen adjusts automatically based on lighting conditions -->
|
||||||
<string name="automatic_brightness">Automatic brightness</string>
|
<string name="automatic_brightness">Automatic brightness</string>
|
||||||
|
|
||||||
|
@@ -51,6 +51,8 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
|
|||||||
|
|
||||||
private IWindowManager mWindowManager;
|
private IWindowManager mWindowManager;
|
||||||
|
|
||||||
|
private ListPreference mScreenTimeoutPreference;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCreate(Bundle savedInstanceState) {
|
public void onCreate(Bundle savedInstanceState) {
|
||||||
super.onCreate(savedInstanceState);
|
super.onCreate(savedInstanceState);
|
||||||
@@ -64,12 +66,28 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
|
|||||||
mAccelerometer = (CheckBoxPreference) findPreference(KEY_ACCELEROMETER);
|
mAccelerometer = (CheckBoxPreference) findPreference(KEY_ACCELEROMETER);
|
||||||
mAccelerometer.setPersistent(false);
|
mAccelerometer.setPersistent(false);
|
||||||
|
|
||||||
ListPreference screenTimeoutPreference =
|
mScreenTimeoutPreference = (ListPreference) findPreference(KEY_SCREEN_TIMEOUT);
|
||||||
(ListPreference) findPreference(KEY_SCREEN_TIMEOUT);
|
final long currentTimeout = Settings.System.getLong(resolver, SCREEN_OFF_TIMEOUT,
|
||||||
screenTimeoutPreference.setValue(String.valueOf(Settings.System.getInt(
|
FALLBACK_SCREEN_TIMEOUT_VALUE);
|
||||||
resolver, SCREEN_OFF_TIMEOUT, FALLBACK_SCREEN_TIMEOUT_VALUE)));
|
mScreenTimeoutPreference.setValue(String.valueOf(currentTimeout));
|
||||||
screenTimeoutPreference.setOnPreferenceChangeListener(this);
|
mScreenTimeoutPreference.setOnPreferenceChangeListener(this);
|
||||||
disableUnusableTimeouts(screenTimeoutPreference);
|
disableUnusableTimeouts(mScreenTimeoutPreference);
|
||||||
|
updateTimeoutPreferenceDescription(resolver, currentTimeout);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void updateTimeoutPreferenceDescription(ContentResolver resolver, long currentTimeout) {
|
||||||
|
final CharSequence[] entries = mScreenTimeoutPreference.getEntries();
|
||||||
|
final CharSequence[] values = mScreenTimeoutPreference.getEntryValues();
|
||||||
|
int best = 0;
|
||||||
|
for (int i = 0; i < values.length; i++) {
|
||||||
|
long timeout = Long.valueOf(values[i].toString());
|
||||||
|
if (currentTimeout >= timeout) {
|
||||||
|
best = i;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
String summary = mScreenTimeoutPreference.getContext()
|
||||||
|
.getString(R.string.screen_timeout_summary, entries[best]);
|
||||||
|
mScreenTimeoutPreference.setSummary(summary);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void disableUnusableTimeouts(ListPreference screenTimeoutPreference) {
|
private void disableUnusableTimeouts(ListPreference screenTimeoutPreference) {
|
||||||
@@ -195,6 +213,7 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
|
|||||||
try {
|
try {
|
||||||
Settings.System.putInt(getContentResolver(),
|
Settings.System.putInt(getContentResolver(),
|
||||||
SCREEN_OFF_TIMEOUT, value);
|
SCREEN_OFF_TIMEOUT, value);
|
||||||
|
updateTimeoutPreferenceDescription(getContentResolver(), value);
|
||||||
} catch (NumberFormatException e) {
|
} catch (NumberFormatException e) {
|
||||||
Log.e(TAG, "could not persist screen timeout setting", e);
|
Log.e(TAG, "could not persist screen timeout setting", e);
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user