Remove "enhance web scripts" from settings.
See change Ic125514c34f191aea0416a469e4b3481ab3200b9 for details. bug:8089372 Change-Id: I47eda16579c29051aa24b8d4c38035439aa00915
This commit is contained in:
@@ -3116,8 +3116,6 @@
|
|||||||
<string name="accessibility_toggle_speak_password_preference_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_preference_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] -->
|
|
||||||
<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>
|
||||||
@@ -3127,16 +3125,6 @@
|
|||||||
<!-- Summary for the disabled state of an accessiblity feature. [CHAR LIMIT=10] -->
|
<!-- Summary for the disabled state of an accessiblity feature. [CHAR LIMIT=10] -->
|
||||||
<string name="accessibility_feature_state_off">Off</string>
|
<string name="accessibility_feature_state_off">Off</string>
|
||||||
|
|
||||||
<!-- Summary for the allowed state of script injection. [CHAR LIMIT=15] -->
|
|
||||||
<string name="accessibility_script_injection_allowed">Allowed</string>
|
|
||||||
<!-- Summary for the disallowed state of script injection. [CHAR LIMIT=15] -->
|
|
||||||
<string name="accessibility_script_injection_disallowed">Not allowed</string>
|
|
||||||
|
|
||||||
<!-- Title for the dialog button to allow script injection. [CHAR LIMIT=15] -->
|
|
||||||
<string name="accessibility_script_injection_button_allow">Allow</string>
|
|
||||||
<!-- Title for the dialog button to disallow script injection. [CHAR LIMIT=15] -->
|
|
||||||
<string name="accessibility_script_injection_button_disallow">Don\'t allow</string>
|
|
||||||
|
|
||||||
<!-- Title for a warning message about security implications of enabling an accessibility service,
|
<!-- Title for a warning message about security implications of enabling an accessibility service,
|
||||||
displayed as a dialog message when the user selects to enable an accessibility service (tablet). [CHAR LIMIT=NONE] -->
|
displayed as a dialog message when the user selects to enable an accessibility service (tablet). [CHAR LIMIT=NONE] -->
|
||||||
<string name="accessibility_service_security_warning_title">Use
|
<string name="accessibility_service_security_warning_title">Use
|
||||||
@@ -3175,11 +3163,6 @@
|
|||||||
help blind and low-vision users. Do you want to install it for free from Android
|
help blind and low-vision users. Do you want to install it for free from Android
|
||||||
Market?</string>
|
Market?</string>
|
||||||
|
|
||||||
<!-- Warning message about security implications of downloading accessibility scripts,
|
|
||||||
displayed as a dialog message when the user selects to enable script downloading. [CHAR LIMIT=NONE] -->
|
|
||||||
<string name="accessibility_script_injection_security_warning_summary">Do you want apps to
|
|
||||||
install scripts from Google that make their web content more accessible?</string>
|
|
||||||
|
|
||||||
<!-- Default description for an accessibility serivice if the latter doesn't provide one. [CHAR LIMIT=NONE] -->
|
<!-- Default description for an accessibility serivice if the latter doesn't provide one. [CHAR LIMIT=NONE] -->
|
||||||
<string name="accessibility_service_default_description">No description provided.</string>
|
<string name="accessibility_service_default_description">No description provided.</string>
|
||||||
|
|
||||||
|
@@ -67,17 +67,6 @@
|
|||||||
android:entryValues="@array/long_press_timeout_selector_values"
|
android:entryValues="@array/long_press_timeout_selector_values"
|
||||||
android:persistent="false"/>
|
android:persistent="false"/>
|
||||||
|
|
||||||
<!-- 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
|
|
||||||
android:key="toggle_script_injection_preference"
|
|
||||||
android:title="@string/accessibility_toggle_script_injection_preference_title"
|
|
||||||
android:dialogTitle=""
|
|
||||||
android:dialogIcon="@android:drawable/ic_dialog_alert"
|
|
||||||
android:dialogMessage="@string/accessibility_script_injection_security_warning_summary"
|
|
||||||
android:positiveButtonText="@string/accessibility_script_injection_button_allow"
|
|
||||||
android:negativeButtonText="@string/accessibility_script_injection_button_disallow"
|
|
||||||
android:persistent="false"/>
|
|
||||||
|
|
||||||
</PreferenceCategory>
|
</PreferenceCategory>
|
||||||
|
|
||||||
</PreferenceScreen>
|
</PreferenceScreen>
|
||||||
|
@@ -1,175 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright (C) 2011 The Android Open Source Project
|
|
||||||
*
|
|
||||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
||||||
* you may not use this file except in compliance with the License.
|
|
||||||
* You may obtain a copy of the License at
|
|
||||||
*
|
|
||||||
* http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
*
|
|
||||||
* Unless required by applicable law or agreed to in writing, software
|
|
||||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
||||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
||||||
* See the License for the specific language governing permissions and
|
|
||||||
* limitations under the License.
|
|
||||||
*/
|
|
||||||
|
|
||||||
package com.android.settings;
|
|
||||||
|
|
||||||
import android.content.Context;
|
|
||||||
import android.content.res.TypedArray;
|
|
||||||
import android.os.Parcel;
|
|
||||||
import android.os.Parcelable;
|
|
||||||
import android.preference.DialogPreference;
|
|
||||||
import android.provider.Settings;
|
|
||||||
import android.util.AttributeSet;
|
|
||||||
import android.view.View;
|
|
||||||
import android.view.accessibility.AccessibilityEvent;
|
|
||||||
import android.view.accessibility.AccessibilityManager;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Preference for enabling accessibility script injection. It displays a warning
|
|
||||||
* dialog before enabling the preference.
|
|
||||||
*/
|
|
||||||
public class AccessibilityEnableScriptInjectionPreference extends DialogPreference {
|
|
||||||
|
|
||||||
private boolean mInjectionAllowed;
|
|
||||||
private boolean mSendClickAccessibilityEvent;
|
|
||||||
|
|
||||||
public AccessibilityEnableScriptInjectionPreference(Context context, AttributeSet attrs) {
|
|
||||||
super(context, attrs);
|
|
||||||
updateSummary();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void setInjectionAllowed(boolean injectionAllowed) {
|
|
||||||
if (mInjectionAllowed != injectionAllowed) {
|
|
||||||
mInjectionAllowed = injectionAllowed;
|
|
||||||
persistBoolean(injectionAllowed);
|
|
||||||
updateSummary();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
public boolean isInjectionAllowed() {
|
|
||||||
return mInjectionAllowed;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onBindView(View view) {
|
|
||||||
super.onBindView(view);
|
|
||||||
View summaryView = view.findViewById(com.android.internal.R.id.summary);
|
|
||||||
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(getContext());
|
|
||||||
if (mSendClickAccessibilityEvent && accessibilityManager.isEnabled()) {
|
|
||||||
AccessibilityEvent event = AccessibilityEvent.obtain();
|
|
||||||
event.setEventType(AccessibilityEvent.TYPE_VIEW_CLICKED);
|
|
||||||
view.onInitializeAccessibilityEvent(event);
|
|
||||||
view.dispatchPopulateAccessibilityEvent(event);
|
|
||||||
accessibilityManager.sendAccessibilityEvent(event);
|
|
||||||
}
|
|
||||||
mSendClickAccessibilityEvent = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onClick() {
|
|
||||||
if (isInjectionAllowed()) {
|
|
||||||
setInjectionAllowed(false);
|
|
||||||
// Update the system setting only upon user action.
|
|
||||||
setSystemSetting(false);
|
|
||||||
mSendClickAccessibilityEvent = true;
|
|
||||||
} else {
|
|
||||||
super.onClick();
|
|
||||||
mSendClickAccessibilityEvent = false;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected Object onGetDefaultValue(TypedArray a, int index) {
|
|
||||||
return a.getBoolean(index, false);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onSetInitialValue(boolean restoreValue, Object defaultValue) {
|
|
||||||
setInjectionAllowed(restoreValue
|
|
||||||
? getPersistedBoolean(mInjectionAllowed)
|
|
||||||
: (Boolean) defaultValue);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onDialogClosed(boolean result) {
|
|
||||||
setInjectionAllowed(result);
|
|
||||||
if (result) {
|
|
||||||
// Update the system setting only upon user action.
|
|
||||||
setSystemSetting(true);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected Parcelable onSaveInstanceState() {
|
|
||||||
Parcelable superState = super.onSaveInstanceState();
|
|
||||||
if (isPersistent()) {
|
|
||||||
return superState;
|
|
||||||
}
|
|
||||||
SavedState myState = new SavedState(superState);
|
|
||||||
myState.mInjectionAllowed = mInjectionAllowed;
|
|
||||||
return myState;
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
protected void onRestoreInstanceState(Parcelable state) {
|
|
||||||
if (state == null || !state.getClass().equals(SavedState.class)) {
|
|
||||||
super.onRestoreInstanceState(state);
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
SavedState myState = (SavedState) state;
|
|
||||||
super.onRestoreInstanceState(myState.getSuperState());
|
|
||||||
setInjectionAllowed(myState.mInjectionAllowed);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void updateSummary() {
|
|
||||||
setSummary(mInjectionAllowed
|
|
||||||
? getContext().getString(R.string.accessibility_script_injection_allowed)
|
|
||||||
: getContext().getString(R.string.accessibility_script_injection_disallowed));
|
|
||||||
}
|
|
||||||
|
|
||||||
private void setSystemSetting(boolean enabled) {
|
|
||||||
Settings.Secure.putInt(getContext().getContentResolver(),
|
|
||||||
Settings.Secure.ACCESSIBILITY_SCRIPT_INJECTION, enabled ? 1 : 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
private static class SavedState extends BaseSavedState {
|
|
||||||
private boolean mInjectionAllowed;
|
|
||||||
|
|
||||||
public SavedState(Parcel source) {
|
|
||||||
super(source);
|
|
||||||
mInjectionAllowed = (source.readInt() == 1);
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public void writeToParcel(Parcel parcel, int flags) {
|
|
||||||
super.writeToParcel(parcel, flags);
|
|
||||||
parcel.writeInt(mInjectionAllowed ? 1 : 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
public SavedState(Parcelable superState) {
|
|
||||||
super(superState);
|
|
||||||
}
|
|
||||||
|
|
||||||
@SuppressWarnings("all")
|
|
||||||
public static final Parcelable.Creator<SavedState> CREATOR =
|
|
||||||
new Parcelable.Creator<SavedState>() {
|
|
||||||
public SavedState createFromParcel(Parcel in) {
|
|
||||||
return new SavedState(in);
|
|
||||||
}
|
|
||||||
|
|
||||||
public SavedState[] newArray(int size) {
|
|
||||||
return new SavedState[size];
|
|
||||||
}
|
|
||||||
};
|
|
||||||
}
|
|
||||||
}
|
|
@@ -108,8 +108,6 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
"toggle_speak_password_preference";
|
"toggle_speak_password_preference";
|
||||||
private static final String SELECT_LONG_PRESS_TIMEOUT_PREFERENCE =
|
private static final String SELECT_LONG_PRESS_TIMEOUT_PREFERENCE =
|
||||||
"select_long_press_timeout_preference";
|
"select_long_press_timeout_preference";
|
||||||
private static final String TOGGLE_SCRIPT_INJECTION_PREFERENCE =
|
|
||||||
"toggle_script_injection_preference";
|
|
||||||
private static final String ENABLE_ACCESSIBILITY_GESTURE_PREFERENCE_SCREEN =
|
private static final String ENABLE_ACCESSIBILITY_GESTURE_PREFERENCE_SCREEN =
|
||||||
"enable_global_gesture_preference_screen";
|
"enable_global_gesture_preference_screen";
|
||||||
private static final String DISPLAY_MAGNIFICATION_PREFERENCE_SCREEN =
|
private static final String DISPLAY_MAGNIFICATION_PREFERENCE_SCREEN =
|
||||||
@@ -179,7 +177,6 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
private CheckBoxPreference mToggleLockScreenRotationPreference;
|
private CheckBoxPreference mToggleLockScreenRotationPreference;
|
||||||
private CheckBoxPreference mToggleSpeakPasswordPreference;
|
private CheckBoxPreference mToggleSpeakPasswordPreference;
|
||||||
private ListPreference mSelectLongPressTimeoutPreference;
|
private ListPreference mSelectLongPressTimeoutPreference;
|
||||||
private AccessibilityEnableScriptInjectionPreference mToggleScriptInjectionPreference;
|
|
||||||
private Preference mNoServicesMessagePreference;
|
private Preference mNoServicesMessagePreference;
|
||||||
private PreferenceScreen mDisplayMagnificationPreferenceScreen;
|
private PreferenceScreen mDisplayMagnificationPreferenceScreen;
|
||||||
private PreferenceScreen mGlobalGesturePreferenceScreen;
|
private PreferenceScreen mGlobalGesturePreferenceScreen;
|
||||||
@@ -344,10 +341,6 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Script injection.
|
|
||||||
mToggleScriptInjectionPreference = (AccessibilityEnableScriptInjectionPreference)
|
|
||||||
findPreference(TOGGLE_SCRIPT_INJECTION_PREFERENCE);
|
|
||||||
|
|
||||||
// Display magnification.
|
// Display magnification.
|
||||||
mDisplayMagnificationPreferenceScreen = (PreferenceScreen) findPreference(
|
mDisplayMagnificationPreferenceScreen = (PreferenceScreen) findPreference(
|
||||||
DISPLAY_MAGNIFICATION_PREFERENCE_SCREEN);
|
DISPLAY_MAGNIFICATION_PREFERENCE_SCREEN);
|
||||||
@@ -504,11 +497,6 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements
|
|||||||
mSelectLongPressTimeoutPreference.setValue(value);
|
mSelectLongPressTimeoutPreference.setValue(value);
|
||||||
mSelectLongPressTimeoutPreference.setSummary(mLongPressTimeoutValuetoTitleMap.get(value));
|
mSelectLongPressTimeoutPreference.setSummary(mLongPressTimeoutValuetoTitleMap.get(value));
|
||||||
|
|
||||||
// Script injection.
|
|
||||||
final boolean scriptInjectionAllowed = (Settings.Secure.getInt(getContentResolver(),
|
|
||||||
Settings.Secure.ACCESSIBILITY_SCRIPT_INJECTION, 0) == 1);
|
|
||||||
mToggleScriptInjectionPreference.setInjectionAllowed(scriptInjectionAllowed);
|
|
||||||
|
|
||||||
// Screen magnification.
|
// Screen magnification.
|
||||||
final boolean magnificationEnabled = Settings.Secure.getInt(getContentResolver(),
|
final boolean magnificationEnabled = Settings.Secure.getInt(getContentResolver(),
|
||||||
Settings.Secure.ACCESSIBILITY_DISPLAY_MAGNIFICATION_ENABLED, 0) == 1;
|
Settings.Secure.ACCESSIBILITY_DISPLAY_MAGNIFICATION_ENABLED, 0) == 1;
|
||||||
|
Reference in New Issue
Block a user