Commit Graph

1280 Commits

Author SHA1 Message Date
Peter Liang
edfed449c3 Fix the preview couldn't be scrolled up and down when showing the scroll bar.
Actions:
1) Add the specific attribute to disallow parent view intercept the touch event of child view to avoid conflicting with the nested scroll view.
2) Add the scroll view into the page of the mail content preview.

Bug: 220078816
Test: manual test
Change-Id: I7f3b2afdf76e501386d9080e7a0eed8b92e28d3b
2022-12-12 19:32:52 +08:00
PETER LIANG
97b7731f04 Merge "Fix the summary of Magnification didn’t be updated after the content change." 2022-12-12 07:47:49 +00:00
PETER LIANG
523f9c17b6 Merge "Fix the state didn't reset after the size change and rotation." 2022-12-12 06:29:50 +00:00
Peter Liang
3ef603e622 Fix the state didn't reset after the size change and rotation.
Action:
Immediately take the effect of updating the progress to avoid waiting for receiving the event to delay update.

Bug: 244979646
Test: make RunSettingsRoboTests ROBOTEST_FILTER=PreviewSizeSeekBarControllerTest
Change-Id: I6b78555c8536b666a3f015e41574c65e15879d1d
2022-12-12 10:47:53 +08:00
PETER LIANG
5c7997be5e Merge "Refine the UI of the text reading page across SuW." 2022-12-12 02:42:53 +00:00
Peter Liang
5e931b2c23 Refine the UI of the text reading page across SuW.
Actions:
1) Customize pages and use the components from SuW lib to align SuW consistent style.
2) Add the done button in the Anything Else page.

Bug: 232771631
Bug: 222419452
Test: make RunSettingsRoboTests ROBOTEST_FILTER=TextReadingResetControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=TextReadingPreferenceFragmentForSetupWizardTest
Change-Id: Ie3f3513ceee7c40d6286335dce91979df0d27f02
2022-12-11 22:11:02 +08:00
Peter Liang
c0f4e11076 Fix the summary of Color inversion or correction didn’t be updated after the content change.
Action:
Observe the settings content change and then update the corresponding preference state.

Bug: 245441772
Test: manual test
Change-Id: I6205c2ebe0d1eda141e9b3bd00e4a21dfdba1760
2022-12-09 20:42:47 +08:00
Peter Liang
08e6061ade Fix the summary of Magnification didn’t be updated after the content change.
Solution:
1) Update the preference state when the settings content change.

Bug: 246869845
Test: manual test
Change-Id: Ib776100e6940d09f5549c3edc2c5f5c6963c6d0e
2022-12-09 00:54:48 +00:00
Peter Liang
f5c7c52ca1 Fix the preview should keep the same layer after font or display size change.
Bug: 259213786
Test: make RunSettingsRoboTests ROBOTEST_FILTER=TextReadingPreviewPreferenceTest
Change-Id: Ifc0047e47806662174712bb8628193bee906b384
2022-12-05 22:51:17 +08:00
PETER LIANG
2af12acaed Merge "Add the extra style of the reset button to align SuW style." 2022-12-05 05:12:11 +00:00
Peter Liang
734e5291bb Add the extra style of the reset button to align SuW style.
Bug: 222419452
Test: manual test
Change-Id: I3b020129b04b3036a2de8230c759c69e7342e027
2022-12-05 11:10:59 +08:00
Angela Wang
416b5bd63f Unifies constants accross hearing aid related profiles (2/2)
Hearing aid constants defined differently across different hearing aid
related profiles. For hearing aid device mode, HearingAidProfile and
HapClientProfile have different values for mode definition and there is also
a new BANDED hearing aid type in HapClientProfile spec. For hearing aid
device side, HearingAidProfile has only 2 kinds of side which is left
and right whereas BLE hearing aid can retrieve 27 different kinds of
audio location.

We therefore introduce a new class HearingAidInfo for mapping these
different constants across these profiles into a single unified set of
constants.

Bug: 253192350
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityHearingAidPreferenceControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=HearingAidPairingDialogFragmentTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=HearingAidUtilsTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=BluetoothDetailsPairOtherControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AvailableMediaDeviceGroupControllerTest
Change-Id: Id14928dbc051fcf76fe0d66b43aefefb1b5f7baf
2022-11-28 09:03:37 +00:00
Angela Wang
a6a7e029d7 Merge "Shows LE audio hearing aid device in a11y settings page (3/3)" 2022-11-28 07:16:25 +00:00
Angela Wang
e7a4b1f13d Shows LE audio hearing aid device in a11y settings page (3/3)
Shows connected hearing aid in a11y settings page whether it's ASHA hearing aid or LE audio hearing aid. Makes sure preference summary is updated as expected when BluetoothHapClient profile connects or disconnects.

LE audio hearing aid will be a CSIP set. According to the CSIP spec, we will show the device is active without side information if there is only one device in the CSIP set and show the device is active left and right if both side of hearing aids are in the CSIP set.

Bug: 249235823
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityHearingAidPreferenceControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=HearingAidPairingDialogFragmentTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=HearingAidUtilsTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AvailableMediaBluetoothDeviceUpdaterTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=BluetoothDetailsPairOtherControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=BluetoothDetailsRelatedToolsControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=ConnectedBluetoothDeviceUpdaterTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AvailableMediaDeviceGroupControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=BluetoothDevicesSliceTest
Change-Id: Ifd66cbd81481a1eb94613d89dfd8df16b8c43ae8
2022-11-23 07:50:51 +00:00
menghanli
f76e31fe48 Fix unbundled accessibility features settings crash when launched
Root cause: The ag/19938064 introduces Settings Core change preference value changed metrics log format. It tries to lookupMetricsCategory() at Fragment#instantiate() stage. It has not onAttach() to activity by FragmentManager#add() or #replace(). The features were added by ag/15824482.
Solution: PutInt new MATRICS_CATEGORY extra in previous class to avoid giving context for FeatureFactory.getFactory to custom 1P accessibility services for SettingsGoogle overlay.

Bug: 259355675
Test: manual test
Change-Id: Ic37d41be6a54fe388f211c1c397d0b9b87b5fb56
2022-11-18 22:18:27 +00:00
jasonwshsu
ce487188a0 Fix TalkBack shortcut keeps showing enabled when entering into that page.
Root Cause: TextUtils.isEmpty() will return true both null and empty case, and write config key into it.

Solution: Write config key only if settings key is null. That means no one (developers or users) touch the key ever, so we should respect config key here.

Bug: 255912415
Test: make RunSettingsRoboTests ROBOTEST_FILTER=ToggleFeaturePreferenceFragmentTest
Change-Id: I092975ea3de8fce78b7ae2a6241a30f6af8125a6
2022-11-10 12:21:04 +00:00
Angela Wang
c4f3295491 Fix should not let users adjust a11y button settings in SuW issue
Root Cause: Users should not be able to adjust any settings of the a11y
button in the setup wizard flow, but there will be a link button to
a11y button settings page on the a11y tutorial dialog where user can
modify the settings.

Solution: Hide the link button in a11y tutorial dialog if we know the
dialog is launched from any setup wizard page.

Bug: 256084341
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityGestureNavigationTutorialTest
Change-Id: I742f9b7ba311fcd7a5105463709dc104345b9f12
2022-11-01 07:07:47 +00:00
Lauren Winston
246597c1ac Merge "Revert "Add a cursor preference to Accessibility Settings"" 2022-10-11 23:00:34 +00:00
Lauren Winston
4f493778a6 Revert "Add a cursor preference to Accessibility Settings"
This reverts commit 205018a854.

Reason for revert: Software Cursor not launching in Android U

Change-Id: Ieddc6b27a8a28910e7c12328ee6d1b5e0d2e4c17
2022-10-11 18:32:27 +00:00
Lauren Winston
3f8d62fbf1 Revert "Add toggles for two Software Cursor settings: keyboard shift and trigger"
This reverts commit 28b4b34f92.

Reason for revert: Software Cursor is not launching in Android U

Test: manual

Change-Id: I213cf64ca94fce51883a30a9d6b734b4ed874dad
2022-10-06 23:58:50 +00:00
PETER LIANG
0039fb35cd Merge "Fix that when I go to display size in the settings, the largest size shows the smallest icons." into tm-qpr-dev am: 937821f30f am: a3e3790a73
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/20067817

Change-Id: I9deea489564aea71955570ea6f125f13c60f61ff
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-09-30 01:02:44 +00:00
Peter Liang
8ca60482c2 Fix that when I go to display size in the settings, the largest size shows the smallest icons.
Root cause:
Preview didn't instantly be updated when scrolling the Display size.

Solution:
Get the value from preferences when scrolling, and from the display size data value when initializing.

Fix: 248748575
Test: manual test
Change-Id: I441766e0fd97ec1ac287d5bd4191693b2490c552
2022-09-29 06:23:32 +00:00
PETER LIANG
93a613f2f6 Merge "Fix that display size and text preview is going blank while scrolling the page in landscape view." into tm-qpr-dev am: 71c3e06bea am: dace33e3c3
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/19997091

Change-Id: I2de86b0a6b8eac29e04fb8ce6c77750d88321322
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-09-22 09:20:28 +00:00
Peter Liang
6a847bba04 Fix that display size and text preview is going blank while scrolling the page in landscape view.
Problem:
It seems that the inconsistent index would cause the view stub couldn't be inflated successfully.

Solution:
Adjust it to the same index.

Fix: 244336110
Test: manual test
Change-Id: I2688e6feb61ac64f989e5f8e4910e6eeca3a97bf
2022-09-22 01:20:45 +00:00
Angela Wang
83a1af221a Logs hearing aid information when a hearing aid is bonded
The information including device mode, device side, and entry page id where the binding process starts. Set the mapped bond entry from BluetoothPairingDetail into the cached bluetooth device and log it later when the device mode and device side is received after the hearing aid bluetooth profile is connected.

Bug: 237344016
Test: m statsd_testdrive & statsd_testdrive 513

Change-Id: Ie0432f7da4f29e89e47d0ad3d72a04a9f5ea83ae
Merged-In: Ie0432f7da4f29e89e47d0ad3d72a04a9f5ea83ae
2022-09-15 22:37:42 +00:00
Angela Wang
6924029ddc Update source metric category of HearingAidDialogFragment and HearingAidPairingDialogFragment
Use different source metric categories to distinguish different launch sources of the BluetoothPairingDetail page.

Bug: 237344016
Test: manual
Change-Id: If762e87414055f3e497f99ea6885f7736b7193cd
Merged-In: If762e87414055f3e497f99ea6885f7736b7193cd
2022-09-15 06:21:43 +00:00
Angela Wang
673f40d4c8 Merge "Logs hearing aid information when a hearing aid is bonded" 2022-09-14 10:49:07 +00:00
Angela Wang
cf199c96bf Logs hearing aid information when a hearing aid is bonded
The information including device mode, device side, and entry page id where the binding process starts. Set the mapped bond entry from BluetoothPairingDetail into the cached bluetooth device and log it later when the device mode and device side is received after the hearing aid bluetooth profile is connected.

Bug: 237344016
Test: m statsd_testdrive & statsd_testdrive 513

Change-Id: Ie0432f7da4f29e89e47d0ad3d72a04a9f5ea83ae
2022-09-14 06:27:10 +00:00
PETER LIANG
240eb5c9e5 Merge "Fix the preview section incorrectly ordered of the display size and text." into tm-qpr-dev 2022-09-08 02:09:13 +00:00
Peter_Liang
e10799c774 Fix the preview section incorrectly ordered of the display size and text.
Goals: Set correct order into.

Fix: 233326281
Test: manual test
Change-Id: I88c65aa9c3f05281a5c5090c2ca9503327bb580f
Merged-In: I88c65aa9c3f05281a5c5090c2ca9503327bb580f
(cherry picked from commit 4b13620457)
2022-09-08 02:07:02 +00:00
menghanli
aaee157fdd Fix extra dim turns on failed in setting search bar
Root cause: Don't call displayPreference before setChecked called.
Solution: Don't show quick settings tooltips if preference is not ready.

Bug: 237850687
Bug: 244676175
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityQuickSettingsPrimarySwitchPreferenceControllerTest
Change-Id: I52425190cce4ab3cf31be025a743bf8b212fa1f9
Merged-In: I52425190cce4ab3cf31be025a743bf8b212fa1f9
2022-09-08 07:44:17 +08:00
Jason Hsu
2ee7ebdf61 Merge changes If6c3b2f3,I8dafefbb
* changes:
  Fix 'Hearing aids' of Accessibility page didn't display connected info promptly when mobile restart
  Fix after dis/reconnect HA, DUT will request to re-pair one side of HA
2022-09-06 08:26:37 +00:00
jasonwshsu
6e7a8422ac Fix 'Hearing aids' of Accessibility page didn't display connected info promptly when mobile restart
Root Cause: get empty result in hearingAidProfile.getConnectedDevices()

Solution: Need to listen to onServiceConnected() to wait for HearingAidService get connected

Bug: 243489972
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityHearingAidPreferenceControllerTest
Change-Id: If6c3b2f3df81388c44e744e364e6258bde8bb645
2022-09-06 15:08:34 +08:00
menghanli
8541423080 Fix incorrect remove animation switch status after turned off Talkback
Root cause: The ag/3373822 introduce the comparison by string since 2017, but it would conflict with AccessibilityService#setAnimationScale(float) which is  added by API level 33.
Solution: Use float comparison instead and observe the key changed to update status if the setting page is on foreground.

Bug: 244687190
Test: atest DisableAnimationsPreferenceControllerTest
Change-Id: I59b7edb70a27af4276eccd6f19d2ef46ba30b604
2022-09-06 09:43:37 +08:00
Menghan Li
d7d1d9451b Merge "Refactor ToggleAutoclickPreferenceFragment to improve maintainability" 2022-09-05 23:39:44 +00:00
jasonwshsu
88f36dccc7 Fix after dis/reconnect HA, DUT will request to re-pair one side of HA
Root Cause: Another side of HA jumps to connecting state after pair-other-ear dialog appears.

Solution: Listen to onDeviceAttributesChanged() callback to know when
the sub device gets connected, then to dismiss dialog.

Bug: 236782832
Test: make RunSettingsRoboTests ROBOTEST_FILTER=HearingAidUtilsTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=HearingAidPairingDialogFragmentTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AvailableMediaDeviceGroupControllerTest
Change-Id: I8dafefbb05e7cf1cadf37a7acbb2c5d66f2d0a78
2022-09-03 18:28:11 +08:00
Lauren Winston
28b4b34f92 Add toggles for two Software Cursor settings: keyboard shift and trigger
hints.

Bug: 242218807
Test: atest SoftwareCursorKeyboardShiftPreferenceControllerTest and
SoftwareCursorTriggerHintsPreferenceControllerTest

Change-Id: I872291ee90b54842b237868a72d61b38efbfd886
2022-08-29 22:12:46 +00:00
Kweku Adams
5949fccc7a Remove duplicate strings.
"Yes" and "no" were redefined many times with no clear benefit, so this
consolidates them into one definition.

Bug: 243843096
Test: Build, install, and open the Settings app
Test: atest SettingsRoboTests
Change-Id: I5f84d09f223efd478461ded93aeac82bf7b128d8
2022-08-26 00:07:08 +00:00
menghanli
66a96d220e Fix tapping magnification crash in vision settings setup screen
Root cause: ag/17286343 introduces hiding the settings entry in magnification settings if window magnification feature is not supported. It causes SuW page cannot find the settings preference reference.
Solution: Add null pointer check.

Bug: 242242266
Test: Manual testing
Change-Id: I1007a580047dd302228b28c15b82e958a2b01fec
(cherry picked from commit 5a87f6bbbf)
2022-08-24 21:17:46 +00:00
menghanli
5a87f6bbbf Fix tapping magnification crash in vision settings setup screen
Root cause: ag/17286343 introduces hiding the settings entry in magnification settings if window magnification feature is not supported. It causes SuW page cannot find the settings preference reference.
Solution: Add null pointer check.

Bug: 242242266
Test: Manual testing
Change-Id: I1007a580047dd302228b28c15b82e958a2b01fec
2022-08-24 11:39:33 +00:00
menghanli
057c5dc8ed Fix no show quick settings tutorial after device rotates
Root cause: Render apps below the cutout area to make the fragment recreate multiple times when the device rotates. The tutorial status is not stored correctly and try to show the tutorial when activity is finishing.
Solution: Avoid showing the tutorial when the activity is finishing and store correct tutorial status after recreate.

Bug: 239578655
Test: Manual testing
Change-Id: I3ff12e23eb971f61280ebc89014b086dc348d734
2022-08-22 15:54:05 +08:00
Menghan Li
84374522ea Merge "[Captioning preferences] Fix wrong color if default color selected" 2022-08-17 08:20:48 +00:00
menghanli
0ed28e9fd0 [Captioning preferences] Fix wrong color if default color selected
Root cause: When the default captioning color was selected, the opacity became 100% and made the opacity preference is disabled. After changing to non-default color, the opacity preference becomes enabled, but it keeps showing cached opacity in opacity preference and the preview still shows the wrong color.

Solution: Cache the latest opacity if default captioning color was selected to show the correct opacity later.

Bug: 241308551
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.accessibility
Change-Id: I7712fb25d622da62d7fb2d017e33f94ef258941b
2022-08-17 12:00:43 +08:00
Angela Wang
67efcacbc1 Fix wrong visibility of link button in a11y tutorial dialog
Root cause: the visibility of link button is not correctly set due to
the onPageSelected callback isn't called when the first page shows

Solution: Manually set the visibility of link button according to the
first tutirial page type when dialog is shown

Bug: 242141428
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityGestureNavigationTutorialTest
Change-Id: I33ed07bc7ae39d96baeeed85771c5f13e00ebf44
2022-08-15 06:01:17 +00:00
Lauren Winston
205018a854 Add a cursor preference to Accessibility Settings
Bug: 240194047

Test: atest SoftwareCursorPreferencesControllerTest and
SoftwareCursorTogglerPreferenceControllerTest

Change-Id: I97e226d8d8c0bcdfd0e2612e86b81987480063d1
2022-08-11 04:00:16 +00:00
Sunny Shao
8b17025d71 Fix slider bar is too close to bottom problem
- Extend the bottom padding of the RecyclerView.

Fixes: 219849557
Test: make RunSettingsRoboTests -j ROBOTEST_FILTER=com.android.settings.accessibility
Change-Id: I197e837ad3d199b58d1c0ba46a08b0fa04277512
2022-08-08 20:25:44 +08:00
menghanli
e57125650d Unify the caption preference class naming
Bug: 197695932
Test: make RunSettingsRoboTests
Change-Id: Ice244442ad21e6d9f006d488992e9f58cf5c8fb0
2022-08-02 10:25:15 +08:00
menghanli
cb008ccf17 Refactor ToggleAutoclickPreferenceFragment to improve maintainability
Root cause: There is a bunch of different logic of preferences in ToggleAutoclickPreferenceFragment. It’s hard to implement new features and hard to maintain and hard to be testable.
Solution: Move out logic of ToggleAutoclickPreferenceFragment into controllers to reduce the complexity of the relationship between preference and fragment.

Bug: 197695932
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.accessibility
Change-Id: I5db18d5a0c577ad67d15c2d0169a36a67e9f13db
2022-07-29 14:50:05 +08:00
menghanli
b9194c4eb8 Minor change for CaptionAppearanceFragment
1. Move unnecessary public variables into local variables
2. Use %s to update locale preference summary
3. Correct the test case name of CaptionPreviewPreferenceControllerTest

Bug: 197695932
Test: make RunSettingsRoboTests ROBOTEST_FILTER=com.android.settings.accessibility
Change-Id: I58d4d590b9b6d46c27d389217f846a780d755891
2022-07-29 14:33:43 +08:00
Menghan Li
6544dee983 Merge "Refactor CaptionAppearanceFragment to improve maintainability (5/n)" 2022-07-26 22:18:44 +00:00