Commit Graph

198 Commits

Author SHA1 Message Date
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
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
jasonwshsu
acd3f94fde Pop up pairing another ear dialog when detecting hearing aid is a set
* Pop up dialog in 'Connected deivce' page and 'Accessibility -> Hearing
  aids' page

Bug: 225117454
Bug: 226511985
Test: make RunSettingsRoboTests ROBOTEST_FILTER=HearingAidPairingDialogFragmentTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AvailableMediaDeviceGroupControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=AccessibilityHearingAidPreferenceControllerTest
Test: make RunSettingsRoboTests ROBOTEST_FILTER=HearingAidUtils

Change-Id: I34a1e3ac680a7efe97dc501bfbe93f840ad16364
2022-05-14 22:16:22 +00:00
Hugh Chen
205752dcf2 Make bluetooth not discoverable via SliceDeepLinkTrampoline
- Don't let device be discovered when the user launch "Connected Devices
  settings" through SliceDeepLinkTrampoline.

Bug: 228450811
Test: make -j42 RunSettingsRoboTests and use test apk to manually test
to verify the device is not discoversable when open "Connected settings"
through test apk.

Change-Id: I5490b58675b1fd9fc36305766867f65caa6ccb6c
2022-05-10 09:47:19 +00:00
Hugh Chen
ec0c171735 Fix can't select the [USB Tethering] item in [Developer Options]
- This CL is using 'USB_CONFIGURED' to check whether the USB enumeration
  is completed from the intent. If 'USB_CONFIGURED' is true then update
  the UI.

Bug: 229200265
Test: make -j65 RunSettingsRoboTests
Change-Id: Icab05e37ae3fcc9f1bf404a610fc97c368c453f5
2022-05-03 08:00:58 +00:00
Hugh Chen
aadc44ae26 Fix default usb settings will set wrong function when onPause()
Bug: 229200265
Test: make -j64 RunSettingsRoboTests
Change-Id: Ibee2d39af8b341d03117d96029446ddcd45921fe
2022-04-18 12:16:57 +00:00
Hugh Chen
99000589be Fix broken settings tests
Bug: 214907472
Bug: 214907514
Test: make -j64 RunSettingsRoboTests
Change-Id: If87b1041f2e6357241963240efb5337ab31610bc
2022-01-18 05:50:28 +00:00
Tsung-Mao Fang
99c4cabe14 Ignore broken tests
Test: Run all robo tests
Bug: 214906480
Bug: 214906101
Bug: 214906504
Bug: 214907514
Bug: 214907475
Bug: 214907472
Bug: 214907388
Bug: 214906107
Change-Id: I47dd81ee72f3a55b2f2a30a7a5cb5c68758fbc9a
2022-01-17 18:31:04 +08:00
Hugh Chen
f5a236e0e8 Fix NPE on UsbManager in w/o usb devices
Bug: 206987614
Test: make -j64 RunSettingsRoboTests
Change-Id: I9ed4c2e803f3e7018518380667658ca0015f31a7
2021-11-23 09:11:22 +00:00
Hugh Chen
d3abbb9821 Fix make Bluetooth discoverable without additional permission
- Only enable device can be discoverable when the user launch
  "Connected Devices settings" through settings and systemui

Bug: 194695497
Test: make -j42 RunSettingsRoboTests and use test apk to manually test
to verify the device is not discoversable when open "Connected settings"
through test apk.

Change-Id: Ia04ab759b737acf30b782f5c5831dd59f25fb257
2021-10-28 09:14:46 +00:00
Hugh Chen
ba30b04cc3 Fix USB tethering is not turned on with a single tap
Before this CL, the USB default settings will set default usb functions
to RNDIS when tethering is started. Because in some devices, the NCM
is used instead of RNDIS to start tethering. If RNDIS is set in the
device that uses NCM to start tethering, it will cause start
tethering failed.

This CL will use the current functions to set default usb functions
to fix this issue.

Bug: 195068679
Test: make -j42 RunSettingsRoboTests
Change-Id: Ic9353c5ac76c0cd517318a4304fa214d6b2201d2
2021-08-06 03:13:17 +00:00
Yuri Lin
e9f13fbd5e Rename RadioButtonPreference -> SelectorWithWidgetPreference.
This change is to reduce ambiguity as we're adding the option to style the preference like a checkbox as well.

Bug: 190180868
Test: SelectorWithWidgetPreferenceTest, RunSettingsLibRoboTests
Change-Id: Ie414347bf67ed394ef495604890c5851fc42dbc7
2021-07-20 17:01:21 -04:00
Hugh Chen
112a638cba Fix it will auto switch back to "No data transfer" after selecting "USB Tethering"
Before this CL, the USB option didn't handle whether FUNCTION_NCM
existed in the intent extra when tethering was started which resulted
in some devices that enable NCM will have incorrect UI.

This CL added a condition to check whether FUNCTION_NCM existed in the
intent extra or not to fix this UI issue.

Bug: 192046902
Test: make -j42 RunSettingsRoboTests
Change-Id: Icb8548409930d59dc3a08c25e418c9a1ddb9f33c
2021-07-09 10:52:50 +08:00
Yanting Yang
3e2313e958 Update homepage summaries
- Network & internet
- Connected devices
- Display
- Wallpaper & style
- Accessibility
- Tips & support
- Also clear the redundant codes and tests.

Fixes: 183642373
Fixes: 189981034
Fixes: 190011428
Fixes: 190015037
Test: robotests & visual
Change-Id: Ide19fa5aff67e093d86b259c5e7a307b9ad37550
2021-06-06 12:28:03 +08:00
Hugh Chen
3a829025e5 Fix test case fail in ConnectedDeviceDashboardFragmentTest
Bug: 189589354
Test: make RunSettingsRoboTests
Change-Id: I201f7b1fbd2b7ab61b1afa1c920ee203382f54c9
2021-05-31 10:22:41 +08:00
Hugh Chen
51b6605aef Fix connected devices settings jank issue
Completed the UI in displayPreference() to fix jank issue.

Bug: 188752628
Test: make RunSettingsRoboTests
Change-Id: Ib97b76e1b8622424ad481597f63d3540fb0bfc5b
2021-05-26 17:37:13 +08:00
Hugh Chen
c7dbd26fbf Fix test case failed
Fix ConnectedDeviceDashboardFragmentTest test case failed.

Bug: 187999771
Test: make RunSettingsRoboTests -j56
Change-Id: I7c2617d1305c3e648f14ba8982d716ef1034e66e
2021-05-14 16:23:35 +08:00
Yanting Yang
c37abc9edb Merge "Add summary back to the homepage" into sc-dev 2021-05-07 09:00:32 +00:00
TreeHugger Robot
e6b78a5ada Merge "Fix the section below "Pair new device" moves up a few pixels" into sc-dev 2021-05-06 07:58:25 +00:00
Yanting Yang
d1312e8e6e Add summary back to the homepage
Also update some summaries with new strings.

Bug: 183586663
Test: robotests & atest & visual

Change-Id: I692be9b34e8867501aaa8c8e40428870b99644f8
2021-05-06 00:27:37 +08:00
Hugh Chen
db53d1c6f8 Fix borken test on Bluetooth and connected package
Bug: 187239965
Test: make RunSettingsRoboTests -j56
Change-Id: Ic0d60a6cd46b1211efb2021f079c0b0a6534b383
2021-05-05 14:31:01 +08:00
Hugh Chen
139ff59346 Fix the section below "Pair new device" moves up a few pixels
This CL add new controller that used to show the summary when
bluetooth is off. It can prevent a jank since the UI is decided
before render.

Bug: 182232469
Test: make RunSettingsRoboTests -j56
Change-Id: I78eb757cd1b636fbb18028fb2294861467bc6eba
2021-05-04 20:45:41 +08:00
Hugh Chen
ddafb202bd Fix usb tethering switch back to none after off/on the screen
This CL adds conditions to check whether usb is connected or not.
If usb is not connected or tethering is not started don't update the
state.

Bug: 157709648
Test: make RunSettingsRoboTests -j56
Change-Id: Ifbf5900923419d6abf35834b196aab12601076e4
2021-04-28 09:12:15 +00:00
TreeHugger Robot
6535fe00c7 Merge "Fix battery level of earbuds bt devices is inconsistent" into sc-dev 2021-03-09 03:07:42 +00:00