Commit Graph

1547 Commits

Author SHA1 Message Date
Daniel Norman
034e6db92e Merge "Uses a custom state description for the Audio Balance seek bar." into main 2024-07-11 00:45:37 +00:00
Riley Jones
d902bdbb62 Merge "Refactoring Accessibility settings to use ShortcutConstants.UserShortcutType" into main 2024-07-09 20:59:30 +00:00
Daniel Norman
0771fd8a9e Uses a custom state description for the Audio Balance seek bar.
This makes the seek bar more informative for a user of a screen reader
or other accessibility service. See context in b/319575109#comment7.

Bug: 319575109
Flag: com.android.settings.accessibility.audio_balance_state_description
Test: Use TalkBack to observe the state description while moving the
      seek bar.
Test: atest BalanceSeekBarTest
Change-Id: I7be15b26116f83854efe69d6b0560edde946daf5
2024-07-08 23:30:41 +00:00
Riley Jones
8f313621aa Refactoring Accessibility settings to use ShortcutConstants.UserShortcutType
This removes AccessibilityUtil.UserShortcutType,
replacing all mention of it with ShortcutConstants.UserShortcutType

NO_IFTTT=UI order not changed
Test: atest com.android.settings.accessibility
Bug: 322014084
Flag: EXEMPT internal refactoring

Change-Id: I18695d040c4bd08a455143594e770adda2b1a8de
2024-07-01 19:42:32 +00:00
Wilson Wu
483d90b552 Simplify default keyboard vibration settings value
CL[1] remove the default keyboard vibration state
device config, use the fixed value in the controller.

[1]: I9060fbc83087599fa0d9a56be3de27a2dcf15a94

Flag: EXEMPT refactor
Bug: 332660772
Test: atest KeyboardVibrationTogglePreferenceControllerTest
Change-Id: I7e5a195047e96582bd80898134051924c0ad72ab
2024-07-01 08:06:41 +00:00
Wilson Wu
789aacf499 Clean up the keyboard vibration config
-. Remove the device config in Settings
-. Use the new config in frameworks/base

Flag: EXEMPT refactor
Bug: 332661307
Test: atest KeyboardVibrationTogglePreferenceControllerTest
Change-Id: I2fe70d830d55ec6f33597fbe0ed107b41eb3bdd7
2024-07-01 03:09:56 +00:00
Roy Chou
5d5392d48e Merge "chore(onefingerpan): update onefingerpan preference summary and magnification settings page footer description" into main 2024-06-27 01:11:31 +00:00
Roy Chou
b0220d8878 Merge "chore(brightness suw): adjust auto brightness detail page footer content description" into main 2024-06-26 03:51:47 +00:00
Roy Chou
2f1a7d6155 chore(onefingerpan): update onefingerpan preference summary and magnification settings page footer description
Based on b/338409557#comment5, we update the onefingerpan toggle's
summary, and make the magnification settings page's footer HTML
description be dynamic based on one finger panning preference state.

Bug: 338409557
Flag: com.android.server.accessibility.enable_magnification_one_finger_panning_gesture
Test: manually
      atest MagnificationOneFingerPanningPreferenceControllerTest
      atest ToggleScreenMagnificationPreferenceFragmentTest
      atest ToggleFeaturePreferenceFragmentTest
Change-Id: I817cad4fb0c034bcd2db0485ca27c30ea88a0280
2024-06-25 14:22:27 +00:00
Roy Chou
e8288512ee chore(brightness suw): adjust auto brightness detail page footer content description
Ref to the bug, s2s and talkback pages' footer content descriptions are
prefixed with "About XXX" for talkbalk info announcement. Therefore, for
auto brightness detail page in SUW, we also prefix "About adaptive
brightness" to the footer preference content description, to improve
the consistency with other accessiblity feature suw pages.

Bug: 347859318
Flag: com.android.settings.accessibility.add_brightness_settings_in_suw
Test: manually
      atest AutoBrightnessPreferenceFragmentForSetupWizardTest
Change-Id: Ieda4bcffb4f4e11ea68c961beee5c2fff1b29f2c
2024-06-24 06:10:07 +00:00
Chun-Ku Lin
764f8d73a4 Don't show the QuickSetting tooltip when we stopped auto add qs tile for
the user

Bug: 348110750
Test: atest ReduceBrightColorsPreferenceControllerTest
Test: manual
- Go to Settings > Accessibility
- Turn on Extra dim for the first time
- Verify the QS tooltip prompt doesn't show up
Flag: android.view.accessibility.a11y_qs_shortcut

Change-Id: I6fecb818df3bb865ba81cbcda94149a98d8255ab
2024-06-20 23:36:03 +00:00
Angela Wang
7b46a822ee Merge "Fix incorrect summary for LE audio hearing aids" into main 2024-06-12 08:11:29 +00:00
Angela Wang
5fef3c2bb0 Fix incorrect summary for LE audio hearing aids
For LE audio lead device, the `CachedBluetoothDevice.isConnected()` will return true since `BluetoothLeAudio.getConnectionStatus(device)` will return STATE_CONNECTED even if the device is powered off. Changing to use `CachedBluetoothDevice.getDevice().isConnected()` can avoid the wrong value of the connection status of the device.

Bug: 325524694
Flag: EXEMPT bugfix
Test: atest AccessibilityHearingAidPreferenceControllerTest
Change-Id: If763c0861bb5796d9bc0511916b7077c784b49f5
2024-06-11 04:55:57 +00:00
Chun-Ku Lin
bcb877406f Merge "Improve the speed of AccessibilitySettings#containsTargetNameInList to help reduce the a11y settings' cold start latency." into main 2024-06-07 21:17:44 +00:00
Chun-Ku Lin
7e03bf65c7 Improve the speed of AccessibilitySettings#containsTargetNameInList to
help reduce the a11y settings' cold start latency.

Bug: 327052480
Flag: EXEMPT bugfix low risk
Test: atest com.android.settings.accessibility
Test: manual (a11y settings page still shows up with correct content)
Change-Id: Ib9980756d88a218ebb10f17d6a3b0d9a406a0ddd
2024-06-07 02:41:26 +00:00
Chun-Ku Lin
b80641ba26 Loading the A11yHearingAidPreference summary in the background
Bug: 327052480
Flag: EXEMPT low risk bug fix
Test: atest com.android.settings.accessibility
Change-Id: I644be0c7ee289a4ea675984068ac494b97ebff68
2024-06-06 23:11:51 +00:00
Chun-Ku Lin
b9ee1c4877 Load icon in the background, also load extra data that would be used
later in the background.

Bug: 327052480
Test: atest com.android.settings.accessibility
Flag: EXEMPT bugfix
Change-Id: I9940772e60e2137aad2b3b70902565e36fb7aad6
2024-06-04 02:07:18 +00:00
Chun-Ku Lin
ba408fbb06 [Refactor] Create a dedicated AccessibilityServicePreference and
AccessibilityActivityPreference to encapture the method for loading the
content for AccessibilityService and AccessibilityShortcutInfo

Bug: 327052480
Test: atest com.android.settings.accessibility
Flag: EXEMPT mechanical refactor

Change-Id: I698a1d366e8ab82c8efdcae293a1ba1771925121
2024-06-04 00:22:44 +00:00
Daniel Norman
5a20cfb469 Merge "Update A11ySettings to load preferences in onCreate()." into main 2024-06-03 19:06:23 +00:00
Daniel Norman
c3b2165dfe Update A11ySettings to load preferences in onCreate().
This version still only loads preferences once, but the previous attempt
commit 774bbc1ff2
created a "sliding" effect as the preferences were loaded after the page
became visible to the user.

Also reorders methods so that their position in the source file matches
the Activity lifecycle ordering.

Bug: 327052480
Test: existing A11y Settings robotest presubmit
Test: Launch this page from the Settings app, observe no sliding UI
Flag: NONE low risk visual bug fix
Change-Id: I44312ada359aef7dec8eb27c57cde2a8e00f254b
2024-06-01 22:24:18 +00:00
Chun-Ku Lin
38236869ee Merge "Update a11y shortcut images" into main 2024-05-31 17:53:12 +00:00
Chun-Ku Lin
a28e808918 Merge "Replace Magnification preview" into main 2024-05-31 17:32:00 +00:00
Treehugger Robot
d20abfa4c8 Merge "Reduce the number of calls to updateAllPreferences" into main 2024-05-29 04:45:59 +00:00
Chun-Ku Lin
774bbc1ff2 Reduce the number of calls to updateAllPreferences
We call updateAllPreferences in onCreate and onResume. If we always call
the method in onResume, the call in onCreate seemed redundant.

Bug: 327052480
Flag: EXEMPT low risk bugfix
Test: manual (able to see the accessibility screen as before)
Test: atest com.android.settings.accessibility
Change-Id: I40b44ed6b667f7b1375ec0e339fc2b28a3f70dc5
2024-05-29 03:15:15 +00:00
Jason Hsu
e6c6b24f1e Merge "Add Quick Settings shortcut option into Hearing Devices accessibility settings page" into main 2024-05-29 02:55:37 +00:00
Chun-Ku Lin
88414d4e4b Replace Magnification preview
Bug: 326229430
Bug: 324312956
Test: manual (View the image on the Magnification page in DT/LT)
Flag: EXEMPT low risk
Change-Id: I991104a2aaf2768ded9fb57d88a93ae725d60303
2024-05-29 01:44:48 +00:00
Chun-Ku Lin
833bbccd30 Update a11y shortcut images
- Update QS, gesture, volume keys shortcut type images
- Change FAB image to animated image
- Change 2-finger double tap, triple tap animated images
- Fix the alpha value set in the FAB preview

Bug: 324312956
Test: Run and view the images
Test: atest com.android.settings.accessibility
Flag: EXEMPT low risk, resource change
Change-Id: Ic0f1953ca20fc8a3dc7b684f95ee18dae67c4f09
2024-05-29 01:43:44 +00:00
jasonwshsu
2a3815776c Add Quick Settings shortcut option into Hearing Devices accessibility settings page
* In Android V, we can add qs as one of the accessibility shortcut option to be more discoverable.

Bug: 338327560
Flag: EXEMPT bugfix
Test: check shortcut option in hearing devices settings page
Change-Id: I60d4da2432605a5369eb87c1e594539d40c53ae8
2024-05-27 03:12:28 +08:00
Chun-Ku Lin
3c822399ae Merge "Pass user preferred shortcut types when launching the AccessibilityShortcutsTutorial." into main 2024-05-22 23:17:50 +00:00
Roy Chou
bc0758fa54 Merge "chore(magnification): cleanup flag usage of hide_magnification_always_on_toggle_when_window_mode_only" into main 2024-05-22 00:56:13 +00:00
Chun-Ku Lin
09efbe453c Pass user preferred shortcut types when launching the
AccessibilityShortcutsTutorial.

**Root cause**
When toggle the shortcut, it asks the AccessibilityManager to turn on
the shortcut and update the Settings data. Internally, the
AccessibilityManager delegate the work to AccessibilityManagerService
via a oneway binder call.

In the past, when launching the AccessibilityShortcutsTutorial, we
assume the shortcut selection are saved in the Settings before launching
the AccessibilityShortcutsTutorial. So we pass whatever are in the
Settings as what the user has selected to the tutorial.
This is not true anymore since we use the oneway AIDL call to do the
updates. The data in Settings may not yet be  updated before we use it to
launch the tutorial.

Since the user preferred shortcuts are always set before we attempt to
launch the AccessibilityShortcutsTutorial, we can rely on it instead of
the Settings value to launch the AccessibilityShortcutsTutorial for the
selected shortcut options.

**Changes in this cl**
- Mechanical refactor to extract the lines to get the user preferred
  shortcut into a method.

- Use the new method to grab the shortcut options to pass to the
  AccessibilityShortcutsTutorial to prevent the crash.

Bug: 341176890
Test: manual
    - Modify the AccessibilityManagerService locally to delay processing
      the request to update the shortcut options in Settings data
    - Turn on the shortcut toggle, and verify the app won't crash

Test: atest com.android.settings.accessibility
Flag: EXEMPT bugfix (low risk + mechanical refactor)
Change-Id: Id3cc4cc5f6667061545955881632544472aedd95
2024-05-21 23:33:55 +00:00
Roy Chou
dc92a296b5 chore(magnification): cleanup flag usage of hide_magnification_always_on_toggle_when_window_mode_only
The bug-fix flag is already soaking in trunkfood full stage for a while.
Since there is no coming issues related to the fix, we can apply the fix
and remove the flag usage.

Bug: 341203230
Flag: NONE
Test: manually
      atest MagnificationAlwaysOnPreferenceControllerTest
Change-Id: I7e6ef8e03e7b7291d2faa15351669a91a50f59a5
2024-05-21 16:07:25 +00:00
Treehugger Robot
1f4ee3de23 Merge "Merge "Update haptic settings owners" into main am: 1c3e44a2da am: e2d8c52b71" into main 2024-05-21 12:13:53 +00:00
Roy Chou
575259e049 Merge changes Ife935485,Ic9b44d73,I44f7f058,I39868ac1,I05c59a76 into main
* changes:
  chore(magnification suw): hide joystick toggle in setup wizard
  chore(magnification suw): hide one finger pan toggle in setup wizard
  refactor(magnification suw): hide follow typing toggle in setup wizard
  chore(magnification suw): hide always on toggle in setup wizard
  chore(magnification suw): create MagnificationFeaturePreferenceController
2024-05-21 05:25:12 +00:00
Roy Chou
a511ddb75a chore(magnification suw): hide joystick toggle in setup wizard
Although we haven't implemented joystick feature, but the joystick
preference controller is already in the codebase, so we also add hiding
logic for joystick toggle when in setup wizard.

Bug: 340721852
Flag: NONE
Test: manually
      atest MagnificationJoystickPreferenceControllerTest
Change-Id: Ife93548583c3e82eac030e6e3aa55b9f643b055a
2024-05-21 03:37:37 +00:00
Roy Chou
f094c19d0a chore(magnification suw): hide one finger pan toggle in setup wizard
Bug: 340721852
Flag: NONE
Test: manually
      atest MagnificationOneFingerPanningPreferenceControllerTest
Change-Id: Ic9b44d73f75b47e6b97c5f4994b2e0b23bfb623b
2024-05-21 03:37:12 +00:00
Roy Chou
c9d3b39a62 refactor(magnification suw): hide follow typing toggle in setup wizard
Originally we cache mFollowingTypingSwitchPreference in fragment so in
ToggleScreenMagnificationPreferenceFragmentForSetupWizard we can set the
preference visible to false to hide it. After creating MagnificationFeaturePreferenceController,
the MagnificationFollowTypingPreferenceController can extend it and
check isInSetupWizard internally then dicide whether to hide. Therefore,
we don't need to cache mFollowingTypingSwitchPreference in fragment
and let the fragment control the preference visibility anymore.

Bug: 340721852
Flag: NONE
Test: manually
      atest MagnificationFollowTypingPreferenceControllerTest
      atest ToggleScreenMagnificationPreferenceFragmentForSetupWizardTest
      atest ToggleScreenMagnificationPreferenceFragmentTest
Change-Id: I44f7f0589b2df3d83a27139323fc68a0561f1cfa
2024-05-21 03:36:51 +00:00
Roy Chou
3761f61c7e chore(magnification suw): hide always on toggle in setup wizard
Bug: 340721852
Flag: NONE
Test: manually
      atest MagnificationAlwaysOnPreferenceControllerTest
Change-Id: I39868ac1d4423584e43473683db20a2259311049
2024-05-21 03:36:38 +00:00
Roy Chou
9780020f6b chore(magnification suw): create MagnificationFeaturePreferenceController
Add a new abstract class MagnificationFeaturePreferenceController
that extends TogglePreferenceController, to wrap inSetupWizard
setter/getter. Then for magnification feature preference controllers
like alwaysOn or followTyping, they can just check isInSetupWizard to
decide whether hiding in setup wizard.

Besides, in ToggleScreenMagnificationPreferenceFragment we cache a flag
mInSetupWizard when fragment created, so we can pass the info to the
preferece controllers when creating them.

Bug: 340721852
Flag: NONE
Test: build pass
Change-Id: I05c59a766219862117d2a6ede775d68a4c3dedac
2024-05-21 03:36:06 +00:00
Lais Andrade
73e7243a4c Merge "Update haptic settings owners" into main am: 1c3e44a2da am: e2d8c52b71
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Settings/+/3093005

Change-Id: Icc17a5ea395823823dc92520ee9b41660f74c135
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2024-05-20 18:19:49 +00:00
Lais Andrade
6eeddc8c29 Update haptic settings owners
Bug: 338334977
Change-Id: I789268bda12a5cc6ff49b0adfaf41a42e52d64d6
Test: N/A
2024-05-20 16:54:06 +00:00
Isaac Chai
504ac0cf2a Merge "Color correction saturation level settings" into main 2024-05-16 17:27:26 +00:00
Pawan Wagh
c1c2853ca7 Merge "Turn off voice access in 16KB mode" into main 2024-05-15 20:59:35 +00:00
Isaac Chai
4bf537a815 Color correction saturation level settings
Adding settings UI for color saturation level change, guarded by feature
flag.

Test: Locally tested + unit tests added
Bug: 322829049
Flag: com.android.server.accessibility.enable_color_correction_saturation

Change-Id: Ifa816647b16534ab6da770584d3de0628734aed5
2024-05-15 20:58:44 +00:00
Roy Chou
535494eca9 Merge "feat(brightness suw): add brightness preferences in suw" into main 2024-05-15 07:25:06 +00:00
Roy Chou
042c8c7328 feat(brightness suw): add brightness preferences in suw
Add brightness level and auto brightness preference in
accessibility_settings_for_setup_wizard.xml. Since the flagging has not
be supported yet for non-Manifest resources, for now we add the
preferences by default, and update the preferece availablity status in
each preference controllers based on the flag.

Bug: 311093618
Flag: ACONFIG com.android.settings.accessibility.add_brightness_settings_in_suw DEVELOPMENT
Test: manually
      atest AccessibilitySettingsForSetupWizardTest
      atest AutoBrightnessPreferenceFragmentForSetupWizardTest
      atest AutoBrightnessPreferenceControllerTest
      atest BrightnessLevelPreferenceControllerTest
Change-Id: I350d99138bdd14bf28828a39e42f707b5b1066c1
2024-05-15 03:19:40 +00:00
Pawan Wagh
6de4093876 Turn off voice access in 16KB mode
VoiceAccess doesn't support the 16KB mode yet. Skipping
voice accesss service when in page-agnostic mode.

Test: m Settings && adb install -r $ANDROID_PRODUCT_OUT/system_ext/priv-app/Settings/Settings.apk
Bug: 335443194
Bug: 340231742
Change-Id: If4deae48aaa221c843af5eb65208659ad38a08b2
2024-05-14 19:50:36 +00:00
marcusge
24289fa084 [Contrast] Migrate contrast settings into Display
Test: local raven device
Bug: 333905689

Change-Id: Ie94633c23ebe024b8fb48d7ffebdd7b1dfa588da
2024-05-09 06:32:29 +00:00
Ahmad Khalil
93fe16fc25 Merge "Make haptics team owners on vibration files in Settings" into main 2024-05-07 19:44:46 +00:00
Chun-Ku Lin
fdc7d4afa9 Merge "Add null pointer check to prevent crash" into main 2024-05-07 19:09:38 +00:00