Merge "[Wi-Fi] Refine code for saved AccessPoints"
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 1f2add0..2ee24f3 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -329,11 +329,11 @@
<string name="bluetooth_disable_a2dp_hw_offload_dialog_cancel">Cancel</string>
<!-- Title for Bluetooth device group with media capability group [CHAR LIMIT=none]-->
- <string name="connected_device_available_media_title">Available media devices</string>
+ <string name="connected_device_media_device_title">Media devices</string>
<!-- Title for Bluetooth device group with media capability group [CHAR LIMIT=none]-->
- <string name="connected_device_available_call_title">Available call devices</string>
+ <string name="connected_device_call_device_title">Call devices</string>
<!-- Title for connected device group [CHAR LIMIT=none]-->
- <string name="connected_device_connected_title">Currently connected</string>
+ <string name="connected_device_other_device_title">Other devices</string>
<!-- Title for connected device group [CHAR LIMIT=none]-->
<string name="connected_device_saved_title">Saved devices</string>
<!-- Summary for preference to add a device [CHAR LIMIT=none]-->
@@ -4685,7 +4685,7 @@
<!-- Title for the accessibility preference category of interaction control services and settings. [CHAR LIMIT=50] -->
<string name="interaction_control_category_title">Interaction controls</string>
<!-- Title for the accessibility preference category of services downloaded by the user. [CHAR LIMIT=50] -->
- <string name="user_installed_services_category_title">Downloaded services</string>
+ <string name="user_installed_services_category_title">Downloaded apps</string>
<!-- Title for the accessibility preference category of settings considered to be experimental, meaning they might be changed or removed in the future. [CHAR LIMIT=50] -->
<string name="experimental_category_title">Experimental</string>
<!-- Title for feature flags dashboard where developers can turn on experimental features [CHAR LIMIT=50] -->
@@ -4809,7 +4809,7 @@
<!-- Title for accessibility preference for configuring touch feedback vibrations. -->
<string name="accessibility_touch_vibration_title">Touch feedback</string>
<!-- Used in the acessibilty service settings to control turning on/off the service entirely -->
- <string name="accessibility_service_master_switch_title">Use service</string>
+ <string name="accessibility_service_master_switch_title">Use <xliff:g id="accessibility_app_name" example="TalkBack">%1$s</xliff:g></string>
<!-- Used in the Color correction settings screen to control turning on/off the feature entirely -->
<string name="accessibility_daltonizer_master_switch_title">Use color correction</string>
<!-- Used in the Captions settings screen to control turning on/off the feature entirely -->
diff --git a/res/xml/connected_devices.xml b/res/xml/connected_devices.xml
index a210ea5..0e5afc3 100644
--- a/res/xml/connected_devices.xml
+++ b/res/xml/connected_devices.xml
@@ -28,12 +28,12 @@
<PreferenceCategory
android:key="available_device_list"
- android:title="@string/connected_device_available_media_title"
+ android:title="@string/connected_device_media_device_title"
settings:controller="com.android.settings.connecteddevice.AvailableMediaDeviceGroupController"/>
<PreferenceCategory
android:key="connected_device_list"
- android:title="@string/connected_device_connected_title"
+ android:title="@string/connected_device_other_device_title"
settings:controller="com.android.settings.connecteddevice.ConnectedDeviceGroupController"/>
<com.android.settingslib.RestrictedPreference
diff --git a/res/xml/tether_prefs.xml b/res/xml/tether_prefs.xml
index 3f9b8c8..54c49e8 100644
--- a/res/xml/tether_prefs.xml
+++ b/res/xml/tether_prefs.xml
@@ -23,7 +23,7 @@
<com.android.settings.widget.FixedLineSummaryPreference
android:key="wifi_tether"
android:title="@string/wifi_hotspot_checkbox_text"
- android:summary="@string/summary_two_lines_placeholder"
+ android:summary="@string/summary_placeholder"
android:fragment="com.android.settings.wifi.tether.WifiTetherSettings"
settings:summaryLineCount="2" />
diff --git a/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java b/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java
index 95a2b76..ab855bc 100644
--- a/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java
+++ b/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java
@@ -34,6 +34,7 @@
import com.android.internal.accessibility.AccessibilityShortcutController;
import com.android.settings.R;
+import com.android.settings.widget.SwitchBar;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settingslib.search.Indexable;
import com.android.settingslib.accessibility.AccessibilityUtils;
@@ -126,6 +127,13 @@
updatePreferences();
}
+ @Override
+ protected void updateSwitchBarText(SwitchBar switchBar) {
+ final String switchBarText = getString(R.string.accessibility_service_master_switch_title,
+ getString(R.string.accessibility_global_gesture_preference_title));
+ switchBar.setSwitchBarText(switchBarText, switchBarText);
+ }
+
private void updatePreferences() {
ContentResolver cr = getContentResolver();
Context context = getContext();
diff --git a/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java b/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java
index 1556bec..f30af54 100644
--- a/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java
@@ -44,6 +44,7 @@
import com.android.internal.widget.LockPatternUtils;
import com.android.settings.R;
import com.android.settings.password.ConfirmDeviceCredentialActivity;
+import com.android.settings.widget.SwitchBar;
import com.android.settings.widget.ToggleSwitch;
import com.android.settings.widget.ToggleSwitch.OnBeforeCheckedChangeListener;
import com.android.settingslib.accessibility.AccessibilityUtils;
@@ -211,6 +212,15 @@
}
}
+ @Override
+ protected void updateSwitchBarText(SwitchBar switchBar) {
+ final AccessibilityServiceInfo info = getAccessibilityServiceInfo();
+ final String switchBarText = (info == null) ? "" :
+ getString(R.string.accessibility_service_master_switch_title,
+ info.getResolveInfo().loadLabel(getPackageManager()));
+ switchBar.setSwitchBarText(switchBarText, switchBarText);
+ }
+
private void updateSwitchBarToggleSwitch() {
final boolean checked = AccessibilityUtils.getEnabledServicesFromSettings(getActivity())
.contains(mComponentName);
diff --git a/src/com/android/settings/accessibility/ToggleAutoclickPreferenceFragment.java b/src/com/android/settings/accessibility/ToggleAutoclickPreferenceFragment.java
index df72cff..45dd39e 100644
--- a/src/com/android/settings/accessibility/ToggleAutoclickPreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleAutoclickPreferenceFragment.java
@@ -172,6 +172,13 @@
return false;
}
+ @Override
+ protected void updateSwitchBarText(SwitchBar switchBar) {
+ final String switchBarText = getString(R.string.accessibility_service_master_switch_title,
+ getString(R.string.accessibility_autoclick_preference_title));
+ switchBar.setSwitchBarText(switchBarText, switchBarText);
+ }
+
/**
* Converts seek bar preference progress value to autoclick delay associated with it.
*/
diff --git a/src/com/android/settings/accessibility/ToggleDaltonizerPreferenceFragment.java b/src/com/android/settings/accessibility/ToggleDaltonizerPreferenceFragment.java
index c5376eb..e02a74a 100644
--- a/src/com/android/settings/accessibility/ToggleDaltonizerPreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleDaltonizerPreferenceFragment.java
@@ -105,8 +105,9 @@
@Override
protected void updateSwitchBarText(SwitchBar switchBar) {
- switchBar.setSwitchBarText(R.string.accessibility_daltonizer_master_switch_title,
- R.string.accessibility_daltonizer_master_switch_title);
+ final String switchBarText = getString(R.string.accessibility_service_master_switch_title,
+ getString(R.string.accessibility_display_daltonizer_preference_title));
+ switchBar.setSwitchBarText(switchBarText, switchBarText);
}
private void initPreferences() {
diff --git a/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java b/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java
index 314a577..a4b1878 100644
--- a/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java
@@ -58,10 +58,10 @@
SettingsActivity activity = (SettingsActivity) getActivity();
mSwitchBar = activity.getSwitchBar();
- updateSwitchBarText(mSwitchBar);
mToggleSwitch = mSwitchBar.getSwitch();
onProcessArguments(getArguments());
+ updateSwitchBarText(mSwitchBar);
// Show the "Settings" menu as if it were a preference screen
if (mSettingsTitle != null && mSettingsIntent != null) {
diff --git a/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java b/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java
index ec3ebcc..842ec5c 100644
--- a/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java
@@ -50,6 +50,7 @@
ToggleFeaturePreferenceFragment implements SwitchBar.OnSwitchChangeListener {
private static final int DIALOG_ID_GESTURE_NAVIGATION_TUTORIAL = 1;
+ private static final int DIALOG_ID_ACCESSIBILITY_BUTTON_TUTORIAL = 2;
private Dialog mDialog;
@@ -172,14 +173,17 @@
@Override
public Dialog onCreateDialog(int dialogId) {
- if (dialogId == DIALOG_ID_GESTURE_NAVIGATION_TUTORIAL) {
- if (isGestureNavigateEnabled()) {
+ switch (dialogId) {
+ case DIALOG_ID_GESTURE_NAVIGATION_TUTORIAL:
mDialog = AccessibilityGestureNavigationTutorial
.showGestureNavigationTutorialDialog(getActivity());
- } else {
+ break;
+ case DIALOG_ID_ACCESSIBILITY_BUTTON_TUTORIAL:
mDialog = AccessibilityGestureNavigationTutorial
.showAccessibilityButtonTutorialDialog(getActivity());
- }
+ break;
+ default:
+ throw new IllegalArgumentException();
}
return mDialog;
@@ -193,7 +197,14 @@
@Override
public int getDialogMetricsCategory(int dialogId) {
- return SettingsEnums.ACCESSIBILITY_TOGGLE_SCREEN_MAGNIFICATION;
+ switch (dialogId) {
+ case DIALOG_ID_GESTURE_NAVIGATION_TUTORIAL:
+ return SettingsEnums.DIALOG_TOGGLE_SCREEN_MAGNIFICATION_GESTURE_NAVIGATION;
+ case DIALOG_ID_ACCESSIBILITY_BUTTON_TUTORIAL:
+ return SettingsEnums.DIALOG_TOGGLE_SCREEN_MAGNIFICATION_ACCESSIBILITY_BUTTON;
+ default:
+ return 0;
+ }
}
@Override
@@ -206,7 +217,8 @@
if (enabled && TextUtils.equals(
Settings.Secure.ACCESSIBILITY_DISPLAY_MAGNIFICATION_NAVBAR_ENABLED,
preferenceKey)) {
- showDialog(DIALOG_ID_GESTURE_NAVIGATION_TUTORIAL);
+ showDialog(isGestureNavigateEnabled() ? DIALOG_ID_GESTURE_NAVIGATION_TUTORIAL
+ : DIALOG_ID_ACCESSIBILITY_BUTTON_TUTORIAL);
}
MagnificationPreferenceFragment.setChecked(getContentResolver(), preferenceKey, enabled);
updateConfigurationWarningIfNeeded();
@@ -228,6 +240,13 @@
}
@Override
+ protected void updateSwitchBarText(SwitchBar switchBar) {
+ final String switchBarText = getString(R.string.accessibility_service_master_switch_title,
+ getString(R.string.accessibility_screen_magnification_title));
+ switchBar.setSwitchBarText(switchBarText, switchBarText);
+ }
+
+ @Override
protected void onProcessArguments(Bundle arguments) {
super.onProcessArguments(arguments);
if (arguments == null) {
diff --git a/src/com/android/settings/connecteddevice/AvailableMediaDeviceGroupController.java b/src/com/android/settings/connecteddevice/AvailableMediaDeviceGroupController.java
index cac46b0..d895154 100644
--- a/src/com/android/settings/connecteddevice/AvailableMediaDeviceGroupController.java
+++ b/src/com/android/settings/connecteddevice/AvailableMediaDeviceGroupController.java
@@ -141,11 +141,11 @@
if (isAudioModeOngoingCall(mContext)) {
// in phone call
mPreferenceGroup.
- setTitle(mContext.getString(R.string.connected_device_available_call_title));
+ setTitle(mContext.getString(R.string.connected_device_call_device_title));
} else {
// without phone call
mPreferenceGroup.
- setTitle(mContext.getString(R.string.connected_device_available_media_title));
+ setTitle(mContext.getString(R.string.connected_device_media_device_title));
}
}
}
diff --git a/src/com/android/settings/widget/SwitchBar.java b/src/com/android/settings/widget/SwitchBar.java
index 0dd59e6..de0d98b 100644
--- a/src/com/android/settings/widget/SwitchBar.java
+++ b/src/com/android/settings/widget/SwitchBar.java
@@ -77,14 +77,12 @@
private TextView mTextView;
private String mLabel;
private String mSummary;
+ private String mOnText;
+ private String mOffText;
@ColorInt
private int mBackgroundColor;
@ColorInt
private int mBackgroundActivatedColor;
- @StringRes
- private int mOnTextId;
- @StringRes
- private int mOffTextId;
private boolean mLoggingIntialized;
private boolean mDisabledByAdmin;
@@ -178,14 +176,20 @@
}
public void setTextViewLabelAndBackground(boolean isChecked) {
- mLabel = getResources().getString(isChecked ? mOnTextId : mOffTextId);
+ mLabel = isChecked ? mOnText : mOffText;
setBackgroundColor(isChecked ? mBackgroundActivatedColor : mBackgroundColor);
updateText();
}
- public void setSwitchBarText(int onText, int offText) {
- mOnTextId = onText;
- mOffTextId = offText;
+ public void setSwitchBarText(int onTextId, int offTextId) {
+ mOnText = getResources().getString(onTextId);
+ mOffText = getResources().getString(offTextId);
+ setTextViewLabelAndBackground(isChecked());
+ }
+
+ public void setSwitchBarText(String onText, String offText) {
+ mOnText = onText;
+ mOffText = offText;
setTextViewLabelAndBackground(isChecked());
}
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/AvailableMediaDeviceGroupControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/AvailableMediaDeviceGroupControllerTest.java
index c4b5901..ad630ff 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/AvailableMediaDeviceGroupControllerTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/AvailableMediaDeviceGroupControllerTest.java
@@ -193,7 +193,7 @@
mAvailableMediaDeviceGroupController.onAudioModeChanged();
assertThat(mPreferenceGroup.getTitle()).isEqualTo(
- mContext.getText(R.string.connected_device_available_call_title));
+ mContext.getText(R.string.connected_device_call_device_title));
}
@Test
@@ -202,7 +202,7 @@
mAvailableMediaDeviceGroupController.onAudioModeChanged();
assertThat(mPreferenceGroup.getTitle()).isEqualTo(
- mContext.getText(R.string.connected_device_available_media_title));
+ mContext.getText(R.string.connected_device_media_device_title));
}
@Test
diff --git a/tests/robotests/src/com/android/settings/widget/SwitchBarTest.java b/tests/robotests/src/com/android/settings/widget/SwitchBarTest.java
index f186222..31cb966 100644
--- a/tests/robotests/src/com/android/settings/widget/SwitchBarTest.java
+++ b/tests/robotests/src/com/android/settings/widget/SwitchBarTest.java
@@ -85,6 +85,24 @@
}
@Test
+ public void setCheck_customLabelWithStringType_shouldUpdateTextAndBackground() {
+ final String onText = mContext.getString(
+ R.string.accessibility_service_master_switch_title);
+ final String offText = mContext.getString(
+ R.string.accessibility_service_master_switch_title);
+ final TextView switchBarTextView = ((TextView) mBar.findViewById(R.id.switch_text));
+
+ mBar.setSwitchBarText(onText, offText);
+
+ assertThat(switchBarTextView.getText()).isEqualTo(offText);
+
+ mBar.setChecked(true);
+
+ assertThat(mBar.getBackground()).isInstanceOf(ColorDrawable.class);
+ assertThat(switchBarTextView.getText()).isEqualTo(onText);
+ }
+
+ @Test
public void disabledByAdmin_shouldDelegateToRestrictedIcon() {
mBar.setDisabledByAdmin(new EnforcedAdmin());
assertThat(mBar.getDelegatingView().getId()).isEqualTo(R.id.restricted_icon);