Loading res/values/strings.xml +4 −9 Original line number Diff line number Diff line Loading @@ -3868,6 +3868,10 @@ <string name="accessibility_toggle_speak_password_preference_title">Speak passwords</string> <!-- Title for the accessibility preference for enabling/disabling large icons for mouse/trackpad pointers. [CHAR LIMIT=35] --> <string name="accessibility_toggle_large_pointer_icon_title">Large mouse pointer</string> <!-- Title for the accessibility preference for master mono. [CHAR LIMIT=35] --> <string name="accessibility_toggle_master_mono_title">Mono audio</string> <!-- Summary for the accessibility preference for master mono. [CHAR LIMIT=50] --> <string name="accessibility_toggle_master_mono_summary">Combine channels when playing audio</string> <!-- 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">Tap & hold delay</string> <!-- Title for the accessibility preference to configure display color inversion. [CHAR LIMIT=NONE] --> Loading Loading @@ -5823,15 +5827,6 @@ <!-- Sound: Title for the option managing whether or not to vibrate when ringing. [CHAR LIMIT=30] --> <string name="vibrate_when_ringing_title">Also vibrate for calls</string> <!-- Sound: Title for the option managing mono audio output. [CHAR LIMIT=30] --> <string name="master_mono_title">Mono playback</string> <!-- Sound: Mono audio: Summary for mono audio output when enabled. [CHAR LIMIT=40] --> <string name="master_mono_on">Always play back audio in mono</string> <!-- Sound: Mono audio: Summary for mono audio output when disabled. [CHAR LIMIT=40] --> <string name="master_mono_off">Always play back audio in mono</string> <!-- Sound: Title for the other sounds option and associated settings page. [CHAR LIMIT=30] --> <string name="other_sound_settings">Other sounds</string> Loading res/xml/accessibility_settings.xml +6 −0 Original line number Diff line number Diff line Loading @@ -76,6 +76,12 @@ android:key="toggle_large_pointer_icon" android:title="@string/accessibility_toggle_large_pointer_icon_title" /> <SwitchPreference android:key="toggle_master_mono" android:title="@string/accessibility_toggle_master_mono_title" android:summary="@string/accessibility_toggle_master_mono_summary" android:persistent="false"/> <PreferenceScreen android:fragment="com.android.settings.accessibility.ToggleGlobalGesturePreferenceFragment" android:key="enable_global_gesture_preference_screen" Loading res/xml/sound_settings.xml +0 −6 Original line number Diff line number Diff line Loading @@ -49,12 +49,6 @@ android:key="vibrate_when_ringing" android:title="@string/vibrate_when_ringing_title" /> <!-- Master mono --> <SwitchPreference android:key="master_mono" android:title="@string/master_mono_title" android:summaryOn="@string/master_mono_on" android:summaryOff="@string/master_mono_off" /> <!-- Interruptions --> <com.android.settingslib.RestrictedPreference Loading src/com/android/settings/accessibility/AccessibilitySettings.java +25 −0 Original line number Diff line number Diff line Loading @@ -86,6 +86,8 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements "toggle_speak_password_preference"; private static final String TOGGLE_LARGE_POINTER_ICON = "toggle_large_pointer_icon"; private static final String TOGGLE_MASTER_MONO = "toggle_master_mono"; private static final String SELECT_LONG_PRESS_TIMEOUT_PREFERENCE = "select_long_press_timeout_preference"; private static final String ENABLE_ACCESSIBILITY_GESTURE_PREFERENCE_SCREEN = Loading Loading @@ -182,6 +184,7 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements private SwitchPreference mToggleLockScreenRotationPreference; private SwitchPreference mToggleSpeakPasswordPreference; private SwitchPreference mToggleLargePointerIconPreference; private SwitchPreference mToggleMasterMonoPreference; private ListPreference mSelectLongPressTimeoutPreference; private Preference mNoServicesMessagePreference; private PreferenceScreen mCaptioningPreferenceScreen; Loading Loading @@ -280,6 +283,9 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements } else if (mToggleLargePointerIconPreference == preference) { handleToggleLargePointerIconPreferenceClick(); return true; } else if (mToggleMasterMonoPreference == preference) { handleToggleMasterMonoPreferenceClick(); return true; } else if (mGlobalGesturePreferenceScreen == preference) { handleToggleEnableAccessibilityGesturePreferenceClick(); return true; Loading Loading @@ -321,6 +327,11 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements mToggleLargePointerIconPreference.isChecked() ? 1 : 0); } private void handleToggleMasterMonoPreferenceClick() { Settings.System.putIntForUser(getContentResolver(), Settings.System.MASTER_MONO, mToggleMasterMonoPreference.isChecked() ? 1 : 0, UserHandle.USER_CURRENT); } private void handleToggleEnableAccessibilityGesturePreferenceClick() { Bundle extras = mGlobalGesturePreferenceScreen.getExtras(); extras.putString(EXTRA_TITLE, getString( Loading Loading @@ -378,6 +389,10 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements mToggleLargePointerIconPreference = (SwitchPreference) findPreference(TOGGLE_LARGE_POINTER_ICON); // Master Mono mToggleMasterMonoPreference = (SwitchPreference) findPreference(TOGGLE_MASTER_MONO); // Long press timeout. mSelectLongPressTimeoutPreference = (ListPreference) findPreference(SELECT_LONG_PRESS_TIMEOUT_PREFERENCE); Loading Loading @@ -571,6 +586,9 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements mToggleLargePointerIconPreference.setChecked(Settings.Secure.getInt(getContentResolver(), Settings.Secure.ACCESSIBILITY_LARGE_POINTER_ICON, 0) != 0); // Master mono updateMasterMono(); // Long press timeout. final int longPressTimeout = Settings.Secure.getInt(getContentResolver(), Settings.Secure.LONG_PRESS_TIMEOUT, mLongPressTimeoutDefault); Loading Loading @@ -640,6 +658,13 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements } } private void updateMasterMono() { final boolean masterMono = Settings.System.getIntForUser( getContentResolver(), Settings.System.MASTER_MONO, 0 /* default */, UserHandle.USER_CURRENT) == 1; mToggleMasterMonoPreference.setChecked(masterMono); } public static final SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER = new BaseSearchIndexProvider() { @Override Loading src/com/android/settings/notification/SoundSettings.java +1 −38 Original line number Diff line number Diff line Loading @@ -80,7 +80,6 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab private static final String KEY_NOTIFICATION_RINGTONE = "notification_ringtone"; private static final String KEY_ALARM_RINGTONE = "alarm_ringtone"; private static final String KEY_VIBRATE_WHEN_RINGING = "vibrate_when_ringing"; private static final String KEY_MASTER_MONO = "master_mono"; private static final String KEY_WIFI_DISPLAY = "wifi_display"; private static final String KEY_ZEN_MODE = "zen_mode"; private static final String KEY_CELL_BROADCAST_SETTINGS = "cell_broadcast_settings"; Loading Loading @@ -111,7 +110,6 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab private Preference mNotificationRingtonePreference; private Preference mAlarmRingtonePreference; private TwoStatePreference mVibrateWhenRinging; private TwoStatePreference mMasterMono; private ComponentName mSuppressor; private int mRingerMode = -1; Loading Loading @@ -176,7 +174,6 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab } initRingtones(); initVibrateWhenRinging(); initMasterMono(); updateRingerMode(); updateEffectsSuppressor(); } Loading Loading @@ -451,33 +448,6 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab Settings.System.VIBRATE_WHEN_RINGING, 0) != 0); } // === Master mono === private void initMasterMono() { mMasterMono = (TwoStatePreference) getPreferenceScreen().findPreference(KEY_MASTER_MONO); if (mMasterMono == null) { Log.i(TAG, "Preference not found: " + KEY_MASTER_MONO); return; } mMasterMono.setPersistent(false); updateMasterMono(); mMasterMono.setOnPreferenceChangeListener(new OnPreferenceChangeListener() { @Override public boolean onPreferenceChange(Preference preference, Object newValue) { final boolean val = (Boolean) newValue; mAudioManager.setMasterMono(val); return true; } }); } private void updateMasterMono() { if (mMasterMono == null) return; mMasterMono.setChecked(mAudioManager.isMasterMono()); } // === Callbacks === private final class SettingsObserver extends ContentObserver { Loading Loading @@ -512,8 +482,7 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab private static final int STOP_SAMPLE = 3; private static final int UPDATE_EFFECTS_SUPPRESSOR = 4; private static final int UPDATE_RINGER_MODE = 5; private static final int UPDATE_MASTER_MONO = 6; private static final int UPDATE_ALARM_RINGTONE = 7; private static final int UPDATE_ALARM_RINGTONE = 6; private H() { super(Looper.getMainLooper()); Loading @@ -537,9 +506,6 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab case UPDATE_RINGER_MODE: updateRingerMode(); break; case UPDATE_MASTER_MONO: updateMasterMono(); break; case UPDATE_ALARM_RINGTONE: mAlarmRingtonePreference.setSummary((CharSequence) msg.obj); break; Loading @@ -556,7 +522,6 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab final IntentFilter filter = new IntentFilter(); filter.addAction(NotificationManager.ACTION_EFFECTS_SUPPRESSOR_CHANGED); filter.addAction(AudioManager.INTERNAL_RINGER_MODE_CHANGED_ACTION); filter.addAction(AudioManager.MASTER_MONO_CHANGED_ACTION); mContext.registerReceiver(this, filter); } else { mContext.unregisterReceiver(this); Loading @@ -571,8 +536,6 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab mHandler.sendEmptyMessage(H.UPDATE_EFFECTS_SUPPRESSOR); } else if (AudioManager.INTERNAL_RINGER_MODE_CHANGED_ACTION.equals(action)) { mHandler.sendEmptyMessage(H.UPDATE_RINGER_MODE); } else if (AudioManager.MASTER_MONO_CHANGED_ACTION.equals(action)) { mHandler.sendEmptyMessage(H.UPDATE_MASTER_MONO); } } } Loading Loading
res/values/strings.xml +4 −9 Original line number Diff line number Diff line Loading @@ -3868,6 +3868,10 @@ <string name="accessibility_toggle_speak_password_preference_title">Speak passwords</string> <!-- Title for the accessibility preference for enabling/disabling large icons for mouse/trackpad pointers. [CHAR LIMIT=35] --> <string name="accessibility_toggle_large_pointer_icon_title">Large mouse pointer</string> <!-- Title for the accessibility preference for master mono. [CHAR LIMIT=35] --> <string name="accessibility_toggle_master_mono_title">Mono audio</string> <!-- Summary for the accessibility preference for master mono. [CHAR LIMIT=50] --> <string name="accessibility_toggle_master_mono_summary">Combine channels when playing audio</string> <!-- 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">Tap & hold delay</string> <!-- Title for the accessibility preference to configure display color inversion. [CHAR LIMIT=NONE] --> Loading Loading @@ -5823,15 +5827,6 @@ <!-- Sound: Title for the option managing whether or not to vibrate when ringing. [CHAR LIMIT=30] --> <string name="vibrate_when_ringing_title">Also vibrate for calls</string> <!-- Sound: Title for the option managing mono audio output. [CHAR LIMIT=30] --> <string name="master_mono_title">Mono playback</string> <!-- Sound: Mono audio: Summary for mono audio output when enabled. [CHAR LIMIT=40] --> <string name="master_mono_on">Always play back audio in mono</string> <!-- Sound: Mono audio: Summary for mono audio output when disabled. [CHAR LIMIT=40] --> <string name="master_mono_off">Always play back audio in mono</string> <!-- Sound: Title for the other sounds option and associated settings page. [CHAR LIMIT=30] --> <string name="other_sound_settings">Other sounds</string> Loading
res/xml/accessibility_settings.xml +6 −0 Original line number Diff line number Diff line Loading @@ -76,6 +76,12 @@ android:key="toggle_large_pointer_icon" android:title="@string/accessibility_toggle_large_pointer_icon_title" /> <SwitchPreference android:key="toggle_master_mono" android:title="@string/accessibility_toggle_master_mono_title" android:summary="@string/accessibility_toggle_master_mono_summary" android:persistent="false"/> <PreferenceScreen android:fragment="com.android.settings.accessibility.ToggleGlobalGesturePreferenceFragment" android:key="enable_global_gesture_preference_screen" Loading
res/xml/sound_settings.xml +0 −6 Original line number Diff line number Diff line Loading @@ -49,12 +49,6 @@ android:key="vibrate_when_ringing" android:title="@string/vibrate_when_ringing_title" /> <!-- Master mono --> <SwitchPreference android:key="master_mono" android:title="@string/master_mono_title" android:summaryOn="@string/master_mono_on" android:summaryOff="@string/master_mono_off" /> <!-- Interruptions --> <com.android.settingslib.RestrictedPreference Loading
src/com/android/settings/accessibility/AccessibilitySettings.java +25 −0 Original line number Diff line number Diff line Loading @@ -86,6 +86,8 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements "toggle_speak_password_preference"; private static final String TOGGLE_LARGE_POINTER_ICON = "toggle_large_pointer_icon"; private static final String TOGGLE_MASTER_MONO = "toggle_master_mono"; private static final String SELECT_LONG_PRESS_TIMEOUT_PREFERENCE = "select_long_press_timeout_preference"; private static final String ENABLE_ACCESSIBILITY_GESTURE_PREFERENCE_SCREEN = Loading Loading @@ -182,6 +184,7 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements private SwitchPreference mToggleLockScreenRotationPreference; private SwitchPreference mToggleSpeakPasswordPreference; private SwitchPreference mToggleLargePointerIconPreference; private SwitchPreference mToggleMasterMonoPreference; private ListPreference mSelectLongPressTimeoutPreference; private Preference mNoServicesMessagePreference; private PreferenceScreen mCaptioningPreferenceScreen; Loading Loading @@ -280,6 +283,9 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements } else if (mToggleLargePointerIconPreference == preference) { handleToggleLargePointerIconPreferenceClick(); return true; } else if (mToggleMasterMonoPreference == preference) { handleToggleMasterMonoPreferenceClick(); return true; } else if (mGlobalGesturePreferenceScreen == preference) { handleToggleEnableAccessibilityGesturePreferenceClick(); return true; Loading Loading @@ -321,6 +327,11 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements mToggleLargePointerIconPreference.isChecked() ? 1 : 0); } private void handleToggleMasterMonoPreferenceClick() { Settings.System.putIntForUser(getContentResolver(), Settings.System.MASTER_MONO, mToggleMasterMonoPreference.isChecked() ? 1 : 0, UserHandle.USER_CURRENT); } private void handleToggleEnableAccessibilityGesturePreferenceClick() { Bundle extras = mGlobalGesturePreferenceScreen.getExtras(); extras.putString(EXTRA_TITLE, getString( Loading Loading @@ -378,6 +389,10 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements mToggleLargePointerIconPreference = (SwitchPreference) findPreference(TOGGLE_LARGE_POINTER_ICON); // Master Mono mToggleMasterMonoPreference = (SwitchPreference) findPreference(TOGGLE_MASTER_MONO); // Long press timeout. mSelectLongPressTimeoutPreference = (ListPreference) findPreference(SELECT_LONG_PRESS_TIMEOUT_PREFERENCE); Loading Loading @@ -571,6 +586,9 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements mToggleLargePointerIconPreference.setChecked(Settings.Secure.getInt(getContentResolver(), Settings.Secure.ACCESSIBILITY_LARGE_POINTER_ICON, 0) != 0); // Master mono updateMasterMono(); // Long press timeout. final int longPressTimeout = Settings.Secure.getInt(getContentResolver(), Settings.Secure.LONG_PRESS_TIMEOUT, mLongPressTimeoutDefault); Loading Loading @@ -640,6 +658,13 @@ public class AccessibilitySettings extends SettingsPreferenceFragment implements } } private void updateMasterMono() { final boolean masterMono = Settings.System.getIntForUser( getContentResolver(), Settings.System.MASTER_MONO, 0 /* default */, UserHandle.USER_CURRENT) == 1; mToggleMasterMonoPreference.setChecked(masterMono); } public static final SearchIndexProvider SEARCH_INDEX_DATA_PROVIDER = new BaseSearchIndexProvider() { @Override Loading
src/com/android/settings/notification/SoundSettings.java +1 −38 Original line number Diff line number Diff line Loading @@ -80,7 +80,6 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab private static final String KEY_NOTIFICATION_RINGTONE = "notification_ringtone"; private static final String KEY_ALARM_RINGTONE = "alarm_ringtone"; private static final String KEY_VIBRATE_WHEN_RINGING = "vibrate_when_ringing"; private static final String KEY_MASTER_MONO = "master_mono"; private static final String KEY_WIFI_DISPLAY = "wifi_display"; private static final String KEY_ZEN_MODE = "zen_mode"; private static final String KEY_CELL_BROADCAST_SETTINGS = "cell_broadcast_settings"; Loading Loading @@ -111,7 +110,6 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab private Preference mNotificationRingtonePreference; private Preference mAlarmRingtonePreference; private TwoStatePreference mVibrateWhenRinging; private TwoStatePreference mMasterMono; private ComponentName mSuppressor; private int mRingerMode = -1; Loading Loading @@ -176,7 +174,6 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab } initRingtones(); initVibrateWhenRinging(); initMasterMono(); updateRingerMode(); updateEffectsSuppressor(); } Loading Loading @@ -451,33 +448,6 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab Settings.System.VIBRATE_WHEN_RINGING, 0) != 0); } // === Master mono === private void initMasterMono() { mMasterMono = (TwoStatePreference) getPreferenceScreen().findPreference(KEY_MASTER_MONO); if (mMasterMono == null) { Log.i(TAG, "Preference not found: " + KEY_MASTER_MONO); return; } mMasterMono.setPersistent(false); updateMasterMono(); mMasterMono.setOnPreferenceChangeListener(new OnPreferenceChangeListener() { @Override public boolean onPreferenceChange(Preference preference, Object newValue) { final boolean val = (Boolean) newValue; mAudioManager.setMasterMono(val); return true; } }); } private void updateMasterMono() { if (mMasterMono == null) return; mMasterMono.setChecked(mAudioManager.isMasterMono()); } // === Callbacks === private final class SettingsObserver extends ContentObserver { Loading Loading @@ -512,8 +482,7 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab private static final int STOP_SAMPLE = 3; private static final int UPDATE_EFFECTS_SUPPRESSOR = 4; private static final int UPDATE_RINGER_MODE = 5; private static final int UPDATE_MASTER_MONO = 6; private static final int UPDATE_ALARM_RINGTONE = 7; private static final int UPDATE_ALARM_RINGTONE = 6; private H() { super(Looper.getMainLooper()); Loading @@ -537,9 +506,6 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab case UPDATE_RINGER_MODE: updateRingerMode(); break; case UPDATE_MASTER_MONO: updateMasterMono(); break; case UPDATE_ALARM_RINGTONE: mAlarmRingtonePreference.setSummary((CharSequence) msg.obj); break; Loading @@ -556,7 +522,6 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab final IntentFilter filter = new IntentFilter(); filter.addAction(NotificationManager.ACTION_EFFECTS_SUPPRESSOR_CHANGED); filter.addAction(AudioManager.INTERNAL_RINGER_MODE_CHANGED_ACTION); filter.addAction(AudioManager.MASTER_MONO_CHANGED_ACTION); mContext.registerReceiver(this, filter); } else { mContext.unregisterReceiver(this); Loading @@ -571,8 +536,6 @@ public class SoundSettings extends SettingsPreferenceFragment implements Indexab mHandler.sendEmptyMessage(H.UPDATE_EFFECTS_SUPPRESSOR); } else if (AudioManager.INTERNAL_RINGER_MODE_CHANGED_ACTION.equals(action)) { mHandler.sendEmptyMessage(H.UPDATE_RINGER_MODE); } else if (AudioManager.MASTER_MONO_CHANGED_ACTION.equals(action)) { mHandler.sendEmptyMessage(H.UPDATE_MASTER_MONO); } } } Loading