Follow up to "A better brightness"
Original change I122e1218dd0072c979a59bdafd3e0b6f4eec99ab was missing search provider logic adjustments and length limits on the added strings. Bug: 15313133 Change-Id: I8910dd60111c87f5494db7bac76a351e89c1a99b
This commit is contained in:
@@ -1825,9 +1825,9 @@
|
|||||||
<string name="brightness">Brightness level</string>
|
<string name="brightness">Brightness level</string>
|
||||||
<!-- Sound & display settings screen, setting option summary to change brightness level -->
|
<!-- Sound & display settings screen, setting option summary to change brightness level -->
|
||||||
<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 enable adaptive brightness -->
|
<!-- Sound & display settings screen, setting option name to enable adaptive brightness [CHAR LIMIT=30] -->
|
||||||
<string name="auto_brightness_title">Adaptive brightness</string>
|
<string name="auto_brightness_title">Adaptive brightness</string>
|
||||||
<!-- Sound & display settings screen, setting option summary to enable adaptive brightness -->
|
<!-- Sound & display settings screen, setting option summary to enable adaptive brightness [CHAR LIMIT=100] -->
|
||||||
<string name="auto_brightness_summary">Optimize brightness level for available light</string>
|
<string name="auto_brightness_summary">Optimize brightness level for available light</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">Sleep</string>
|
<string name="screen_timeout">Sleep</string>
|
||||||
|
@@ -16,6 +16,9 @@
|
|||||||
|
|
||||||
package com.android.settings;
|
package com.android.settings;
|
||||||
|
|
||||||
|
import com.android.settings.search.BaseSearchIndexProvider;
|
||||||
|
import com.android.settings.search.Indexable;
|
||||||
|
|
||||||
import static android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE;
|
import static android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE;
|
||||||
import static android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC;
|
import static android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE_AUTOMATIC;
|
||||||
import static android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL;
|
import static android.provider.Settings.System.SCREEN_BRIGHTNESS_MODE_MANUAL;
|
||||||
@@ -36,13 +39,15 @@ import android.preference.ListPreference;
|
|||||||
import android.preference.Preference;
|
import android.preference.Preference;
|
||||||
import android.preference.Preference.OnPreferenceClickListener;
|
import android.preference.Preference.OnPreferenceClickListener;
|
||||||
import android.preference.PreferenceScreen;
|
import android.preference.PreferenceScreen;
|
||||||
|
import android.provider.SearchIndexableResource;
|
||||||
import android.provider.Settings;
|
import android.provider.Settings;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
public class DisplaySettings extends SettingsPreferenceFragment implements
|
public class DisplaySettings extends SettingsPreferenceFragment implements
|
||||||
Preference.OnPreferenceChangeListener, OnPreferenceClickListener {
|
Preference.OnPreferenceChangeListener, OnPreferenceClickListener, Indexable {
|
||||||
private static final String TAG = "DisplaySettings";
|
private static final String TAG = "DisplaySettings";
|
||||||
|
|
||||||
/** If there is no setting in the provider, use this. */
|
/** If there is no setting in the provider, use this. */
|
||||||
@@ -90,9 +95,7 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
|
|||||||
mFontSizePref.setOnPreferenceChangeListener(this);
|
mFontSizePref.setOnPreferenceChangeListener(this);
|
||||||
mFontSizePref.setOnPreferenceClickListener(this);
|
mFontSizePref.setOnPreferenceClickListener(this);
|
||||||
|
|
||||||
boolean automaticBrightnessAvailable = getResources().getBoolean(
|
if (isAutomaticBrightnessAvailable(getResources())) {
|
||||||
com.android.internal.R.bool.config_automatic_brightness_available);
|
|
||||||
if (automaticBrightnessAvailable) {
|
|
||||||
mAutoBrightnessPreference = (CheckBoxPreference) findPreference(KEY_AUTO_BRIGHTNESS);
|
mAutoBrightnessPreference = (CheckBoxPreference) findPreference(KEY_AUTO_BRIGHTNESS);
|
||||||
mAutoBrightnessPreference.setOnPreferenceChangeListener(this);
|
mAutoBrightnessPreference.setOnPreferenceChangeListener(this);
|
||||||
} else {
|
} else {
|
||||||
@@ -100,6 +103,10 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private static boolean isAutomaticBrightnessAvailable(Resources res) {
|
||||||
|
return res.getBoolean(com.android.internal.R.bool.config_automatic_brightness_available);
|
||||||
|
}
|
||||||
|
|
||||||
private void updateTimeoutPreferenceDescription(long currentTimeout) {
|
private void updateTimeoutPreferenceDescription(long currentTimeout) {
|
||||||
ListPreference preference = mScreenTimeoutPreference;
|
ListPreference preference = mScreenTimeoutPreference;
|
||||||
String summary;
|
String summary;
|
||||||
@@ -286,4 +293,28 @@ public class DisplaySettings extends SettingsPreferenceFragment implements
|
|||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static final Indexable.SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER =
|
||||||
|
new BaseSearchIndexProvider() {
|
||||||
|
@Override
|
||||||
|
public List<SearchIndexableResource> getXmlResourcesToIndex(Context context,
|
||||||
|
boolean enabled) {
|
||||||
|
ArrayList<SearchIndexableResource> result = new ArrayList<>(1);
|
||||||
|
|
||||||
|
SearchIndexableResource sir = new SearchIndexableResource(context);
|
||||||
|
sir.xmlResId = R.xml.display_settings;
|
||||||
|
result.add(sir);
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<String> getNonIndexableKeys(Context context) {
|
||||||
|
ArrayList<String> nonIndexableKeys = new ArrayList<>(1);
|
||||||
|
if (!isAutomaticBrightnessAvailable(context.getResources())) {
|
||||||
|
nonIndexableKeys.add(KEY_AUTO_BRIGHTNESS);
|
||||||
|
}
|
||||||
|
return nonIndexableKeys;
|
||||||
|
}
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
@@ -101,7 +101,7 @@ public final class SearchIndexableResources {
|
|||||||
sResMap.put(DisplaySettings.class.getName(),
|
sResMap.put(DisplaySettings.class.getName(),
|
||||||
new SearchIndexableResource(
|
new SearchIndexableResource(
|
||||||
Ranking.getRankForClassName(DisplaySettings.class.getName()),
|
Ranking.getRankForClassName(DisplaySettings.class.getName()),
|
||||||
R.xml.display_settings,
|
NO_DATA_RES_ID,
|
||||||
DisplaySettings.class.getName(),
|
DisplaySettings.class.getName(),
|
||||||
R.drawable.ic_settings_display));
|
R.drawable.ic_settings_display));
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user