Color correction improvement (2/n)

Implement RadioButtonPreference and its controller to replace ListPreference
New strings for accessibility daltonizer service
- radio button title and summary

Bug: 145968068
Test: make RunSettingsRoboTests ROBOTEST_FILTER=DaltonizerPreferenceControllerTest
Change-Id: Ic91d8648906f35991682a259879095cbbd4cc678
This commit is contained in:
menghanli
2019-12-10 19:55:13 +08:00
committed by Menghan Li
parent 65c7da6e5c
commit 0eae582909
7 changed files with 358 additions and 143 deletions

View File

@@ -18,19 +18,32 @@
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:settings="http://schemas.android.com/apk/res-auto"
android:key="daltonizer_preference_screen"
android:persistent="false"
android:title="@string/accessibility_display_daltonizer_preference_title">
<ListPreference
android:entries="@array/daltonizer_type_entries"
android:entryValues="@array/daltonizer_type_values"
android:key="type"
android:summary="%s"
android:title="@string/daltonizer_type"
android:icon="@drawable/ic_accessibility_illustration_colorblind" />
<com.android.settingslib.widget.RadioButtonPreference
android:key="daltonizer_mode_deuteranomaly"
android:persistent="false"
android:summary="@string/daltonizer_mode_deuteranomaly_summary"
android:title="@string/daltonizer_mode_deuteranomaly_title"
settings:allowDividerAbove="true" />
<com.android.settingslib.widget.RadioButtonPreference
android:key="daltonizer_mode_protanomaly"
android:persistent="false"
android:summary="@string/daltonizer_mode_protanomaly_summary"
android:title="@string/daltonizer_mode_protanomaly_title" />
<com.android.settingslib.widget.RadioButtonPreference
android:key="daltonizer_mode_tritanomaly"
android:persistent="false"
android:summary="@string/daltonizer_mode_tritanomaly_summary"
android:title="@string/daltonizer_mode_tritanomaly_title" />
<com.android.settingslib.widget.FooterPreference
android:key="daltonizer_footer"
android:title="@string/accessibility_display_daltonizer_preference_subtitle"
android:persistent="false"
android:selectable="false"
settings:searchable="false"/>
android:title="@string/accessibility_display_daltonizer_preference_subtitle"
settings:searchable="false" />
</PreferenceScreen>

View File

@@ -18,68 +18,78 @@
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:settings="http://schemas.android.com/apk/res-auto"
android:key="accessibility_settings_screen"
android:title="@string/accessibility_settings"
android:persistent="true">
android:persistent="false"
android:title="@string/accessibility_settings">
<Preference
android:key="accessibility_shortcut_preference"
android:title="@string/accessibility_global_gesture_preference_title"
android:fragment="com.android.settings.accessibility.AccessibilityShortcutPreferenceFragment"
android:key="accessibility_shortcut_preference"
android:persistent="false"
android:title="@string/accessibility_global_gesture_preference_title"
settings:controller="com.android.settings.accessibility.AccessibilityShortcutPreferenceController"/>
<PreferenceCategory
android:key="user_installed_services_category"
android:title="@string/user_installed_services_category_title">
</PreferenceCategory>
android:persistent="false"
android:title="@string/user_installed_services_category_title"/>
<PreferenceCategory
android:key="screen_reader_category"
android:persistent="false"
android:title="@string/screen_reader_category_title">
<Preference
android:key="tts_settings_preference"
android:title="@string/tts_settings_title"
android:fragment="com.android.settings.tts.TextToSpeechSettings"
android:key="tts_settings_preference"
android:persistent="false"
android:title="@string/tts_settings_title"
settings:controller="com.android.settings.language.TtsPreferenceController"/>
</PreferenceCategory>
<PreferenceCategory
android:key="display_category"
android:persistent="false"
android:title="@string/display_category_title">
<Preference
android:key="font_size_preference_screen"
android:title="@string/title_font_size"
android:fragment="com.android.settings.display.ToggleFontSizePreferenceFragment"
android:key="font_size_preference_screen"
android:persistent="false"
android:title="@string/title_font_size"
settings:controller="com.android.settings.display.FontSizePreferenceController"
settings:searchable="false"/>
<com.android.settings.display.ScreenZoomPreference
android:key="accessibility_settings_screen_zoom"
<com.android.settings.display.ScreenZoomPreference
android:fragment="com.android.settings.display.ScreenZoomSettings"
android:key="accessibility_settings_screen_zoom"
android:persistent="false"
android:title="@string/screen_zoom_title"
settings:searchable="false"/>
<SwitchPreference
<SwitchPreference
android:key="dark_ui_mode_accessibility"
android:persistent="false"
android:title="@string/dark_ui_mode"
settings:controller="com.android.settings.display.DarkUIPreferenceController"
settings:searchable="false"/>
<Preference
android:key="magnification_preference_screen"
android:title="@string/accessibility_screen_magnification_title"
android:icon="@drawable/ic_accessibility_magnification"
<Preference
android:fragment="com.android.settings.accessibility.MagnificationPreferenceFragment"
android:icon="@drawable/ic_accessibility_magnification"
android:key="magnification_preference_screen"
android:persistent="false"
android:title="@string/accessibility_screen_magnification_title"
settings:controller="com.android.settings.accessibility.MagnificationPreferenceController"/>
<SwitchPreference
android:key="toggle_large_pointer_icon"
android:persistent="false"
android:title="@string/accessibility_toggle_large_pointer_icon_title"
settings:controller="com.android.settings.accessibility.LargePointerIconPreferenceController"/>
<SwitchPreference
android:key="toggle_disable_animations"
android:persistent="false"
android:title="@string/accessibility_disable_animations"
settings:controller="com.android.settings.accessibility.DisableAnimationsPreferenceController"/>
@@ -87,111 +97,124 @@
<PreferenceCategory
android:key="interaction_control_category"
android:persistent="false"
android:title="@string/interaction_control_category_title">
<Preference
android:key="autoclick_preference"
android:title="@string/accessibility_autoclick_preference_title"
android:fragment="com.android.settings.accessibility.ToggleAutoclickPreferenceFragment"
android:key="autoclick_preference"
android:persistent="false"
android:title="@string/accessibility_autoclick_preference_title"
settings:controller="com.android.settings.accessibility.AutoclickPreferenceController"/>
<SwitchPreference
android:key="toggle_power_button_ends_call_preference"
android:title="@string/accessibility_power_button_ends_call_prerefence_title"
android:persistent="false"
android:title="@string/accessibility_power_button_ends_call_prerefence_title"
settings:controller="com.android.settings.accessibility.PowerButtonEndsCallPreferenceController"/>
<SwitchPreference
android:key="toggle_lock_screen_rotation_preference"
android:title="@string/accelerometer_title"
android:persistent="false"
android:title="@string/accelerometer_title"
settings:controller="com.android.settings.accessibility.LockScreenRotationPreferenceController"/>
<ListPreference
android:key="select_long_press_timeout_preference"
android:title="@string/accessibility_long_press_timeout_preference_title"
android:entries="@array/long_press_timeout_selector_titles"
android:entryValues="@array/long_press_timeout_selector_values"
android:key="select_long_press_timeout_preference"
android:persistent="false"
android:title="@string/accessibility_long_press_timeout_preference_title"
settings:controller="com.android.settings.accessibility.SelectLongPressTimeoutPreferenceController"/>
<Preference
android:key="accessibility_control_timeout_preference_fragment"
android:title="@string/accessibility_setting_item_control_timeout_title"
android:persistent="false"
android:fragment="com.android.settings.accessibility.AccessibilityControlTimeoutPreferenceFragment"
android:key="accessibility_control_timeout_preference_fragment"
android:persistent="false"
android:title="@string/accessibility_setting_item_control_timeout_title"
settings:controller="com.android.settings.accessibility.AccessibilityTimeoutPreferenceController"/>
<Preference
android:key="vibration_preference_screen"
android:title="@string/accessibility_vibration_settings_title"
android:fragment="com.android.settings.accessibility.VibrationSettings"
android:key="vibration_preference_screen"
android:persistent="false"
android:title="@string/accessibility_vibration_settings_title"
settings:controller="com.android.settings.accessibility.VibrationPreferenceController"/>
<Preference
android:key="gesture_system_navigation_input_summary_accessibility"
android:title="@string/system_navigation_title"
android:fragment="com.android.settings.gestures.SystemNavigationGestureSettings"
settings:controller="com.android.settings.gestures.SystemNavigationPreferenceController" />
android:key="gesture_system_navigation_input_summary_accessibility"
android:persistent="false"
android:title="@string/system_navigation_title"
settings:controller="com.android.settings.gestures.SystemNavigationPreferenceController"/>
</PreferenceCategory>
<PreferenceCategory
android:key="audio_and_captions_category"
android:persistent="false"
android:title="@string/audio_and_captions_category_title">
<Preference
android:key="live_caption"
android:title="@string/live_caption_title"
android:persistent="false"
android:summary="@string/live_caption_summary"
android:title="@string/live_caption_title"
settings:controller="com.android.settings.accessibility.LiveCaptionPreferenceController"/>
<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"
android:summary="@string/accessibility_toggle_master_mono_summary"
android:title="@string/accessibility_toggle_master_mono_title"
settings:controller="com.android.settings.accessibility.MasterMonoPreferenceController"/>
<com.android.settings.accessibility.BalanceSeekBarPreference
android:key="seekbar_master_balance"
android:persistent="false"
android:title="@string/accessibility_toggle_master_balance_title"/>
<Preference
android:key="hearing_aid_preference"
android:persistent="false"
android:summary="@string/accessibility_hearingaid_not_connected_summary"
android:title="@string/accessibility_hearingaid_title"
settings:controller="com.android.settings.accessibility.AccessibilityHearingAidPreferenceController"/>
<Preference
android:key="captioning_preference_screen"
android:title="@string/accessibility_captioning_title"
android:fragment="com.android.settings.accessibility.CaptionPropertiesFragment"
android:key="captioning_preference_screen"
android:persistent="false"
android:title="@string/accessibility_captioning_title"
settings:controller="com.android.settings.accessibility.CaptioningPreferenceController"/>
</PreferenceCategory>
<PreferenceCategory
android:key="experimental_category"
android:persistent="false"
android:title="@string/experimental_category_title">
<SwitchPreference
android:key="toggle_high_text_contrast_preference"
android:persistent="false"
android:title="@string/accessibility_toggle_high_text_contrast_preference_title"
settings:controller="com.android.settings.accessibility.HighTextContrastPreferenceController"/>
<Preference
android:key="daltonizer_preference"
android:title="@string/accessibility_display_daltonizer_preference_title"
android:icon="@drawable/ic_daltonizer"
android:fragment="com.android.settings.accessibility.ToggleDaltonizerPreferenceFragment"
android:icon="@drawable/ic_daltonizer"
android:key="daltonizer_preference"
android:persistent="false"
android:title="@string/accessibility_display_daltonizer_preference_title"
settings:controller="com.android.settings.accessibility.DaltonizerPreferenceController"/>
<SwitchPreference
android:key="toggle_inversion_preference"
android:title="@string/accessibility_display_inversion_preference_title"
android:summary="@string/accessibility_display_inversion_preference_subtitle"
android:persistent="false"
android:icon="@drawable/ic_color_inversion"
android:key="toggle_inversion_preference"
android:persistent="false"
android:summary="@string/accessibility_display_inversion_preference_subtitle"
android:title="@string/accessibility_display_inversion_preference_title"
settings:controller="com.android.settings.accessibility.ColorInversionPreferenceController"/>
</PreferenceCategory>
</PreferenceScreen>