* changes:
[Hearing device shortcut] Provide a way to open accessibility hearing device settings via intent
[Hearing device shortcut] Setup shortcut for hearing device
Root cause: A11y settings only handle the package install/uninstall/update, but it does not observe the component status.
Solution: Add onPackageModified() to refresh the list.
Bug: 264697450
Test: Manual test
Change-Id: I779c4ba87c6f54616e9c4c6378db91d9ff611b24
This should also address a bug where this method used to only check
class name instead of package+class.
Bug: 264307062
Test: atest ToggleAccessibilityServicePreferenceFragmentTest
Change-Id: Ia5f602c6fbc1d23c88dc3d5076c701445b692887
* hearing device shortcut trigger action is to open accessibility hearing device settings. Framework needs a way to open it.
Bug: 237625815
Test: adb shell am start -a \
"android.settings.ACCESSIBILITY_DETAILS_SETTINGS" \
--es android.intent.extra.COMPONENT_NAME \
"com.android.server.accessibility/HearingAids"
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityDetailsSettingsFragmentTest
Change-Id: Ie47e24d29998eac0cf4805e1ac4e7d2bcb77ed8e
* Hearing aids page need to set restricted mode to DISALLOW_CONFIG_BLUETOOTH, so change AccessibilityShortcutPreferenceFragment to extend RestrictedDashboardFragment
* move ShortcutPreference under the device control category for the 1st order
Bug: 237625815
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityShortcutPreferenceFragmentTest
Change-Id: I13da8d979694aeab76d8a10edf1348c0ee7810f6
Action:
By super to access the parent function to save the highlighted state of the preference.
Bug: 250800752
Test: manual test
Change-Id: Idca9a4f31910638c19f26ff01136530d17677055
Action:
Using post messages to update the UI to avoid the timing issue.
Bug: 223665259
Test: make RunSettingsRoboTests ROBOTEST_FILTER=PreviewSizeSeekBarControllerTest
Change-Id: I31ef0d50a417fb76d14c1caf21926f1618ac3c4f
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
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
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
Action:
Observe the settings content change and then update the corresponding preference state.
Bug: 245441772
Test: manual test
Change-Id: I6205c2ebe0d1eda141e9b3bd00e4a21dfdba1760
Solution:
1) Update the preference state when the settings content change.
Bug: 246869845
Test: manual test
Change-Id: Ib776100e6940d09f5549c3edc2c5f5c6963c6d0e
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
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
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
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
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
This reverts commit 28b4b34f92.
Reason for revert: Software Cursor is not launching in Android U
Test: manual
Change-Id: I213cf64ca94fce51883a30a9d6b734b4ed874dad
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
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
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
Use different source metric categories to distinguish different launch sources of the BluetoothPairingDetail page.
Bug: 237344016
Test: manual
Change-Id: If762e87414055f3e497f99ea6885f7736b7193cd
Merged-In: If762e87414055f3e497f99ea6885f7736b7193cd
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
Goals: Set correct order into.
Fix: 233326281
Test: manual test
Change-Id: I88c65aa9c3f05281a5c5090c2ca9503327bb580f
Merged-In: I88c65aa9c3f05281a5c5090c2ca9503327bb580f
(cherry picked from commit 4b13620457)