Commit Graph

1050 Commits

Author SHA1 Message Date
jackqdyulei
7015e20a55 Update PBAP info for all pairing dialogs.
This is a bug from ag/4210612, in which it only update PBAP info
for USER_ENTRY_DIALOG. So in other kind of dialogs it never upload
correct PBAP info to bluetooth backend.

This CL fix it by updating PBAP for all dialogs.

Change-Id: Ia39eee1acaece555e8e5a305ec2c803294d7efbd
Fixes: 109842273
Test: RunSettingsRoboTests
2018-06-19 17:23:32 -07:00
Fan Zhang
c7162cd24d Reorder and clean up imports.
Test: rebuild
Change-Id: I178485c84ae7146f991fd77b6d7504b029942a68
2018-06-18 15:45:09 -07:00
timhypeng
1c21bff103 To show hearing aids device in the available devices group
Bug: 79553082
Test: make -j50 RunSettingsRoboTests
Change-Id: I8fe5eb653d332ef5ac4a566146f150774581167c
2018-06-12 17:52:21 +08:00
TreeHugger Robot
e68598380e Merge "Shown toast when BT turned on" 2018-05-31 07:00:27 +00:00
hughchen
3051845840 Shown toast when BT turned on
* Shown "Bluetooth turned on" toast only when BT turned on in "Pair new device"
* Add test to verify shown toast function can be called when BT turned on.

Bug: 79383997
Test: make -j42 RunSettingsRoboTests ROBOTEST_FILTER=BluetoothPairingDetailTest
Change-Id: I25f75aaa04063d9ef8a0df4bb06aeaa70d7ac146
2018-05-31 11:03:37 +08:00
Hansong Zhang
7cc441bf2f DO NOT MERGE Give PBAP permission only after user confirms am: e36ca3e96d
am: 48aa959b14

Change-Id: I13480b0bf786ddd05959cb597492041e273d920c
2018-05-30 13:32:52 -07:00
Hansong Zhang
48aa959b14 DO NOT MERGE Give PBAP permission only after user confirms
am: e36ca3e96d

Change-Id: I6fe221ad379ab6398b01bfb96fe7390d0369c15d
2018-05-30 13:23:53 -07:00
Hansong Zhang
aaf637ff5f Merge "Give PBAP permission only after user confirms" into pi-dev am: fcac34d723
am: cd09ff50bb

Change-Id: I404d323a39dc7a42f20c3411aebb2237c1fb13f3
2018-05-30 10:46:36 -07:00
Hansong Zhang
500c83c1bc Give PBAP permission only after user confirms
Bug: 72872376
Test: manual
Change-Id: I9617e3c10bf19e22f9a8f172332a83bbbebaf4a4
2018-05-29 22:15:51 +00:00
Matthew Fritze
111fc0344b Merge "Fix DND crash from SpringboardActivity" into pi-dev am: 3f790b76b0
am: 7fcbaf4ac9

Change-Id: I999288a61ebc780986ed108cd0b255db6ee4d791
2018-05-29 12:52:43 -07:00
TreeHugger Robot
3f790b76b0 Merge "Fix DND crash from SpringboardActivity" into pi-dev 2018-05-29 18:47:23 +00:00
Matthew Fritze
a559103b1b Fix DND crash from SpringboardActivity
Special case Uris need to explicitly add their intents.
This unfortunately duplicates a list of special-cased Slices,
but I have attached a bug with a plan to address this duplicity in Q.

Change-Id: I346915c32543713d33716422018d7c950cce323d
Fixes: 80065409
Test: atest SliceDeepLinkSpringBoardTest
2018-05-25 13:35:23 -07:00
Fan Zhang
934de22622 2nd attempt to fix Slice strict mode.
1. Use real BluetoothAdapter instead of settingslib version. The
   settingslib version contains calls that violates strictmode rules.
2. Override StrictMode rules in SettingsSliceProvider when it's called
   in background thread. When in background, the enforcement from Slice
   framework (StrictMode#ThreadPolicy) is not useful and can be safely
   ignored.

Change-Id: I68523148f4c1dc88a54e207447d21ec439478cdf
Bug: 79985175
Test: robotests
2018-05-25 10:39:59 -07:00
Fan Zhang
2313b24215 2nd attempt to fix Slice strict mode.
1. Use real BluetoothAdapter instead of settingslib version. The
   settingslib version contains calls that violates strictmode rules.
2. Override StrictMode rules in SettingsSliceProvider when it's called
   in background thread. When in background, the enforcement from Slice
   framework (StrictMode#ThreadPolicy) is not useful and can be safely
   ignored.

Change-Id: I68523148f4c1dc88a54e207447d21ec439478cdf
Merged-In: I68523148f4c1dc88a54e207447d21ec439478cdf
Fixes: 79985175
Test: robotests
2018-05-25 16:37:56 +00:00
Matthew Fritze
e31e60ce94 Add Location Slice
Location is an intent-only Slice.

Test: Robotests
Change-Id: Ie9ed05be2224f2c4b393ed201d5f313f80183edc
Merged-In: I07e27683b46fe4ded8215009a983bb909555fb59
Fixes: 67997314
2018-05-23 08:09:07 -07:00
Matthew Fritze
f1a7006d31 Add Location Slice
Location is an intent-only Slice.

Test: Robotests
Bug: 67997314
Change-Id: I07e27683b46fe4ded8215009a983bb909555fb59
2018-05-22 21:13:47 -07:00
hughchen
d9f1e1c049 Merge "When BT is off hide rename preference" into pi-dev am: a419c4717d
am: a29fe74817

Change-Id: I9e2068de44126344af52532fbe076acd9121883d
2018-05-22 11:18:15 -07:00
TreeHugger Robot
a419c4717d Merge "When BT is off hide rename preference" into pi-dev 2018-05-22 17:48:31 +00:00
hughchen
4e2160904d When BT is off hide rename preference
* Hide the preference when BT is off, shown preference when BT is on.

Bug: 78247352
Test: make -j40 RunSettingsRoboTests ROBOTEST_FILTER=BluetoothDeviceNamePreferenceControllerTest
Change-Id: Id1e11c7b546d7ac5bc8606e8645d07d77f2b522f
2018-05-22 09:35:34 -07:00
Matthew Fritze
25fc14c607 Add Bluetooth Slice
Bluetooth slice is added a special case, due to the migration of
bluetooth to a Switch Bar instead of a preference with a controller.

Change-Id: I8b70bb66c862255a4e8d2426ac09939ba6197624
Merged-In: Icfdcd77601ad1e64e0f6c352a8d691f0181515c8
Fixes: 67997327
Test: robotests
2018-05-22 06:59:49 -07:00
Matthew Fritze
d2bb2ab259 Add Bluetooth Slice
Bluetooth slice is added a special case, due to the migration of
bluetooth to a Switch Bar instead of a preference with a controller.

Bug: 67997327
Test: robotests
Change-Id: Icfdcd77601ad1e64e0f6c352a8d691f0181515c8
2018-05-21 20:03:24 -07:00
Hansong Zhang
e36ca3e96d DO NOT MERGE Give PBAP permission only after user confirms
Bug: 72872376
Test: manual
Change-Id: I9617e3c10bf19e22f9a8f172332a83bbbebaf4a4
2018-05-18 17:31:42 -07:00
TreeHugger Robot
09b8210d3f Merge "Rename the Utils class in settingslib.bluetooth" 2018-05-18 17:29:58 +00:00
hughchen
fc6030983f Merge "Add Rename device on Bluetooth screen" into pi-dev am: 667cbc5846
am: 5783578aad

Change-Id: Ibc9a0adc76de9c411391d612238fa39d42d1ddc3
2018-05-17 02:17:55 -07:00
TreeHugger Robot
667cbc5846 Merge "Add “Rename device” on Bluetooth screen" into pi-dev 2018-05-17 09:08:30 +00:00
Kunhung Li
38438a975a Rename the Utils class in settingslib.bluetooth
Make it more unique to speficy related bluetooth, so change class name from Utils to BluetoothUtils.

Bug: 78676509
Test: atest RunSettingsRoboTests
Change-Id: Ic3627ce44627be39fbc010ad5ef630ad3c429836
2018-05-17 10:32:26 +08:00
timhypeng
bafae44cb2 Click left side of list in "previously connected devices" should connect to the device
* In "previously connected devices", to connect device
* In "Available media devices", to activate device

Bug: 77607104
Test: make -j50 RunSettingsRoboTests
Change-Id: If5005031bd3f5dc4950abf2c77575785cd6f67b1
Merged-In: If5005031bd3f5dc4950abf2c77575785cd6f67b1
2018-05-15 06:07:28 +00:00
timhypeng
1ae09fe2bf Click left side of list in "previously connected devices" should connect to the device
* For fix the TreeHugger error in pi-dev, cherry pick the ag/3943978 in
  master and fix TreeHugger error. Change android.support.v7.* to androidx.*
* In "previously connected devices", to connect device
* In "Available media devices", to activate device

Bug: 77607104
Test: make -j50 RunSettingsRoboTests
Change-Id: If5005031bd3f5dc4950abf2c77575785cd6f67b1
2018-05-14 11:26:43 +08:00
Ryan Lin
b5f9ba4e9b Merge "Use another callback to notify the updater that UI should be updated" into pi-dev am: dee5035764
am: 5d7faa9696

Change-Id: I7db97d62afbdb6deacc9f0b34393697acd44b0f2
2018-05-11 15:24:30 -07:00
hughchen
211d49f28c Add “Rename device” on Bluetooth screen
* Add BluetoothDeviceRenamePreferenceController in bluetooth_screen.xml
* Refactor BluetoothDeviceRenamePreferenceController and BluetoothDeviceNamePreferenceController.
  Let these controllers can be init in xml.

Bug: 78247352
Test: make -j50 RunSettingsRoboTests
Change-Id: Iddd0cac1e973bbd82cb30fe4c18e8b359ba4ba2b
2018-05-11 16:14:43 +08:00
ryanywlin
5365eaa6db Use another callback to notify the updater that UI should be updated
Replace onConnectionStateChanged callback
with onProfileConnectionStateChanged. While
updater is notified, isFilterMatched(cachedDevice)
will decide whether to add/remove from UI based
on audio profiles and audio mode.

Bug: 76447449
Test: make RunSettingsRoboTests -j28
Change-Id: Icfba1ce2297e4638679158f9f99bae276940d885
2018-05-11 05:44:43 +00:00
android-build-team Robot
02ec86a17b Merge "Establish permanently unavailable settings" 2018-05-09 18:14:32 +00:00
android-build-team Robot
c0e0262f9c Merge "Rename SubSettingLauncher.setTitle, add java doc" 2018-05-09 18:01:10 +00:00
Matthew Fritze
bd376296cd Establish permanently unavailable settings
Distinguish between settings which are permanently unavailable on
the device, and temporarily unavailable. This enables us to restrict
which setting slices are exposed in onSliceGetDescendants.

The primary changes in this CL are renaming:
"DISABLED_UNSUPPORTED" -> "UNSUPPORTED_ON_DEVICE"
to be more clear the the setting will cannot be accessed on the device, and,
adding a new enum to encapsulate settings which are currently unavailable, but
could be enabled in the future.

Also remove UNAVAILABLE_UNKNOWN. Devs should never need this enum.

Bug: 78910582
Fixes: 79245656
Test: robotests
Change-Id: I42c2cedab66be2d76999795f46470a079cc1ec71
Merged-In: I58821a6cfd6134b3b351657b6edf5f74ead00643
2018-05-09 10:03:40 -07:00
Matthew Fritze
f87a1f3f41 Establish permanently unavailable settings
Distinguish between settings which are permanently unavailable on
the device, and temporarily unavailable. This enables us to restrict
which setting slices are exposed in onSliceGetDescendants.

The primary changes in this CL are renaming:
"DISABLED_UNSUPPORTED" -> "UNSUPPORTED_ON_DEVICE"
to be more clear the the setting will cannot be accessed on the device, and,
adding a new enum to encapsulate settings which are currently unavailable, but
could be enabled in the future.

Also remove UNAVAILABLE_UNKNOWN. Devs should never need this enum.

Bug: 78910582
Bug: 79245656
Test: robotests
Change-Id: I58821a6cfd6134b3b351657b6edf5f74ead00643
2018-05-09 08:36:59 -07:00
android-build-team Robot
7ce6ba52c5 Merge "Change references to old loadSafeLabel method" 2018-05-09 15:28:33 +00:00
hjchangliao
e86eec0c07 Rename SubSettingLauncher.setTitle, add java doc
For make this method usage more clear,
setTitle(charSequence) rename as setTitleText,
add java doc: it is only for user generated string
setTitle(int) rename as setTitleRes.

Change-Id: I972cb6a8ff90873dfdc25c23f6dc3d68103c8e4e
Fixes: 78347436
Test: make RunSettingsRoboTests
2018-05-09 10:00:05 +08:00
hughchen
8dcd550d36 Remove the gear icon and change tapping event
* Remove the gear icon in "currently connected" section.
* Change the tapping event in "currently connected" section.
  When tapping device in this section, take user to device detail page.

Bug: 78490845
Test: make -j40 RunSettingsRoboTests
Change-Id: I25f8455def3c38e24dea9af9e9e29ba37c250f67
Merged-In: I25f8455def3c38e24dea9af9e9e29ba37c250f67
2018-05-02 07:15:35 +00:00
hughchen
7ef4fd8085 Remove the gear icon and change tapping event
* For fix the conflicts in pi-dev, cherry pick the ag/3944480 in
  master and merge the conflict.
* Remove the gear icon in "currently connected" section.
* Change the tapping event in "currently connected" section.
  When tapping device in this section, take user to device detail page.
* Add test to verify when ConnectedBluetoothDeviceUpdater add preference
  the shouldHideSecondTarget() is return true.

Bug: 78490845
Test: make -j40 RunSettingsRoboTests
Change-Id: I25f8455def3c38e24dea9af9e9e29ba37c250f67
2018-04-27 16:35:09 +08:00
Philip P. Moltmann
952004c072 Change references to old loadSafeLabel method
... to prevent proliferation of the method via copy+paste.

Bug: 77964730
Test: Built
Change-Id: I663879dbdf94c4c5e7d1146028fd5ff7610a1e44
2018-04-23 15:13:40 -07:00
Aurimas Liutikas
e0069d332d Migrate Settings to androidx.
Test: make Settings
Bug: 76692459
Change-Id: I941dea40562170649bf056e675cc32e5163c0e39
2018-04-20 12:52:29 -07:00
HJ ChangLiao
f3be34e01b Move device detail edit button from menu to header
Move the edit button on Bluetooth device detail,
From action bar menu to header.
Use EntityHeaderController to add and control,
Rename those method because we use them on
more than one place now.

Change-Id: I3afad6baeab80895c109603e2ab13428582a4dd8
Fixes: 76206922
Test: make RunSettingsRoboTests
2018-04-17 12:33:01 +08:00
hughchen
5620d28f3f Merge "Implement audio switch UI" into pi-dev am: 5a2f73151e
am: 608d436da0

Change-Id: Iea47d84345cfd10388a4c2ad34d5cedcfe7eaeb6
2018-04-16 12:12:21 -07:00
TreeHugger Robot
5a2f73151e Merge "Implement audio switch UI" into pi-dev 2018-04-16 18:34:37 +00:00
Isha Bobra
ea72074ed7 Merge "Show only 1 entry for hearing aid devices without killing the activity." into pi-dev am: d87acaf3cf
am: 595cda2d14

Change-Id: I49973a65a31f5f79722c4e4841f2dcda34128edb
2018-04-16 10:03:34 -07:00
Isha Bobra
d87acaf3cf Merge "Show only 1 entry for hearing aid devices without killing the activity." into pi-dev 2018-04-16 16:42:33 +00:00
hughchen
bd3e5de207 Implement audio switch UI
* Implement available media devices group
* Add AvailableMediaDeviceGroupController to realize UI, the user can see the all device that can be activated in this group.
* ConnectedDeviceGroupController change to show the device that cannot be activated but is connected.
* Refactoring the below class, implement the controller in connected_devices.xml.
  ConnectedDeviceGroupController.java
  SavedDeviceGroupController.java
  ConnectedDeviceDashboardFragment.java
  connected_devices.xml
* Add AvailableMediaBluetoothDeviceUpdaterTest to verify the add/remove preference behavior when connectedStateChanged or profileAudioStateChanged
* Add test that used to verify device is connected or not in BluetoothDeviceUpdaterTest.
* Add test that used to verify the add/remove preference behavior when connectedStateChanged or profileAudioStateChanged in ConnectedBluetoothDeviceUpdaterTest.
* Add AvailableMediaDeviceGroupControllerTest to verify bluetooth feature is supported or not and test register callback.
* Add test that used to verify bluetooth feature is supported or not and test register callback in ConnectedDeviceGroupControllerTest.
* Add test that used to verify bluetooth feature is supported or not and test register callback in SavedDeviceGroupControllerTest

Bug: 74134939
Test: make -j40 RunSettingsRoboTests
Change-Id: I54d03c2ddadc6a4be7519dd74cdbcb5055d44083
2018-04-15 04:22:25 +00:00
Isha Bobra
35e217f91f Show only 1 entry for hearing aid devices without killing the activity.
This CL tries to detect Bluetooth hearing aid devices and tries to
combine the entry of the hearing aids with the same HiSyncIds and
show only 1 entry for each pair in the connected devices list.

This CL also shows 2 battery status in the device details page.

This change shows the combined entry after a user returns to the
settings activity after pressing the back button or somehow
without killing it. It also combines the entries just after pairing.

Test: RunSettingsRoboTests
Bug: 74204427

Change-Id: I47fb0bdd96b1cc972d88a4aef85d0113985d63bb
2018-04-13 22:51:58 +00:00
Salvador Martinez
9eac182805 Update bluetooth preference to take user to new screen
This CL removes the toggle from the bluetooth preference and instead
takes users to a new dedicated screen for toggling bluetooth status.
On this screen we show a different summary text depending on whether
bluetooth and bluetooth scanning are on/off. Also, we were able to
delegate most of the UI/bluetooth handling to already existing
classes.

Test: robotests
Bug: 77543471
Merged-In: I036a3992bbd78896da8364b55ecc51afc4464b6e
Change-Id: I036a3992bbd78896da8364b55ecc51afc4464b6e
2018-04-13 15:07:45 -07:00
Salvador Martinez
21c5ed2894 Update bluetooth preference to take user to new screen
This CL removes the toggle from the bluetooth preference and instead
takes users to a new dedicated screen for toggling bluetooth status.
On this screen we show a different summary text depending on whether
bluetooth and bluetooth scanning are on/off. Also, we were able to
delegate most of the UI/bluetooth handling to already existing
classes.

Test: robotests
Bug: 77543471
Change-Id: I036a3992bbd78896da8364b55ecc51afc4464b6e
2018-04-13 10:57:16 -07:00