Commit Graph

1610 Commits

Author SHA1 Message Date
Daniel Norman
29641287d8 Merge "Hides the Edit Shortcut top preference when empty." into main 2024-10-18 17:29:37 +00:00
Daniel Norman
4c3473134c Hides the Edit Shortcut top preference when empty.
This fixes an issue where this page was presenting an inaccurate
preference list count to TalkBack because it was including this empty
preference.

(Uses the same flag as other fixes for this same bug, even though the
flag name doesn't make sense here.)

Test: atest EditShortcutsPreferenceFragmentTest
Test: Confirm preference invisible when editing a single feature,
      opened from the Settings app
Test: Confirm preference invisible when editing a single feature,
      opened from the FAB Drag-to-Edit
Test: Confirm preference still visible when editing multiple features,
      opened from the FAB Drag-to-Edit
Test: Confirm TalkBack announces correct item counts in both cases,
      including when editing Magnification which has an "advanced"
      preference that gets replaced with the triple-tap shortcut.
Bug: 318607873
Flag: com.android.settings.accessibility.toggle_feature_fragment_collection_info
Change-Id: I2e1eb7f66022c1a47d1f96a914294fd8da25549c
2024-10-18 00:18:54 +00:00
Piotr Wilczyński
ddef40edd0 Merge "Set the same density to all displays" into main 2024-10-17 15:17:59 +00:00
Treehugger Robot
421bd753c4 Merge "Migrate Text Reading" into main 2024-10-17 00:49:14 +00:00
Sunny Shao
3d2f06fd7b Migrate Text Reading
Add the skeleton of the Text Reading

Test: atest TextReadingScreenTest
Bug: 372776688
Flag: com.android.settings.flags.catalyst_text_reading_screen
Change-Id: Ic5afa8da5ee7ea02d9ce9479c14d2c71e751dee4
2024-10-16 21:16:39 +08:00
Piotr Wilczyński
2f9f582310 Set the same density to all displays
Bug: 324439718
Test: manual
Test: atest DisplaySizeDataTest
Test: atest ScreenResolutionFragmentTest
Flag: EXEMPT bugfix
Change-Id: Ibe8b15be8968545c701a872103c1c20fa698228f
2024-10-16 12:50:57 +00:00
Mill Chen
b923194def [Catalyst] Vibration and haptics screen migration
- Add a flag for vibration and haptics migration
- Add skeleton of vibration and haptics

Bug: 368360218
Test: atest VibrationIntensityScreenTest
Flag: com.android.settings.flags.catalyst_vibration_intensity_screen
Change-Id: I0117f570fe9bf92e61974984d00c0bd5be684fff
2024-10-15 04:44:09 +00:00
Candice
2e914a311f Make Extra Dim main toggle and shortcut searchable
Since the Extra Dim main toggle and shortcut preferences are created in
codes, we override `getRawDataToIndex` to return the corresponding index raw data.

Bug: 354778552
Test: atest ToggleReduceBrightColorsPreferenceTest
Test: Manually check the preferences are searchable in Settings search
Flag: com.android.settings.accessibility.fix_a11y_settings_search
Change-Id: I1642e96273cd16f35b23350af0ede3b1247ef067
2024-10-11 16:54:53 +00:00
Riley Jones
a75ba56192 Merge "Provides an ordered array of shortcut types so Settings presents shortcuts in the desired order" into main 2024-10-10 23:00:13 +00:00
Treehugger Robot
4bcad87e0d Merge "Pass the actual quantity/count to the MessageFormat and let it decide" into main 2024-10-10 22:43:31 +00:00
Riley Jones
ea06748ee2 Provides an ordered array of shortcut types so Settings presents shortcuts in the desired order
NO_IFTTT=corrects ui order
Flag: android.provider.a11y_standalone_gesture_enabled
Test: atest AccessibilityUtilTest
Bug: 371463731

Change-Id: Ia1864076faa281cf57c469a2d0d34f859858d859
2024-10-10 20:12:04 +00:00
Chun-Ku Lin
0a6d37b871 Pass the actual quantity/count to the MessageFormat and let it decide
Bug: 185400417
Test: manual (the autoclick location has changed to Settings > System >
Trackpad & mouse > Pointer & touch accessibility > Autoclick)
Flag: EXEMPT low risk localization fix

Change-Id: Iee63b87513550a6758db9dce376e88a12a51d9f8
2024-10-10 01:03:44 +00:00
chenjean
0ac1ba5920 Makes Use Color correction and Color correction shortcut searchable.
Fix: 354079305
Flag: com.android.settings.accessibility.fix_a11y_settings_search
Test: atest ToggleDaltonizerPreferenceFragmentTest
Test: adb shell pm clear com.google.android.settings.intelligence;
      search Settings for 'use color correction' & 'color correction shortcut', observe 'use color correction' & 'color correction shortcut' present;
Change-Id: I0fd1885c1e82ac14290dfe40636e652a624e003a
2024-10-09 14:17:06 +08:00
Jean Chen
685f66695f Merge changes Iad13fbe1,I6eed7598 into main
* changes:
  Makes Use Color inversion searchable.
  Create a method to allow child classes to define it's main switch toggle's pref key
2024-10-09 03:25:55 +00:00
chenjean
806b91414d Makes Use Color inversion searchable.
Fix: 354773587
Flag: com.android.settings.accessibility.fix_a11y_settings_search
Test: atest ToggleColorInversionPreferenceFragmentTest
Test: adb shell pm clear com.google.android.settings.intelligence;
      search Settings for 'use color inversion', observe 'use color inversion' present;
Change-Id: Iad13fbe163002af6e84a79fdeafb8517d53e2b09
2024-10-09 07:45:11 +08:00
Daniel Norman
3079b2d108 Makes Settings > Accessibility > Magnification prefs searchable.
All preferences are searchable except for "Keep on while switching apps"
which is only searchable if the user already has a magnification
shortcut enabled, to minimize user confusion from that generically-named
preference.

NO_IFTTT=adding IFTTT

Fix: 353772926
Test: atest ToggleScreenMagnificationPreferenceFragmentTest
Flag: com.android.settings.accessibility.fix_a11y_settings_search
Test: adb shell pm clear com.google.android.settings.intelligence;
      search Settings for the items in the bug
Change-Id: I01c7e5586ec0ea432cb2df80f156141683b97522
2024-10-08 23:42:18 +00:00
chenjean
012ba80c50 Create a method to allow child classes to define it's main switch toggle's pref key
We'd like to make the main switch toggle's preference searchable. Since we construct the preference programmatically, this would allow the preference to be automatically scrolled to when the user is brought to this page from a search result.

Bug: 372171003
Flag: EXEMPT refactor
Test: manual
Test: atest ToggleColorInversionPreferenceFragmentTest
      atest ToggleDaltonizerPreferenceFragmentTest
      atest ToggleFeaturePreferenceFragmentTest
Change-Id: I6eed7598ad296a758573318cf4bde5de30c7005c
2024-10-08 18:08:17 +08:00
Chun-Ku Lin
b3ebc1968d Merge "[Physical Keyboard][Setting] New pk a11y entry under a11y page" into main 2024-10-04 17:40:21 +00:00
shaoweishen
f0b6123acc [Physical Keyboard][Setting] New pk a11y entry under a11y page
Add entry for physical keyboard a11y page under a11y setting

Bug: 345399212
Test: atest SettingsRoboTests
Flag: com.android.settings.keyboard.keyboard_and_touchpad_a11y_new_page_enabled
Change-Id: I0c59c3a9df1b5df5e22349ab3907f767682d6fb9
2024-10-04 09:06:10 +00:00
Riley Jones
3d4b0c5440 Refactoring A11y shortcut functions in Settings to use GESTURE
Properly integrating GESTURE into Settings, so that text pertaining to the gesture shortcut are displayed when appropriate.
Heavy refactoring has been done to allow for easier cleanup and expansion

Demo video: https://x20web.corp.google.com/users/jo/jonesriley/splitShortcut/a11ySettingsGestureCompat.mp4

NO_IFTTT=changes do not alter the order of the shortcuts.

Bug: 365570709
Test: atest com.android.settings.accessibility
Flag: android.provider.a11y_standalone_gesture_enabled
Change-Id: If90719763a48e3b8bc35988a1de9a352a766953b
2024-09-28 02:50:09 +00:00
Menghan Li
e0f734526d refactor(brightness suw): decouple auto brightness initialization logic for setup flow
The AccessibilitySettingsForSetupWizard class should not be responsible for managing the initial
logic of controllers, such as determining which controllers need to be dynamically added or updated
using setInSetupWizard APIs. This logic should be handled directly by the controllers themselves.

Bug: 311093618
Flag: EXEMPT bugfix
Test: atest AccessibilitySettingsForSetupWizardTest
            AutoBrightnessPreferenceControllerForSetupWizardTest
            AutoBrightnessPreferenceControllerTest
            BrightnessLevelPreferenceControllerForSetupWizardTest
            BrightnessLevelPreferenceControllerTest

Change-Id: I6065a10e72d002981c0f514543e6933d79c2aa1b
2024-09-24 05:41:23 +00:00
Treehugger Robot
428829bfc5 Merge "Provide installed a11y services/activities from dynamicRawData for search" into main 2024-09-13 20:19:40 +00:00
Treehugger Robot
b041a687ca Merge "Uses placeholder and percentage formatter for seek bar state strings." into main 2024-09-12 22:41:52 +00:00
Daniel Norman
1b98e50809 Uses placeholder and percentage formatter for seek bar state strings.
Placeholders and percentage formatter are best practice to help prevent
accidental translation errors, especially when mixing formatted strings
with literal percent signs.

Fix: 366201919
Flag: EXEMPT minor string format fix with no functionality change
Test: Use TalkBack to observe the state description of the seekbar;
      observe description is unchanged (e.g. "60% left, 40% right")
Test: atest BalanceSeekBarTest
Change-Id: Ie9dcc9219d253795be31b39279ed9d01d8794f66
2024-09-12 20:50:30 +00:00
Chun-Ku Lin
3f19805209 Provide installed a11y services/activities from dynamicRawData for search
Bug: 354076686
Flag: com.android.settings.accessibility.fix_a11y_settings_search
Test: Search Project Relate and verify the item shows up in the search
result
Test: Search Talkback with keywords, verify the Talkback shows up in the
search result
Test: atest AccessibilitySettingsTest

Change-Id: I258ecb0928308b7cde30c12104408e11cc25ecd5
2024-09-12 17:20:04 +00:00
Riley Jones
23fd32c6d1 Quick fix for FAB fade setting summary
Fixes the fade setting to properly set its summary when not disabled.

Flag: EXEMPT internal change
Bug: 349178637
Test: Check the settings page with navigation button mode and FAB button mode. Verify the summary of the fade setting is correct in both cases.
Change-Id: Ia87a634fd69e6098f1a0a658f788e69d10f2dbec
2024-09-12 00:01:27 +00:00
Riley Jones
8d7cd93e46 Merge "Remove mentions of "gesture" on the Accessibility Button settings page" into main 2024-09-10 23:31:54 +00:00
Riley Jones
28e10455a1 Remove mentions of "gesture" on the Accessibility Button settings page
Configures page to hide/replace elements that would mention gesture.
Also, provides context when necessary if a setting is disabled by the current button mode.

Demonstration video:
https://x20web.corp.google.com/users/jo/jonesriley/splitShortcut/a11yShortcutSettingsCleanup.mp4

Test: manual, navigate to the Accessibility Button "more options" page in gesture navigation mode. Verify there are no references to gesture.
Bug: 349178639
Flag: android.provider.a11y_standalone_gesture_enabled
Change-Id: I067738d23e74c00bab4010d187820d09013809ad
2024-09-10 17:49:45 +00:00
Daniel Norman
216353a770 Makes Caption Language searchable only if captions are enabled.
Fix: 354785578
Flag: com.android.settings.accessibility.fix_a11y_settings_search
Test: atest CaptioningMoreOptionsFragmentTest
Test: adb shell pm clear com.google.android.settings.intelligence;
      disable captioning;
      search Settings for 'language', observe caption language missing
      enable captioning;
      search Settings for 'language', observe caption language present
Change-Id: I015d2c77fbd3f7b8fe713bafb3a49a86160ca958
2024-09-07 00:56:13 +00:00
Treehugger Robot
dcc2530964 Merge "Populates collection info count for A11y toggle feature pages." into main 2024-09-05 21:27:35 +00:00
Chun-Ku Lin
3ed0afc982 Merge "Pass null looper if the looper is not prepared in the calling thread" into main 2024-09-03 17:09:29 +00:00
Angela Wang
ed519640fa Add hearing device related logs in Settings
1. The HAC toggle on/off event
2. The "See more devices" button click in hearing device pairing page
3. The preset changed event in Bluetooth device details page

Flag: EXEMPT, simple log
Bug: 361206470
Test: manually check on go/atomviewer
Test: atest BluetoothDetailsHearingAidsPresetsControllerTest
Change-Id: I743ea136ec4cb3370c0463df865db830e73e7997
2024-09-03 08:06:43 +00:00
Chun-Ku Lin
d077ca6dd9 Pass null looper if the looper is not prepared in the calling thread
**Root cause**
The PreferenceController can be constructed by the
SettingsSearchIndexablesProvider where the looper of the thread is not
prepared. This result in not able to construct the PreferenceController
that will be used as part of the SettingsSearch.

Currently, if the SettingsSearchIndexablesProvider is not able to
construct the PreferenceController defined in xml, it would just
silently failed.

Test: atest SettingsUnitTests
Test: atest SettingsRoboTests

Flag: EXEMPT low risk bugfix
Bug: 352622249
Change-Id: I72a4ce24ec6842b9efe067e3cb7d1c73cd98a566
2024-08-29 23:02:34 +00:00
Pat Manning
f81aec1662 Replace Large mouse pointer setting with Pointer Scale
Bug: 269100659
Test: LargePointerIconPreferenceControllerTest
Flag: android.view.flags.enable_vector_cursor_a11y_settings
Change-Id: Ic643eb1eb862388eddf5d6f3de2d25739d4d23ad
2024-08-28 11:16:09 +00:00
Daniel Norman
1890c16f90 Populates collection info count for A11y toggle feature pages.
This helps an accessibility service like TalkBack inform the user that
there are items that are skipped when navigating the list because they
are unimportant to accessibility.

Bug: 318607873
Test: atest AccessibilityFragmentUtilsTest
Test: atest ToggleScreenMagnificationPreferenceFragmentTest
Test: Enable TalkBack that supports the collection info count feature,
      open any of the pages from the bug, observe the item count and
      (un)important count are correct.
Flag: com.android.settings.accessibility.toggle_feature_fragment_collection_info
Change-Id: If64c89f2eb2f8301076baa79b9530124c850d2fc
2024-08-27 23:36:19 +00:00
Treehugger Robot
b0b3269725 Merge "Stops hiding a11y services with the same package+label as an activity." into main 2024-08-22 00:03:59 +00:00
Treehugger Robot
4c7e923250 Merge "fix(Color correction): Display default value in slider to match the radio button" into main 2024-08-15 21:40:41 +00:00
Isaac Chai
23258c2b10 fix(Color correction): Display default value in slider to match the radio button
The default value for display in the radio buttons were hard-coded and was not
being reflected to the slider correctly.

Bug: 359379399
Test: locally tested + unit tests added
Flag: com.android.server.accessibility.enable_color_correction_saturation

Change-Id: I95bd0ae1d32561dbbf6b4e87efe70595c9566de8
2024-08-15 19:53:13 +00:00
Ming-Shin Lu
8ec4d71630 Remove VibrationAttributes#CATEGORY_KEYBOARD (in Settings)
Since CL[1], [2] introduced USAGE_IME_FEEDBACK in VibrationAttributes
to be able to specify default / current vibration in VibrationSettings
according to the vibration usage naturally without using this category
attribute + a bypass flag to only support a fixed vibration scaling.

Remove CATEGORY_KEYBOARD attribute and replacing with USAGE_IME_FEEDBACK
in Settings for cleaning up logic.

[1]: I6256c4f47a8bbee4b649d35eabfbc0c94215c0d7
[2]: I764aa8bd72889d4af62b30bff75af9033f22052b

Flag: EXEMPT refactor
Bug: 332661766
Test: atest KeyboardVibrationTogglePreferenceControllerTest
Change-Id: I532e7d184d235bfa266fb590e60802c4e2fa7df2
2024-08-15 15:01:52 +00:00
Daniel Norman
c38fd822ba Stops hiding a11y services with the same package+label as an activity.
Bug: 353700779
Test: atest AccessibilitySettings, ensure new test passes
Test: revert AccessibilitySettings.java change, ensure new test fails
Test: Install poc APKs from the bug, observe issue not reproducible
Flag: NONE security fix
Change-Id: Ie680e80169aa734f2559fe50ef06e4d1eae46779
2024-08-14 22:48:06 +00:00
Jason Hsu
c98fd48306 Merge "Flash Notifications color dialog crashs if configuration changes" into main 2024-08-10 08:03:32 +00:00
jasonwshsu
e08c1a5f92 Flash Notifications color dialog crashs if configuration changes
Root Cause:
When configuration changes, it will recreate fragment then call no args constructor which lead to null pointer exception for error passing parameters in getInstance().

Solution:
* Use setArguments() to pass parameters.
* Move settings key update action into fragment.
* Obsever settings key changes to update summary accordingly.

Bug: 349049233
Test: atest ScreenFlashNotificationColorDialogFragmentTest ScreenFlashNotificationPreferenceControllerTest
Flag: EXEMPT bugfix
Change-Id: Ided0853cf9a989e2f288a85c1aa709f71f7e1cd6
2024-08-10 10:24:30 +08:00
Riley Jones
386dda7028 Merge "Adjust edit shortcuts page to display button & gesture" into main 2024-08-08 17:24:46 +00:00
Riley Jones
1e80db4ee3 Adjust edit shortcuts page to display button & gesture
Page is altered to display the FAB shortcut
and gesture shortcut simultaneously when the user is in
gesture navigation mode.
The gesture option does not display the "more options" link.
Additionally, the gesture option controller uses the GESTURE type,
which means it will read from & write to the gesture setting.
All this behavior is flag protected.

Bug: 300318311
Test: atest FloatingButtonShortcutOptionControllerTest GestureShortcutOptionControllerTest
Flag: android.provider.a11y_standalone_gesture_enabled
Change-Id: I915f05b2102ce499bb906df2c13e0870ae0a36d5
2024-08-08 00:14:09 +00:00
Angela Wang
73fd3c1e3f Merge "Update UI for Flash notifications" into main 2024-08-07 07:11:40 +00:00
Ming-Shin Lu
55102216e1 Merge "Delete keyboard_category_enabled flag (2/2)" into main 2024-08-06 11:38:41 +00:00
Daniel Norman
2a8c60ff6f Merge "Never restricts Accessibility Activities based on ECM/admin." into main 2024-08-05 22:59:40 +00:00
Ming-Shin Lu
bc79a1e074 Delete keyboard_category_enabled flag (2/2)
As keyboard_category_enabled feature has launched, remove the feature
flag since it's unnessary.

And, this CL is the preparation of removing CATEGORY_KEYBOARD vibration
attribute and logic, remove the flag usage ing settings since no longer
need this flag.

Flag: EXEMPT flag removal
Bug: 332661766
Test: build
Test: atest KeyboardVibrationTogglePreferenceControllerTest
Change-Id: I19cecb977d52a74b26eea1f494052e0e852359c4
2024-08-05 14:06:24 +00:00
Angela Wang
4ad8e0c568 Update UI for Flash notifications
1. Hide the preview button when it's disabled
2. Change the text from “Done” to “Save” in the color selector dialog

Flag: EXEMPT simple UI change
Bug: 356978471
Test: manually, video attached on the bug
Test: atest FlashNotificationsPreviewPreferenceControllerTest
Change-Id: I2e6e697ad10f0207602d613085663cdd82521ea2
2024-08-05 06:46:50 +00:00
Chun-Ku Lin
767f58785a Physical keyboard related options shouldn't be searchable when invisible
Physical keyboard options category is hidden when there is no hardware
keyboard. It's related preferences are hidden in this case. Hence those
preferences shouldn't be searchable.

Bug: 351047456
Test: manually search "bounce keys", "sticky keys" and "slow keys",
they're not searchable when invisible on Accessibility page
Test: atest
Flag: com.android.settings.accessibility.fix_a11y_settings_search

Change-Id: I1eb465dd34e59d856bb1fa7c06bc253971a8c8d0
2024-07-31 18:04:55 +00:00