Merge "Settings for the screen magnification feature." into jb-mr1-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
d4b711e603
@@ -2976,30 +2976,52 @@
|
|||||||
<string name="accessibility_settings">Accessibility</string>
|
<string name="accessibility_settings">Accessibility</string>
|
||||||
<!-- Settings title for accessibility settings screen -->
|
<!-- Settings title for accessibility settings screen -->
|
||||||
<string name="accessibility_settings_title">Accessibility settings</string>
|
<string name="accessibility_settings_title">Accessibility settings</string>
|
||||||
|
|
||||||
<!-- Title for the accessibility preference category of accessibility services. [CHAR LIMIT=25] -->
|
<!-- Title for the accessibility preference category of accessibility services. [CHAR LIMIT=25] -->
|
||||||
<string name="accessibility_services_title">Services</string>
|
<string name="accessibility_services_title">Services</string>
|
||||||
|
|
||||||
<!-- Title for the accessibility preference category of system related preferences. [CHAR LIMIT=25] -->
|
<!-- Title for the accessibility preference category of system related preferences. [CHAR LIMIT=25] -->
|
||||||
<string name="accessibility_system_title">System</string>
|
<string name="accessibility_system_title">System</string>
|
||||||
|
<!-- Title for the accessibility preference screen to enable screen magnification. [CHAR LIMIT=35] -->
|
||||||
|
<string name="accessibility_screen_magnification_title">Screen magnification</string>
|
||||||
|
<!-- Summary for the accessibility preference screen to enable screen magnification. [CHAR LIMIT=35] -->
|
||||||
|
<string name="accessibility_screen_magnification_summary">
|
||||||
|
When screen magnification is on, you can:\n
|
||||||
|
\n
|
||||||
|
Temporary zoom-in: Triple-tap & hold.\n
|
||||||
|
Toggle permanent zoom state: Triple-tap & release.\n
|
||||||
|
\n
|
||||||
|
Adjust zoomed area: Triple-tap & hold to zoom, then drag your finger across the screen.\n
|
||||||
|
Pan when zoomed-in: Drag two or more fingers across the screen.\n
|
||||||
|
\n
|
||||||
|
Adjust zoom level when zoomed-out: Triple-tap & hold to zoom, then drag one or more fingers.\n
|
||||||
|
Adjust zoom level when zoomed-in: Pinch with two or more fingers.\n
|
||||||
|
</string>
|
||||||
|
|
||||||
<!-- Title for the accessibility preference to enable large text. [CHAR LIMIT=35] -->
|
<!-- Title for the accessibility preference to enable large text. [CHAR LIMIT=35] -->
|
||||||
<string name="accessibility_toggle_large_text_title">Large text</string>
|
<string name="accessibility_toggle_large_text_preference_title">Large text</string>
|
||||||
|
<!-- Title for the accessibility preference to enable screen magnification. [CHAR LIMIT=35] -->
|
||||||
|
<string name="accessibility_toggle_screen_magnification_preference_title">Screen magnification</string>
|
||||||
|
<!-- Title for the accessibility preference to auto update screen magnification. [CHAR LIMIT=35] -->
|
||||||
|
<string name="accessibility_toggle_screen_magnification_auto_update_preference_title">Auto
|
||||||
|
update screen magnification</string>
|
||||||
|
<!-- Summary for the accessibility preference to auto update screen magnification. [CHAR LIMIT=50] -->
|
||||||
|
<string name="accessibility_toggle_screen_magnification_auto_update_preference_summary">Update
|
||||||
|
screen magnification on app transitions</string>
|
||||||
<!-- Title for the accessibility preference to power button to end a call. [CHAR LIMIT=35] -->
|
<!-- Title for the accessibility preference to power button to end a call. [CHAR LIMIT=35] -->
|
||||||
<string name="accessibility_power_button_ends_call_title">Power button ends call</string>
|
<string name="accessibility_power_button_ends_call_prerefence_title">Power button ends call</string>
|
||||||
<!-- Title for the accessibility preference to speak passwords. [CHAR LIMIT=35] -->
|
<!-- Title for the accessibility preference to speak passwords. [CHAR LIMIT=35] -->
|
||||||
<string name="accessibility_speak_password_title">Speak passwords</string>
|
<string name="accessibility_toggle_speak_password_preference_title">Speak passwords</string>
|
||||||
<!-- Title for accessibility preference to choose long-press delay i.e. timeout before it is detected. [CHAR LIMIT=35] -->
|
<!-- Title for accessibility preference to choose long-press delay i.e. timeout before it is detected. [CHAR LIMIT=35] -->
|
||||||
<string name="accessibility_long_press_timeout_title">Touch & hold delay</string>
|
<string name="accessibility_long_press_timeout_preference_title">Touch & hold delay</string>
|
||||||
<!-- Title for accessibility preference to install accessibility scripts from Google. [CHAR LIMIT=35] -->
|
<!-- Title for accessibility preference to install accessibility scripts from Google. [CHAR LIMIT=35] -->
|
||||||
<string name="accessibility_script_injection_title">Enhance web accessibility</string>
|
<string name="accessibility_toggle_script_injection_preference_title">Enhance web accessibility</string>
|
||||||
|
|
||||||
<!-- Title for accessibility menu item to lauch a settings activity. [CHAR LIMIT=15] -->
|
<!-- Title for accessibility menu item to lauch a settings activity. [CHAR LIMIT=15] -->
|
||||||
<string name="accessibility_menu_item_settings">Settings</string>
|
<string name="accessibility_menu_item_settings">Settings</string>
|
||||||
|
|
||||||
<!-- Summary for the enabled state of an accessiblity serivce. [CHAR LIMIT=10] -->
|
<!-- Summary for the enabled state of an accessiblity feature. [CHAR LIMIT=10] -->
|
||||||
<string name="accessibility_service_state_on">On</string>
|
<string name="accessibility_feature_state_on">On</string>
|
||||||
<!-- Summary for the disabled state of an accessiblity serivce. [CHAR LIMIT=10] -->
|
<!-- Summary for the disabled state of an accessiblity feature. [CHAR LIMIT=10] -->
|
||||||
<string name="accessibility_service_state_off">Off</string>
|
<string name="accessibility_feature_state_off">Off</string>
|
||||||
|
|
||||||
<!-- Summary for the allowed state of script injection. [CHAR LIMIT=15] -->
|
<!-- Summary for the allowed state of script injection. [CHAR LIMIT=15] -->
|
||||||
<string name="accessibility_script_injection_allowed">Allowed</string>
|
<string name="accessibility_script_injection_allowed">Allowed</string>
|
||||||
@@ -3855,6 +3877,15 @@
|
|||||||
<string name="show_all_anrs_summary">Show App Not Responding dialog
|
<string name="show_all_anrs_summary">Show App Not Responding dialog
|
||||||
for background apps</string>
|
for background apps</string>
|
||||||
|
|
||||||
|
<!-- Preference category for accessibility debugging development settings. [CHAR LIMIT=25] -->
|
||||||
|
<string name="debug_accessibility_category">Accessibility</string>
|
||||||
|
|
||||||
|
<!-- Accessibility debug setting: automatically update magnification state [CHAR LIMIT=50] -->
|
||||||
|
<string name="display_magnification_auto_update">Auto update magnification</string>
|
||||||
|
<!-- Accessibility debug setting: automatically update magnification state summary [CHAR LIMIT=100] -->
|
||||||
|
<string name="display_magnification_auto_update_summary">Zoom out on rotation or activity
|
||||||
|
start and pan to popped up windows.</string>
|
||||||
|
|
||||||
<!-- Activity title for network data usage summary. [CHAR LIMIT=25] -->
|
<!-- Activity title for network data usage summary. [CHAR LIMIT=25] -->
|
||||||
<string name="data_usage_summary_title">Data usage</string>
|
<string name="data_usage_summary_title">Data usage</string>
|
||||||
<!-- Title for option to pick visible time range from a list available usage periods. [CHAR LIMIT=25] -->
|
<!-- Title for option to pick visible time range from a list available usage periods. [CHAR LIMIT=25] -->
|
||||||
|
@@ -27,14 +27,19 @@
|
|||||||
android:key="system_category"
|
android:key="system_category"
|
||||||
android:title="@string/accessibility_system_title">
|
android:title="@string/accessibility_system_title">
|
||||||
|
|
||||||
|
<PreferenceScreen
|
||||||
|
android:fragment="com.android.settings.AccessibilitySettings$ToggleScreenMagnificationPreferenceFragment"
|
||||||
|
android:key="screen_magnification_preference_screen"
|
||||||
|
android:title="@string/accessibility_screen_magnification_title"/>
|
||||||
|
|
||||||
<CheckBoxPreference
|
<CheckBoxPreference
|
||||||
android:key="toggle_large_text_preference"
|
android:key="toggle_large_text_preference"
|
||||||
android:title="@string/accessibility_toggle_large_text_title"
|
android:title="@string/accessibility_toggle_large_text_preference_title"
|
||||||
android:persistent="false"/>
|
android:persistent="false"/>
|
||||||
|
|
||||||
<CheckBoxPreference
|
<CheckBoxPreference
|
||||||
android:key="toggle_power_button_ends_call_preference"
|
android:key="toggle_power_button_ends_call_preference"
|
||||||
android:title="@string/accessibility_power_button_ends_call_title"
|
android:title="@string/accessibility_power_button_ends_call_prerefence_title"
|
||||||
android:persistent="false"/>
|
android:persistent="false"/>
|
||||||
|
|
||||||
<CheckBoxPreference
|
<CheckBoxPreference
|
||||||
@@ -44,15 +49,15 @@
|
|||||||
|
|
||||||
<CheckBoxPreference
|
<CheckBoxPreference
|
||||||
android:key="toggle_speak_password_preference"
|
android:key="toggle_speak_password_preference"
|
||||||
android:title="@string/accessibility_speak_password_title"
|
android:title="@string/accessibility_toggle_speak_password_preference_title"
|
||||||
android:persistent="false"/>
|
android:persistent="false"/>
|
||||||
|
|
||||||
<PreferenceScreen android:key="tts_settings"
|
<PreferenceScreen android:key="tts_settings_preference"
|
||||||
android:fragment="com.android.settings.tts.TextToSpeechSettings"
|
android:fragment="com.android.settings.tts.TextToSpeechSettings"
|
||||||
android:title="@string/tts_settings_title" />
|
android:title="@string/tts_settings_title"/>
|
||||||
|
|
||||||
<ListPreference android:key="select_long_press_timeout_preference"
|
<ListPreference android:key="select_long_press_timeout_preference"
|
||||||
android:title="@string/accessibility_long_press_timeout_title"
|
android:title="@string/accessibility_long_press_timeout_preference_title"
|
||||||
android:entries="@array/long_press_timeout_selector_titles"
|
android:entries="@array/long_press_timeout_selector_titles"
|
||||||
android:entryValues="@array/long_press_timeout_selector_values"
|
android:entryValues="@array/long_press_timeout_selector_values"
|
||||||
android:persistent="false"/>
|
android:persistent="false"/>
|
||||||
@@ -60,7 +65,7 @@
|
|||||||
<!-- We want a dialog with no title, so use an empty string to avoid a fall back to the preference title. -->
|
<!-- We want a dialog with no title, so use an empty string to avoid a fall back to the preference title. -->
|
||||||
<com.android.settings.AccessibilityEnableScriptInjectionPreference
|
<com.android.settings.AccessibilityEnableScriptInjectionPreference
|
||||||
android:key="toggle_script_injection_preference"
|
android:key="toggle_script_injection_preference"
|
||||||
android:title="@string/accessibility_script_injection_title"
|
android:title="@string/accessibility_toggle_script_injection_preference_title"
|
||||||
android:dialogTitle=""
|
android:dialogTitle=""
|
||||||
android:dialogIcon="@android:drawable/ic_dialog_alert"
|
android:dialogIcon="@android:drawable/ic_dialog_alert"
|
||||||
android:dialogMessage="@string/accessibility_script_injection_security_warning_summary"
|
android:dialogMessage="@string/accessibility_script_injection_security_warning_summary"
|
||||||
|
@@ -202,4 +202,14 @@
|
|||||||
|
|
||||||
</PreferenceCategory>
|
</PreferenceCategory>
|
||||||
|
|
||||||
|
<PreferenceCategory android:key="debug_accessibility_category"
|
||||||
|
android:title="@string/debug_accessibility_category">
|
||||||
|
|
||||||
|
<CheckBoxPreference
|
||||||
|
android:key="accessibility_display_magnification_auto_update"
|
||||||
|
android:title="@string/display_magnification_auto_update"
|
||||||
|
android:summary="@string/display_magnification_auto_update_summary"/>
|
||||||
|
|
||||||
|
</PreferenceCategory>
|
||||||
|
|
||||||
</PreferenceScreen>
|
</PreferenceScreen>
|
||||||
|
@@ -30,7 +30,6 @@ import android.content.SharedPreferences;
|
|||||||
import android.content.pm.ResolveInfo;
|
import android.content.pm.ResolveInfo;
|
||||||
import android.content.pm.ServiceInfo;
|
import android.content.pm.ServiceInfo;
|
||||||
import android.content.res.Configuration;
|
import android.content.res.Configuration;
|
||||||
import android.database.ContentObserver;
|
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.os.Handler;
|
import android.os.Handler;
|
||||||
@@ -82,7 +81,8 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
private static final String SYSTEM_PROPERTY_MARKET_URL = "ro.screenreader.market";
|
private static final String SYSTEM_PROPERTY_MARKET_URL = "ro.screenreader.market";
|
||||||
|
|
||||||
// Timeout before we update the services if packages are added/removed since
|
// Timeout before we update the services if packages are added/removed since
|
||||||
// the AccessibilityManagerService has to do that processing first to generate
|
// the AccessibilityManagerService has to do that processing first to
|
||||||
|
// generate
|
||||||
// the AccessibilityServiceInfo we need for proper presentation.
|
// the AccessibilityServiceInfo we need for proper presentation.
|
||||||
private static final long DELAY_UPDATE_SERVICES_MILLIS = 1000;
|
private static final long DELAY_UPDATE_SERVICES_MILLIS = 1000;
|
||||||
|
|
||||||
@@ -96,7 +96,8 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
private static final String SYSTEM_CATEGORY = "system_category";
|
private static final String SYSTEM_CATEGORY = "system_category";
|
||||||
|
|
||||||
// Preferences
|
// Preferences
|
||||||
private static final String TOGGLE_LARGE_TEXT_PREFERENCE = "toggle_large_text_preference";
|
private static final String TOGGLE_LARGE_TEXT_PREFERENCE =
|
||||||
|
"toggle_large_text_preference";
|
||||||
private static final String TOGGLE_POWER_BUTTON_ENDS_CALL_PREFERENCE =
|
private static final String TOGGLE_POWER_BUTTON_ENDS_CALL_PREFERENCE =
|
||||||
"toggle_power_button_ends_call_preference";
|
"toggle_power_button_ends_call_preference";
|
||||||
private static final String TOGGLE_LOCK_SCREEN_ROTATION_PREFERENCE =
|
private static final String TOGGLE_LOCK_SCREEN_ROTATION_PREFERENCE =
|
||||||
@@ -107,6 +108,8 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
"select_long_press_timeout_preference";
|
"select_long_press_timeout_preference";
|
||||||
private static final String TOGGLE_SCRIPT_INJECTION_PREFERENCE =
|
private static final String TOGGLE_SCRIPT_INJECTION_PREFERENCE =
|
||||||
"toggle_script_injection_preference";
|
"toggle_script_injection_preference";
|
||||||
|
private static final String DISPLAY_MAGNIFICATION_PREFERENCE_SCREEN =
|
||||||
|
"screen_magnification_preference_screen";
|
||||||
|
|
||||||
// Extras passed to sub-fragments.
|
// Extras passed to sub-fragments.
|
||||||
private static final String EXTRA_PREFERENCE_KEY = "preference_key";
|
private static final String EXTRA_PREFERENCE_KEY = "preference_key";
|
||||||
@@ -164,6 +167,7 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
private ListPreference mSelectLongPressTimeoutPreference;
|
private ListPreference mSelectLongPressTimeoutPreference;
|
||||||
private AccessibilityEnableScriptInjectionPreference mToggleScriptInjectionPreference;
|
private AccessibilityEnableScriptInjectionPreference mToggleScriptInjectionPreference;
|
||||||
private Preference mNoServicesMessagePreference;
|
private Preference mNoServicesMessagePreference;
|
||||||
|
private PreferenceScreen mDisplayMagnificationPreferenceScreen;
|
||||||
|
|
||||||
private int mLongPressTimeoutDefault;
|
private int mLongPressTimeoutDefault;
|
||||||
|
|
||||||
@@ -207,6 +211,12 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) {
|
public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) {
|
||||||
if (mToggleLargeTextPreference == preference) {
|
if (mToggleLargeTextPreference == preference) {
|
||||||
@@ -220,6 +230,10 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
return true;
|
return true;
|
||||||
} else if (mToggleSpeakPasswordPreference == preference) {
|
} else if (mToggleSpeakPasswordPreference == preference) {
|
||||||
handleToggleSpeakPasswordPreferenceClick();
|
handleToggleSpeakPasswordPreferenceClick();
|
||||||
|
return true;
|
||||||
|
} else if (mDisplayMagnificationPreferenceScreen == preference) {
|
||||||
|
handleDisplayMagnificationPreferenceScreenClick();
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
return super.onPreferenceTreeClick(preferenceScreen, preference);
|
return super.onPreferenceTreeClick(preferenceScreen, preference);
|
||||||
}
|
}
|
||||||
@@ -252,6 +266,18 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
mToggleSpeakPasswordPreference.isChecked() ? 1 : 0);
|
mToggleSpeakPasswordPreference.isChecked() ? 1 : 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void handleDisplayMagnificationPreferenceScreenClick() {
|
||||||
|
Bundle extras = mDisplayMagnificationPreferenceScreen.getExtras();
|
||||||
|
extras.putString(EXTRA_TITLE, getString(
|
||||||
|
R.string.accessibility_screen_magnification_title));
|
||||||
|
extras.putString(EXTRA_SUMMARY, getString(
|
||||||
|
R.string.accessibility_screen_magnification_summary));
|
||||||
|
extras.putBoolean(EXTRA_CHECKED, Settings.Secure.getInt(getContentResolver(),
|
||||||
|
Settings.Secure.ACCESSIBILITY_DISPLAY_MAGNIFICATION_ENABLED, 0) == 1);
|
||||||
|
super.onPreferenceTreeClick(mDisplayMagnificationPreferenceScreen,
|
||||||
|
mDisplayMagnificationPreferenceScreen);
|
||||||
|
}
|
||||||
|
|
||||||
private void initializeAllPreferences() {
|
private void initializeAllPreferences() {
|
||||||
mServicesCategory = (PreferenceCategory) findPreference(SERVICES_CATEGORY);
|
mServicesCategory = (PreferenceCategory) findPreference(SERVICES_CATEGORY);
|
||||||
mSystemsCategory = (PreferenceCategory) findPreference(SYSTEM_CATEGORY);
|
mSystemsCategory = (PreferenceCategory) findPreference(SYSTEM_CATEGORY);
|
||||||
@@ -295,6 +321,10 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
// Script injection.
|
// Script injection.
|
||||||
mToggleScriptInjectionPreference = (AccessibilityEnableScriptInjectionPreference)
|
mToggleScriptInjectionPreference = (AccessibilityEnableScriptInjectionPreference)
|
||||||
findPreference(TOGGLE_SCRIPT_INJECTION_PREFERENCE);
|
findPreference(TOGGLE_SCRIPT_INJECTION_PREFERENCE);
|
||||||
|
|
||||||
|
// Display magnification.
|
||||||
|
mDisplayMagnificationPreferenceScreen = (PreferenceScreen) findPreference(
|
||||||
|
DISPLAY_MAGNIFICATION_PREFERENCE_SCREEN);
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateAllPreferences() {
|
private void updateAllPreferences() {
|
||||||
@@ -336,9 +366,9 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
final boolean serviceEnabled = accessibilityEnabled
|
final boolean serviceEnabled = accessibilityEnabled
|
||||||
&& enabledServices.contains(componentName);
|
&& enabledServices.contains(componentName);
|
||||||
if (serviceEnabled) {
|
if (serviceEnabled) {
|
||||||
preference.setSummary(getString(R.string.accessibility_service_state_on));
|
preference.setSummary(getString(R.string.accessibility_feature_state_on));
|
||||||
} else {
|
} else {
|
||||||
preference.setSummary(getString(R.string.accessibility_service_state_off));
|
preference.setSummary(getString(R.string.accessibility_feature_state_off));
|
||||||
}
|
}
|
||||||
|
|
||||||
preference.setOrder(i);
|
preference.setOrder(i);
|
||||||
@@ -446,6 +476,17 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
final boolean scriptInjectionAllowed = (Settings.Secure.getInt(getContentResolver(),
|
final boolean scriptInjectionAllowed = (Settings.Secure.getInt(getContentResolver(),
|
||||||
Settings.Secure.ACCESSIBILITY_SCRIPT_INJECTION, 0) == 1);
|
Settings.Secure.ACCESSIBILITY_SCRIPT_INJECTION, 0) == 1);
|
||||||
mToggleScriptInjectionPreference.setInjectionAllowed(scriptInjectionAllowed);
|
mToggleScriptInjectionPreference.setInjectionAllowed(scriptInjectionAllowed);
|
||||||
|
|
||||||
|
// Screen magnification.
|
||||||
|
final boolean magnificationEnabled = Settings.Secure.getInt(getContentResolver(),
|
||||||
|
Settings.Secure.ACCESSIBILITY_DISPLAY_MAGNIFICATION_ENABLED, 0) == 1;
|
||||||
|
if (magnificationEnabled) {
|
||||||
|
mDisplayMagnificationPreferenceScreen.setSummary(
|
||||||
|
R.string.accessibility_feature_state_on);
|
||||||
|
} else {
|
||||||
|
mDisplayMagnificationPreferenceScreen.setSummary(
|
||||||
|
R.string.accessibility_feature_state_off);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void updateLockScreenRotationCheckbox() {
|
private void updateLockScreenRotationCheckbox() {
|
||||||
@@ -494,15 +535,18 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
.setPositiveButton(android.R.string.ok,
|
.setPositiveButton(android.R.string.ok,
|
||||||
new DialogInterface.OnClickListener() {
|
new DialogInterface.OnClickListener() {
|
||||||
public void onClick(DialogInterface dialog, int which) {
|
public void onClick(DialogInterface dialog, int which) {
|
||||||
// dismiss the dialog before launching the activity otherwise
|
// dismiss the dialog before launching
|
||||||
// the dialog removal occurs after onSaveInstanceState which
|
// the activity otherwise
|
||||||
|
// the dialog removal occurs after
|
||||||
|
// onSaveInstanceState which
|
||||||
// triggers an exception
|
// triggers an exception
|
||||||
removeDialog(DIALOG_ID_NO_ACCESSIBILITY_SERVICES);
|
removeDialog(DIALOG_ID_NO_ACCESSIBILITY_SERVICES);
|
||||||
String screenreaderMarketLink = SystemProperties.get(
|
String screenreaderMarketLink = SystemProperties.get(
|
||||||
SYSTEM_PROPERTY_MARKET_URL,
|
SYSTEM_PROPERTY_MARKET_URL,
|
||||||
DEFAULT_SCREENREADER_MARKET_LINK);
|
DEFAULT_SCREENREADER_MARKET_LINK);
|
||||||
Uri marketUri = Uri.parse(screenreaderMarketLink);
|
Uri marketUri = Uri.parse(screenreaderMarketLink);
|
||||||
Intent marketIntent = new Intent(Intent.ACTION_VIEW, marketUri);
|
Intent marketIntent = new Intent(Intent.ACTION_VIEW,
|
||||||
|
marketUri);
|
||||||
startActivity(marketIntent);
|
startActivity(marketIntent);
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -576,20 +620,6 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private static ToggleSwitch createAndAddActionBarToggleSwitch(Activity activity) {
|
|
||||||
ToggleSwitch toggleSwitch = new ToggleSwitch(activity);
|
|
||||||
final int padding = activity.getResources().getDimensionPixelSize(
|
|
||||||
R.dimen.action_bar_switch_padding);
|
|
||||||
toggleSwitch.setPadding(0, 0, padding, 0);
|
|
||||||
activity.getActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM,
|
|
||||||
ActionBar.DISPLAY_SHOW_CUSTOM);
|
|
||||||
activity.getActionBar().setCustomView(toggleSwitch,
|
|
||||||
new ActionBar.LayoutParams(ActionBar.LayoutParams.WRAP_CONTENT,
|
|
||||||
ActionBar.LayoutParams.WRAP_CONTENT,
|
|
||||||
Gravity.CENTER_VERTICAL | Gravity.END));
|
|
||||||
return toggleSwitch;
|
|
||||||
}
|
|
||||||
|
|
||||||
public static class ToggleSwitch extends Switch {
|
public static class ToggleSwitch extends Switch {
|
||||||
|
|
||||||
private OnBeforeCheckedChangeListener mOnBeforeListener;
|
private OnBeforeCheckedChangeListener mOnBeforeListener;
|
||||||
@@ -621,85 +651,19 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
}
|
}
|
||||||
|
|
||||||
public static class ToggleAccessibilityServicePreferenceFragment
|
public static class ToggleAccessibilityServicePreferenceFragment
|
||||||
extends SettingsPreferenceFragment implements DialogInterface.OnClickListener {
|
extends ToggleFeaturePreferenceFragment implements DialogInterface.OnClickListener {
|
||||||
|
|
||||||
private static final int DIALOG_ID_ENABLE_WARNING = 1;
|
private static final int DIALOG_ID_ENABLE_WARNING = 1;
|
||||||
private static final int DIALOG_ID_DISABLE_WARNING = 2;
|
private static final int DIALOG_ID_DISABLE_WARNING = 2;
|
||||||
|
|
||||||
private String mPreferenceKey;
|
|
||||||
|
|
||||||
private ToggleSwitch mToggleSwitch;
|
|
||||||
|
|
||||||
private CharSequence mEnableWarningTitle;
|
private CharSequence mEnableWarningTitle;
|
||||||
private CharSequence mEnableWarningMessage;
|
private CharSequence mEnableWarningMessage;
|
||||||
private CharSequence mDisableWarningTitle;
|
private CharSequence mDisableWarningTitle;
|
||||||
private CharSequence mDisableWarningMessage;
|
private CharSequence mDisableWarningMessage;
|
||||||
|
|
||||||
private Preference mSummaryPreference;
|
|
||||||
|
|
||||||
private CharSequence mSettingsTitle;
|
|
||||||
private Intent mSettingsIntent;
|
|
||||||
|
|
||||||
private int mShownDialogId;
|
private int mShownDialogId;
|
||||||
|
|
||||||
// TODO: Showing sub-sub fragment does not handle the activity title
|
|
||||||
// so we do it but this is wrong. Do a real fix when there is time.
|
|
||||||
private CharSequence mOldActivityTitle;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onCreate(Bundle savedInstanceState) {
|
|
||||||
super.onCreate(savedInstanceState);
|
|
||||||
PreferenceScreen preferenceScreen = getPreferenceManager().createPreferenceScreen(
|
|
||||||
getActivity());
|
|
||||||
setPreferenceScreen(preferenceScreen);
|
|
||||||
mSummaryPreference = new Preference(getActivity()) {
|
|
||||||
@Override
|
|
||||||
protected void onBindView(View view) {
|
|
||||||
super.onBindView(view);
|
|
||||||
TextView summaryView = (TextView) view.findViewById(R.id.summary);
|
|
||||||
summaryView.setText(getSummary());
|
|
||||||
sendAccessibilityEvent(summaryView);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void sendAccessibilityEvent(View view) {
|
|
||||||
// Since the view is still not attached we create, populate,
|
|
||||||
// and send the event directly since we do not know when it
|
|
||||||
// will be attached and posting commands is not as clean.
|
|
||||||
AccessibilityManager accessibilityManager =
|
|
||||||
AccessibilityManager.getInstance(getActivity());
|
|
||||||
if (accessibilityManager.isEnabled()) {
|
|
||||||
AccessibilityEvent event = AccessibilityEvent.obtain();
|
|
||||||
event.setEventType(AccessibilityEvent.TYPE_VIEW_FOCUSED);
|
|
||||||
view.onInitializeAccessibilityEvent(event);
|
|
||||||
view.dispatchPopulateAccessibilityEvent(event);
|
|
||||||
accessibilityManager.sendAccessibilityEvent(event);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
mSummaryPreference.setPersistent(false);
|
|
||||||
mSummaryPreference.setLayoutResource(R.layout.text_description_preference);
|
|
||||||
preferenceScreen.addPreference(mSummaryPreference);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onViewCreated(View view, Bundle savedInstanceState) {
|
|
||||||
super.onViewCreated(view, savedInstanceState);
|
|
||||||
installActionBarToggleSwitch();
|
|
||||||
processArguments();
|
|
||||||
getListView().setDivider(null);
|
|
||||||
getListView().setEnabled(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onDestroyView() {
|
|
||||||
getActivity().getActionBar().setCustomView(null);
|
|
||||||
if (mOldActivityTitle != null) {
|
|
||||||
getActivity().getActionBar().setTitle(mOldActivityTitle);
|
|
||||||
}
|
|
||||||
mToggleSwitch.setOnBeforeCheckedChangeListener(null);
|
|
||||||
super.onDestroyView();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void onPreferenceToggled(String preferenceKey, boolean enabled) {
|
public void onPreferenceToggled(String preferenceKey, boolean enabled) {
|
||||||
// Parse the enabled services.
|
// Parse the enabled services.
|
||||||
Set<ComponentName> enabledServices = getEnabledServicesFromSettings(getActivity());
|
Set<ComponentName> enabledServices = getEnabledServicesFromSettings(getActivity());
|
||||||
@@ -729,9 +693,10 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
|
|
||||||
// Update the enabled services setting.
|
// Update the enabled services setting.
|
||||||
StringBuilder enabledServicesBuilder = new StringBuilder();
|
StringBuilder enabledServicesBuilder = new StringBuilder();
|
||||||
// Keep the enabled services even if they are not installed since we have
|
// Keep the enabled services even if they are not installed since we
|
||||||
// no way to know whether the application restore process has completed.
|
// have no way to know whether the application restore process has
|
||||||
// In general the system should be responsible for the clean up not settings.
|
// completed. In general the system should be responsible for the
|
||||||
|
// clean up not settings.
|
||||||
for (ComponentName enabledService : enabledServices) {
|
for (ComponentName enabledService : enabledServices) {
|
||||||
enabledServicesBuilder.append(enabledService.flattenToString());
|
enabledServicesBuilder.append(enabledService.flattenToString());
|
||||||
enabledServicesBuilder.append(ENABLED_ACCESSIBILITY_SERVICES_SEPARATOR);
|
enabledServicesBuilder.append(ENABLED_ACCESSIBILITY_SERVICES_SEPARATOR);
|
||||||
@@ -749,14 +714,6 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
Settings.Secure.ACCESSIBILITY_ENABLED, accessibilityEnabled ? 1 : 0);
|
Settings.Secure.ACCESSIBILITY_ENABLED, accessibilityEnabled ? 1 : 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
|
||||||
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
|
|
||||||
super.onCreateOptionsMenu(menu, inflater);
|
|
||||||
MenuItem menuItem = menu.add(mSettingsTitle);
|
|
||||||
menuItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
|
|
||||||
menuItem.setIntent(mSettingsIntent);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Dialog onCreateDialog(int dialogId) {
|
public Dialog onCreateDialog(int dialogId) {
|
||||||
CharSequence title = null;
|
CharSequence title = null;
|
||||||
@@ -806,8 +763,9 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void installActionBarToggleSwitch() {
|
@Override
|
||||||
mToggleSwitch = createAndAddActionBarToggleSwitch(getActivity());
|
protected void onInstallActionBarToggleSwitch() {
|
||||||
|
super.onInstallActionBarToggleSwitch();
|
||||||
mToggleSwitch.setOnBeforeCheckedChangeListener(new OnBeforeCheckedChangeListener() {
|
mToggleSwitch.setOnBeforeCheckedChangeListener(new OnBeforeCheckedChangeListener() {
|
||||||
@Override
|
@Override
|
||||||
public boolean onBeforeCheckedChanged(ToggleSwitch toggleSwitch, boolean checked) {
|
public boolean onBeforeCheckedChanged(ToggleSwitch toggleSwitch, boolean checked) {
|
||||||
@@ -833,28 +791,9 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
private void processArguments() {
|
@Override
|
||||||
Bundle arguments = getArguments();
|
protected void onProcessArguments(Bundle arguments) {
|
||||||
|
super.onProcessArguments(arguments);
|
||||||
// Key.
|
|
||||||
mPreferenceKey = arguments.getString(EXTRA_PREFERENCE_KEY);
|
|
||||||
|
|
||||||
// Enabled.
|
|
||||||
final boolean enabled = arguments.getBoolean(EXTRA_CHECKED);
|
|
||||||
mToggleSwitch.setCheckedInternal(enabled);
|
|
||||||
|
|
||||||
// Title.
|
|
||||||
PreferenceActivity activity = (PreferenceActivity) getActivity();
|
|
||||||
if (!activity.onIsMultiPane() || activity.onIsHidingHeaders()) {
|
|
||||||
mOldActivityTitle = getActivity().getTitle();
|
|
||||||
String title = arguments.getString(EXTRA_TITLE);
|
|
||||||
getActivity().getActionBar().setTitle(title);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Summary.
|
|
||||||
String summary = arguments.getString(EXTRA_SUMMARY);
|
|
||||||
mSummaryPreference.setSummary(summary);
|
|
||||||
|
|
||||||
// Settings title and intent.
|
// Settings title and intent.
|
||||||
String settingsTitle = arguments.getString(EXTRA_SETTINGS_TITLE);
|
String settingsTitle = arguments.getString(EXTRA_SETTINGS_TITLE);
|
||||||
String settingsComponentName = arguments.getString(EXTRA_SETTINGS_COMPONENT_NAME);
|
String settingsComponentName = arguments.getString(EXTRA_SETTINGS_COMPONENT_NAME);
|
||||||
@@ -867,22 +806,157 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
setHasOptionsMenu(true);
|
setHasOptionsMenu(true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Enable warning title.
|
// Enable warning title.
|
||||||
mEnableWarningTitle = arguments.getCharSequence(
|
mEnableWarningTitle = arguments.getCharSequence(
|
||||||
AccessibilitySettings.EXTRA_ENABLE_WARNING_TITLE);
|
AccessibilitySettings.EXTRA_ENABLE_WARNING_TITLE);
|
||||||
|
|
||||||
// Enable warning message.
|
// Enable warning message.
|
||||||
mEnableWarningMessage = arguments.getCharSequence(
|
mEnableWarningMessage = arguments.getCharSequence(
|
||||||
AccessibilitySettings.EXTRA_ENABLE_WARNING_MESSAGE);
|
AccessibilitySettings.EXTRA_ENABLE_WARNING_MESSAGE);
|
||||||
|
|
||||||
// Disable warning title.
|
// Disable warning title.
|
||||||
mDisableWarningTitle = arguments.getString(
|
mDisableWarningTitle = arguments.getString(
|
||||||
AccessibilitySettings.EXTRA_DISABLE_WARNING_TITLE);
|
AccessibilitySettings.EXTRA_DISABLE_WARNING_TITLE);
|
||||||
|
|
||||||
// Disable warning message.
|
// Disable warning message.
|
||||||
mDisableWarningMessage = arguments.getString(
|
mDisableWarningMessage = arguments.getString(
|
||||||
AccessibilitySettings.EXTRA_DISABLE_WARNING_MESSAGE);
|
AccessibilitySettings.EXTRA_DISABLE_WARNING_MESSAGE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static class ToggleScreenMagnificationPreferenceFragment
|
||||||
|
extends ToggleFeaturePreferenceFragment {
|
||||||
|
@Override
|
||||||
|
protected void onPreferenceToggled(String preferenceKey, boolean enabled) {
|
||||||
|
Settings.Secure.putInt(getContentResolver(),
|
||||||
|
Settings.Secure.ACCESSIBILITY_DISPLAY_MAGNIFICATION_ENABLED, enabled? 1 : 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void onInstallActionBarToggleSwitch() {
|
||||||
|
super.onInstallActionBarToggleSwitch();
|
||||||
|
mToggleSwitch.setOnBeforeCheckedChangeListener(new OnBeforeCheckedChangeListener() {
|
||||||
|
@Override
|
||||||
|
public boolean onBeforeCheckedChanged(ToggleSwitch toggleSwitch, boolean checked) {
|
||||||
|
toggleSwitch.setCheckedInternal(checked);
|
||||||
|
getArguments().putBoolean(EXTRA_CHECKED, checked);
|
||||||
|
onPreferenceToggled(mPreferenceKey, checked);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static abstract class ToggleFeaturePreferenceFragment
|
||||||
|
extends SettingsPreferenceFragment {
|
||||||
|
|
||||||
|
protected ToggleSwitch mToggleSwitch;
|
||||||
|
|
||||||
|
protected String mPreferenceKey;
|
||||||
|
protected Preference mSummaryPreference;
|
||||||
|
|
||||||
|
protected CharSequence mSettingsTitle;
|
||||||
|
protected Intent mSettingsIntent;
|
||||||
|
|
||||||
|
// TODO: Showing sub-sub fragment does not handle the activity title
|
||||||
|
// so we do it but this is wrong. Do a real fix when there is time.
|
||||||
|
private CharSequence mOldActivityTitle;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onCreate(Bundle savedInstanceState) {
|
||||||
|
super.onCreate(savedInstanceState);
|
||||||
|
PreferenceScreen preferenceScreen = getPreferenceManager().createPreferenceScreen(
|
||||||
|
getActivity());
|
||||||
|
setPreferenceScreen(preferenceScreen);
|
||||||
|
mSummaryPreference = new Preference(getActivity()) {
|
||||||
|
@Override
|
||||||
|
protected void onBindView(View view) {
|
||||||
|
super.onBindView(view);
|
||||||
|
TextView summaryView = (TextView) view.findViewById(R.id.summary);
|
||||||
|
summaryView.setText(getSummary());
|
||||||
|
sendAccessibilityEvent(summaryView);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void sendAccessibilityEvent(View view) {
|
||||||
|
// Since the view is still not attached we create, populate,
|
||||||
|
// and send the event directly since we do not know when it
|
||||||
|
// will be attached and posting commands is not as clean.
|
||||||
|
AccessibilityManager accessibilityManager =
|
||||||
|
AccessibilityManager.getInstance(getActivity());
|
||||||
|
if (accessibilityManager.isEnabled()) {
|
||||||
|
AccessibilityEvent event = AccessibilityEvent.obtain();
|
||||||
|
event.setEventType(AccessibilityEvent.TYPE_VIEW_FOCUSED);
|
||||||
|
view.onInitializeAccessibilityEvent(event);
|
||||||
|
view.dispatchPopulateAccessibilityEvent(event);
|
||||||
|
accessibilityManager.sendAccessibilityEvent(event);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
mSummaryPreference.setPersistent(false);
|
||||||
|
mSummaryPreference.setLayoutResource(R.layout.text_description_preference);
|
||||||
|
preferenceScreen.addPreference(mSummaryPreference);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onViewCreated(View view, Bundle savedInstanceState) {
|
||||||
|
super.onViewCreated(view, savedInstanceState);
|
||||||
|
onInstallActionBarToggleSwitch();
|
||||||
|
onProcessArguments(getArguments());
|
||||||
|
getListView().setDivider(null);
|
||||||
|
getListView().setEnabled(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onDestroyView() {
|
||||||
|
getActivity().getActionBar().setCustomView(null);
|
||||||
|
if (mOldActivityTitle != null) {
|
||||||
|
getActivity().getActionBar().setTitle(mOldActivityTitle);
|
||||||
|
}
|
||||||
|
mToggleSwitch.setOnBeforeCheckedChangeListener(null);
|
||||||
|
super.onDestroyView();
|
||||||
|
}
|
||||||
|
|
||||||
|
protected abstract void onPreferenceToggled(String preferenceKey, boolean enabled);
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
|
||||||
|
super.onCreateOptionsMenu(menu, inflater);
|
||||||
|
MenuItem menuItem = menu.add(mSettingsTitle);
|
||||||
|
menuItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM);
|
||||||
|
menuItem.setIntent(mSettingsIntent);
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void onInstallActionBarToggleSwitch() {
|
||||||
|
mToggleSwitch = createAndAddActionBarToggleSwitch(getActivity());
|
||||||
|
}
|
||||||
|
|
||||||
|
private ToggleSwitch createAndAddActionBarToggleSwitch(Activity activity) {
|
||||||
|
ToggleSwitch toggleSwitch = new ToggleSwitch(activity);
|
||||||
|
final int padding = activity.getResources().getDimensionPixelSize(
|
||||||
|
R.dimen.action_bar_switch_padding);
|
||||||
|
toggleSwitch.setPadding(0, 0, padding, 0);
|
||||||
|
activity.getActionBar().setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM,
|
||||||
|
ActionBar.DISPLAY_SHOW_CUSTOM);
|
||||||
|
activity.getActionBar().setCustomView(toggleSwitch,
|
||||||
|
new ActionBar.LayoutParams(ActionBar.LayoutParams.WRAP_CONTENT,
|
||||||
|
ActionBar.LayoutParams.WRAP_CONTENT,
|
||||||
|
Gravity.CENTER_VERTICAL | Gravity.END));
|
||||||
|
return toggleSwitch;
|
||||||
|
}
|
||||||
|
|
||||||
|
protected void onProcessArguments(Bundle arguments) {
|
||||||
|
// Key.
|
||||||
|
mPreferenceKey = arguments.getString(EXTRA_PREFERENCE_KEY);
|
||||||
|
// Enabled.
|
||||||
|
final boolean enabled = arguments.getBoolean(EXTRA_CHECKED);
|
||||||
|
mToggleSwitch.setCheckedInternal(enabled);
|
||||||
|
// Title.
|
||||||
|
PreferenceActivity activity = (PreferenceActivity) getActivity();
|
||||||
|
if (!activity.onIsMultiPane() || activity.onIsHidingHeaders()) {
|
||||||
|
mOldActivityTitle = getActivity().getTitle();
|
||||||
|
String title = arguments.getString(EXTRA_TITLE);
|
||||||
|
getActivity().getActionBar().setTitle(title);
|
||||||
|
}
|
||||||
|
// Summary.
|
||||||
|
String summary = arguments.getString(EXTRA_SUMMARY);
|
||||||
|
mSummaryPreference.setSummary(summary);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -98,6 +98,8 @@ public class DevelopmentSettings extends PreferenceFragment
|
|||||||
private static final String TRANSITION_ANIMATION_SCALE_KEY = "transition_animation_scale";
|
private static final String TRANSITION_ANIMATION_SCALE_KEY = "transition_animation_scale";
|
||||||
private static final String ANIMATOR_DURATION_SCALE_KEY = "animator_duration_scale";
|
private static final String ANIMATOR_DURATION_SCALE_KEY = "animator_duration_scale";
|
||||||
private static final String OVERLAY_DISPLAY_DEVICES_KEY = "overlay_display_devices";
|
private static final String OVERLAY_DISPLAY_DEVICES_KEY = "overlay_display_devices";
|
||||||
|
private static final String ACCESSIBILITY_DISPLAY_MAGNIFICATION_AUTO_UPDATE_KEY =
|
||||||
|
"accessibility_display_magnification_auto_update";
|
||||||
|
|
||||||
private static final String ENABLE_TRACES_KEY = "enable_traces";
|
private static final String ENABLE_TRACES_KEY = "enable_traces";
|
||||||
|
|
||||||
@@ -142,6 +144,7 @@ public class DevelopmentSettings extends PreferenceFragment
|
|||||||
private CheckBoxPreference mShowHwScreenUpdates;
|
private CheckBoxPreference mShowHwScreenUpdates;
|
||||||
private CheckBoxPreference mShowHwLayersUpdates;
|
private CheckBoxPreference mShowHwLayersUpdates;
|
||||||
private CheckBoxPreference mDebugLayout;
|
private CheckBoxPreference mDebugLayout;
|
||||||
|
private CheckBoxPreference mDisplayMangificationAutoUpdate;
|
||||||
private ListPreference mWindowAnimationScale;
|
private ListPreference mWindowAnimationScale;
|
||||||
private ListPreference mTransitionAnimationScale;
|
private ListPreference mTransitionAnimationScale;
|
||||||
private ListPreference mAnimatorDurationScale;
|
private ListPreference mAnimatorDurationScale;
|
||||||
@@ -237,6 +240,9 @@ public class DevelopmentSettings extends PreferenceFragment
|
|||||||
mAllPrefs.add(hdcpChecking);
|
mAllPrefs.add(hdcpChecking);
|
||||||
}
|
}
|
||||||
removeHdcpOptionsForProduction();
|
removeHdcpOptionsForProduction();
|
||||||
|
|
||||||
|
mDisplayMangificationAutoUpdate = findAndInitCheckboxPref(
|
||||||
|
ACCESSIBILITY_DISPLAY_MAGNIFICATION_AUTO_UPDATE_KEY);
|
||||||
}
|
}
|
||||||
|
|
||||||
private CheckBoxPreference findAndInitCheckboxPref(String key) {
|
private CheckBoxPreference findAndInitCheckboxPref(String key) {
|
||||||
@@ -370,6 +376,7 @@ public class DevelopmentSettings extends PreferenceFragment
|
|||||||
updateImmediatelyDestroyActivitiesOptions();
|
updateImmediatelyDestroyActivitiesOptions();
|
||||||
updateAppProcessLimitOptions();
|
updateAppProcessLimitOptions();
|
||||||
updateShowAllANRsOptions();
|
updateShowAllANRsOptions();
|
||||||
|
updateDisplayMagnificationAutoUpdate();
|
||||||
}
|
}
|
||||||
|
|
||||||
private void resetDangerousOptions() {
|
private void resetDangerousOptions() {
|
||||||
@@ -623,6 +630,12 @@ public class DevelopmentSettings extends PreferenceFragment
|
|||||||
pokeSystemProperties();
|
pokeSystemProperties();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void writeDisplayMagnificationAutoUpdate() {
|
||||||
|
Settings.Secure.putInt(getActivity().getContentResolver(),
|
||||||
|
Settings.Secure.ACCESSIBILITY_DISPLAY_MAGNIFICATION_AUTO_UPDATE,
|
||||||
|
mDisplayMangificationAutoUpdate.isChecked() ? 1 : 0);
|
||||||
|
}
|
||||||
|
|
||||||
private void updateCpuUsageOptions() {
|
private void updateCpuUsageOptions() {
|
||||||
updateCheckBox(mShowCpuUsage, Settings.System.getInt(getActivity().getContentResolver(),
|
updateCheckBox(mShowCpuUsage, Settings.System.getInt(getActivity().getContentResolver(),
|
||||||
Settings.System.SHOW_PROCESSES, 0) != 0);
|
Settings.System.SHOW_PROCESSES, 0) != 0);
|
||||||
@@ -756,6 +769,12 @@ public class DevelopmentSettings extends PreferenceFragment
|
|||||||
getActivity().getContentResolver(), Settings.Secure.ANR_SHOW_BACKGROUND, 0) != 0);
|
getActivity().getContentResolver(), Settings.Secure.ANR_SHOW_BACKGROUND, 0) != 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void updateDisplayMagnificationAutoUpdate() {
|
||||||
|
updateCheckBox(mDisplayMangificationAutoUpdate,
|
||||||
|
Settings.Secure.getInt(getActivity().getContentResolver(),
|
||||||
|
Settings.Secure.ACCESSIBILITY_DISPLAY_MAGNIFICATION_AUTO_UPDATE, 0) != 0);
|
||||||
|
}
|
||||||
|
|
||||||
private void updateEnableTracesOptions() {
|
private void updateEnableTracesOptions() {
|
||||||
long flags = SystemProperties.getLong(Trace.PROPERTY_TRACE_TAG_ENABLEFLAGS, 0);
|
long flags = SystemProperties.getLong(Trace.PROPERTY_TRACE_TAG_ENABLEFLAGS, 0);
|
||||||
String[] values = mEnableTracesPref.getEntryValues();
|
String[] values = mEnableTracesPref.getEntryValues();
|
||||||
@@ -909,6 +928,8 @@ public class DevelopmentSettings extends PreferenceFragment
|
|||||||
writeShowHwLayersUpdatesOptions();
|
writeShowHwLayersUpdatesOptions();
|
||||||
} else if (preference == mDebugLayout) {
|
} else if (preference == mDebugLayout) {
|
||||||
writeDebugLayoutOptions();
|
writeDebugLayoutOptions();
|
||||||
|
} else if (preference == mDisplayMangificationAutoUpdate) {
|
||||||
|
writeDisplayMagnificationAutoUpdate();
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
|
Reference in New Issue
Block a user