Commit Graph

221 Commits

Author SHA1 Message Date
Yiyi Shen
ca8885a549 Fix SettingsRoboTests for connecteddevice.
Bug: 296507968
Test: atest
Change-Id: I5b1e868efeffd0ae185c93623c1daa4a5486e751
2023-09-28 14:49:03 +08:00
Peter Kalauskas
80e914a263 Enable use_resource_processor for all sysui deps
This will make the build faster

Test: m checkbuild
Bug: 295208392
Change-Id: If75acb6b1c3f204e3686c20cef609f7cfabe15cf
2023-09-21 23:09:39 +00:00
Angela Wang
d84c60f2ac Merge "Fix test failure of AvailableMediaDeviceGroupControllerTest" into main 2023-09-12 06:06:08 +00:00
Eric Rahm
802b922593 Revert "Test Fix SettingRobolectricTest Fail"
This reverts commit 818f77cd1f.

Reason for revert: Underlying issue fixed in ag/23454315.

Bug: b/275023433
Test: atest SettingsGlobalRoboTests

Change-Id: I1af272efd00b3c5bd35310512f5712d5d1c7d834
2023-09-11 13:38:36 +00:00
Angela Wang
bb1fe04afb Fix test failure of AvailableMediaDeviceGroupControllerTest
Prevent test failing by avoid using ShadowFragment in the test. This
will cause `androidx.fragment.app.SuperNotCalledException` when creating
HearingAidPairingDialogFragment.

Bug: 299597695
Test: atest AvailableMediaDeviceGroupControllerTest
Change-Id: I99b5213cb78aad97fcb7e44e1babcf6c7f11636e
2023-09-08 11:58:24 +00:00
Yiyi Shen
71d9c21856 Add a new section to show eligible Fast Pair devices.
The section only show at most 3 devices. If the device list size is
greater than 3, we will show a "See all".
The device Preference is ordered. FastPairDeviceUpdater will handle the
order logic.
Bug: 296507968
Test: FastPairDevicePreferenceControllerTest

Change-Id: I9692d5740dbc31ff50db0ebbf2c5535b726277c9
2023-09-04 11:32:32 +08:00
Yiyi Shen
b7c914dc9f Add Fast Pair devices "See all" page.
Bug: 296507968
Test: FastPairDeviceGroupControllerTest
Change-Id: I3939f65ac9262673d99e7041df5b9dc04bd43722
2023-08-31 17:07:41 +08:00
Chaohui Wang
cc2133ba8e Clean up unused fields from EntityHeaderController
Bug: 295260929
Test: manual - on pages with header
Test: robo test
Change-Id: Icebd63dbb5d3d44b4b46d3bececb8b65b30b4883
2023-08-21 13:58:07 +08:00
Rex Hoffman
3c961e1c0e Setup external/robolectric for SettingsRoboTests
Current failing tests: ab/I64100010182936387
Had to Ignore some of com.android.settings.accessibility tests, which will be fixed separately

Bug: 261728063
Test: atest SettingsRoboTests -- --test-arg com.android.tradefed.testtype.IsolatedHostTest:java-flags:-XX:CompressedClassSpaceSize=3g

Change-Id: I4a0cb992db924936826e0c9808accc78dddb5f30
2023-08-17 22:33:20 +00:00
Vania Januar
e2108b4b5b Merge "Listen to USB_STATE events in the StylusUsbFirmwareController." into udc-qpr-dev am: a928e9202f am: 728bf8b8b7
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/24446427

Change-Id: I4d2d00428e09d1f2a07f6a777328b42c146dd183
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-08-17 13:29:07 +00:00
Vania Januar
d8ee6665f7 Listen to USB_STATE events in the StylusUsbFirmwareController.
Test: UsbStylusBroadcastReceiverTest
Bug: 288850921
Change-Id: I415e5ca04d371a235eff31327b086d568bcc00f0
2023-08-16 15:18:40 +00:00
Vania Januar
eb83c22f62 Merge "Add the USB device parameter to usb stylus feature preference provider." into udc-qpr-dev am: 85de68a968 am: ec9b0a08ae
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/24282035

Change-Id: Id480cb6f6a0920c37a5bf8a8c4de68ce33225a0c
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-08-14 17:32:16 +00:00
Vania Januar
85de68a968 Merge "Add the USB device parameter to usb stylus feature preference provider." into udc-qpr-dev 2023-08-14 16:47:40 +00:00
Vania Januar
7dd94771bc Merge "Use two-target preference for stylus handwriting toggle." into udc-qpr-dev am: 2d77f72cb6 am: 2afb275e09
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/24342943

Change-Id: I943ad68a44de16de1899ad4a613c2c221c698f63
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-08-09 15:13:35 +00:00
Vania Januar
558d9f8750 Add the USB device parameter to usb stylus feature preference provider.
Test: StylusUsbFirmwareControllerTest
Bug: 291922092
Change-Id: Ie43bceb807e18ff56d01f6e99316db6e2820383b
2023-08-09 11:06:23 +00:00
Vania Januar
24a2863751 Use two-target preference for stylus handwriting toggle.
Bug: 294279890
Test: StylusDevicesControllerTest
Change-Id: I8e83fb3a8bb76469c4bf1b99df5524930ebad086
2023-08-08 13:50:19 +01:00
Chaohui Wang
2541381259 Fix references to resources for Settings
Bug: 293810334
Test: m Settings
Change-Id: Ie140278f492ef7e1c062ec1ecae2866c521a86aa
2023-08-08 01:56:05 +00:00
Vania Januar
bbf2dc4991 Merge "USB firmware update for stylus in Stylus USI Device Details" into udc-qpr-dev 2023-07-20 13:42:55 +00:00
Vania Januar
982a13a6e8 Merge "Do not show a summary in Tail button preferences if no app found" into udc-qpr-dev am: 82c36c5cb5 am: 53988c6fe7
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/23876589

Change-Id: I1cdf019d8dd73e233e647670af4c6d8d48bf9851
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2023-07-19 16:13:53 +00:00
Vania Januar
986fe4ebc1 USB firmware update for stylus in Stylus USI Device Details
Bug: 288850921
Test: StylusUsbFirmwareControllerTest, UsbStylusBroadcastReceiverTest
Change-Id: Ic7cb35799ff00f9998ca569eb4ae091f8010780a
Merged-In: Ic7cb35799ff00f9998ca569eb4ae091f8010780a
2023-07-18 14:09:05 +00:00
Vania Januar
f04363547a USB firmware update for stylus in Stylus USI Device Details
Bug: 288850921
Test: StylusUsbFirmwareControllerTest, UsbStylusBroadcastReceiverTest
Change-Id: Ic7cb35799ff00f9998ca569eb4ae091f8010780a
2023-07-17 13:49:30 +00:00
Vania Januar
ebc0b9c323 Do not show a summary in Tail button preferences if no app found
Bug: 289054758
Test: StylusDevicesControllerTest
Change-Id: I985194b2e64d36844a9b88f19394db2728ea70e4
2023-07-03 14:44:59 +01:00
Ilyas Sung
813d12dd8c Migrate the setUsbDataSignalingEnabled api to the device policy engine.
- Change isUsbDataSignalingEnabledForUser() to isUsbDataSignalingEnabled()

Bug: 283934505
Test: Manual Test
Change-Id: I1327eaadeb41b64041d722f81a7df5260035a1d1
2023-06-02 12:41:35 +00:00
Vania Januar
3042747ddb Minor fixes and tests for multiple full users for stylus notes app
Test: StylusDevicesControllerTest
Bug: 278555728
Change-Id: I0279cb8d9aba4781958e1e5937447501876919ec
2023-05-18 15:16:48 +00:00
Vania Januar
2e8e1339a2 Merge "Disambiguate default notes app user from stylus settings" into udc-qpr-dev 2023-05-17 16:03:20 +00:00
Vania Januar
64d64fdd36 Disambiguate default notes app user from stylus settings
Users can now select between work or personal notes app to be the app
that opens when the stylus tail button is pressed via a dialog.

Bug: 278555728
Test: StylusDevicesControllerTest
Change-Id: I9c63de6f11deb357b0497c7b972d4ac19b876e1f
2023-05-16 15:57:09 +01:00
Vincent Wang
818f77cd1f Test Fix SettingRobolectricTest Fail
Bug: b/275023433
Test: NA
Change-Id: If2dcb8f6c196327129ccc9375b190e394c994efa
2023-05-09 06:26:39 +00:00
Vania Januar
a1af049378 Guard against null input device in StylusDeviceUpdater
Bug: 279170207
Test: StylusDeviceUpdaterTest
Change-Id: Ib4a3f12eaceb87370c800a9dc7eda819c706cd3b
2023-05-02 09:36:43 +00:00
Vania Januar
a07ff94f83 Merge "Fix broken test for stylus button Settings." into udc-dev 2023-04-05 09:46:25 +00:00
Taran Singh
a6c79eb283 Merge "[Settings] Make scribe setting default_on and secure" into udc-dev 2023-03-29 07:28:33 +00:00
Vania Januar
8c6699906a Fix broken test for stylus button Settings.
Test was not negated when the Settings was renamed.

Test: StylusDevicesControllerTest
Bug: 267595764
Change-Id: Ic369d0fefe3f23a9489fe49eff8329e755988178
2023-03-24 12:18:42 +00:00
Lifu Tang
caa1b51ef2 Revert "Remove duplicate strings."
Revert submission 19748582-settings_yesno

Reason for revert: Common strings in English could be translated into different strings in other languages.

Reverted changes: /q/submissionid:19748582-settings_yesno

Bug: 272603842
Test: build and open Settings app
Test: atest SettingsRoboTests
Change-Id: Iaad301c5513478fb95e40987ea3ccb4f923d71fa
2023-03-15 22:39:24 +00:00
Taran Singh
1ec8dff6d6 [Settings] Make scribe setting default_on and secure
1. Migrate scribe pref to Settings.Secure
2. Consider enabled when not set.

Bug: 272376168
Test: atest StylusDevicesControllerTest StylusHandwritingPreferenceControllerTest.java


Change-Id: I4973a93c2cfe8c44f461b68fbda1a853e49340a2
2023-03-10 18:31:03 +00:00
Vania Januar
4837c05b3f Remove battery event time detection from StylusUpdater.
StylusManager battery listener now triggers whenever the
stylus battery becomes stale, so we no longer need to track
event time from the updater.

Bug: 270422546
Test: StylusDeviceUpdaterTest
Change-Id: I36f5dc132a95f7d4649cec2bda1d457edc1f64bd
2023-03-08 18:33:56 +00:00
Vania Januar
7584bbc015 Invert STYLUS_BUTTONS_DISABLED to avoid double negatives.
Test: StylusDevicesControllerTest
Bug: 267595764
Change-Id: I9f74aaf064eb08d4abb6800d59ee3c224f9793b8
2023-02-02 12:13:39 +00:00
Vania Januar
e0da6513dc Merge "Show Scribe toggle in Stylus settings only if supported by current IME." 2023-01-23 13:30:42 +00:00
Vania Januar
5b52104be1 Show Scribe toggle in Stylus settings only if supported by current IME.
This also sends the user to the Scribe settings activity if
a settings activity exists for the current IME.

Bug: 255732419
Test: StylusDevicesControllerTest
Change-Id: I955a0f5a017b247e7623d66613e09dc0f7256ff2
2023-01-10 17:44:14 +00:00
Vania Januar
ce93c656aa Show None default app in stylus preference if no Notes holder.
This also fixes the role holder not updating when the
default role holder has changed.

Test: StylusDevicesControllerTest
Bug: 254834764
Change-Id: Iec7ed7698f18279da9a04918dcdf3e20e73609d1
2023-01-06 11:25:35 +00:00
Vania Januar
e5651cd86e Replace placeholder ROLE_ASSISTANT with ROLE_NOTES.
Bug: 254834764
Test: StylusDevicesController
Change-Id: I2303034180f9609db8f1a6d663c389a55dd04600
2023-01-04 16:22:38 +00:00
Vania Januar
57822a67a8 Pass CachedBluetoothDevice into StylusDevicesController.
Styluses can now be identified using the newly added DEVICE_TYPE_STYLUS
metadata.

Bug: 251200056
Test: StylusDevicesControllerTest
Change-Id: Ie89f6419cd16ed97299944b35497c6b2ee764dab
2022-12-29 12:31:31 +00:00
Vania Januar
dc2980d220 Stylus updater in ConnectedDevicesGroupController.
This updater is responsible for listening to USI stylus
battery usage, and bluetooth stylus connection, to determine
whether to show the USI stylus preference on the Connected devices
page.

Adds an entrypoint to the StylusUsiDetailsFragment that shows
details for USI styluses.

Bug: 250909304
Test: StylusDeviceUpdaterTest
Change-Id: I6ae6b6ef880b3b3cd7430d4d35d471b14283369f
2022-12-21 09:20:07 +00:00
Vania Januar
44cb400f95 USI Stylus settings Fragment.
The USI stylus settings fragment shows specific preferences
for USI stylus devices only.

There is currently no way to access this fragment from the UI.

Bug: 251201006
DD: go/stylus-connected-devices-doc
Test: StylusUsiHeaderControllerTest
Change-Id: I18223abc8113dce977f57f930ba701da0a34cc18
2022-12-16 10:11:42 +00:00
Vania Januar
259dec18b2 Toggle for disabling stylus buttons.
This change enables users to disable stylus button
pressed from the Stylus Connected Device details Settings page.

Bug: b/251199452
Test: StylusDevicesControllerTest
Change-Id: I807ef8d5a56c2177037dcb527630d8bfb8f86f7c
2022-11-30 16:08:20 +00:00
Vania Januar
2df165a58a Add a stylus controller to Bluetooth Device Details.
Feature is currently flagged behing SETTINGS_SHOW_STYLUS_PREFERENCES.

Bug: 251201006
Test: SettingsRoboTests StylusDevicesControllerTest
DD: go/stylus-connected-devices-doc
Change-Id: I438b7fe5ca1c94f9dfb506c8918d0e6cb005ca33
2022-11-30 16:06:14 +00: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
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
Betty Chang
ba3405bd37 Merge "Make bluetooth switch not discoverable via SliceDeepLinkTrampoline" into tm-qpr-dev am: c8f6bba271 am: f200134fc4
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Settings/+/20410007

Change-Id: If5d07a5a3ae099d1cb765a2fbb3069ab0ac00285
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
2022-11-16 19:57:13 +00:00
changbetty
c706aa6108 Make bluetooth switch not discoverable via SliceDeepLinkTrampoline
Bug: 244423101
Test: make RunSettingsRoboTests ROBOTEST_FILTER=BluetoothSwitchPreferenceControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=BluetoothDashboardFragmentTest
Test: manual test by test apk

Change-Id: I13562d227e06627fac33239a9d21fd405a18d012
2022-11-08 08:50:29 +00:00
Michael Groover
6ce57b67fb Add unaudited exported flag to exposed runtime receivers
Android T allows apps to declare a runtime receiver as not exported
by invoking registerReceiver with a new RECEIVER_NOT_EXPORTED flag;
receivers registered with this flag will only receive broadcasts from
the platform and the app itself. However to ensure developers can
properly protect their receivers, all apps targeting U or later
registering a receiver for non-system broadcasts must specify either
the exported or not exported flag when invoking #registerReceiver;
if one of these flags is not provided, the platform will throw a
SecurityException. This commit updates all the exposed receivers
with a new RECEIVER_EXPORTED_UNAUDITED flag to maintain the existing
behavior of exporting the receiver while also flagging the receiver
for audit before the U release.

Bug: 234659204
Test: Build
Change-Id: I8fbcf69575d829f26e02d661498d69f5fc8740d0
2022-10-11 17:26:02 -05: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