Commit Graph

155 Commits

Author SHA1 Message Date
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
TreeHugger Robot
667cbc5846 Merge "Add “Rename device” on Bluetooth screen" into pi-dev 2018-05-17 09:08:30 +00: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
Ryan Lin
0a87e54edb Merge "Implement getProfileId() method in the subclass" into pi-dev 2018-05-11 19:53:19 +00:00
ryanywlin
ef301823d3 Implement getProfileId() method in the subclass
Add getProfileId() method in LocalBluetoothProfile interface,
implement this method in subclass.

Bug: 76447449
Test: make RunSettingsRoboTests ROBOTEST_FILTER=BluetoothDetailsProfilesControllerTest -j28
Change-Id: I8082716b7cdaf7394ee2f8a4b636058716af7bb1
2018-05-11 20:25:13 +08: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
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
TreeHugger Robot
5a2f73151e Merge "Implement audio switch UI" into pi-dev 2018-04-16 18:34:37 +00: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
hughchen
aa31bd43a3 Implement previously connected device UI
* Move save device group to "Previously connected devices"

Bug: 74134939
Test: make -j60 RunSettingsRoboTests
Change-Id: Iff7894033df402d42dcc0ccaea6db3106edb7013
Merged-In: Iff7894033df402d42dcc0ccaea6db3106edb7013
2018-04-12 17:10:40 +00:00
Lei Yu
dec7a719d1 Remove the obsolete bluetooth code
Also update the shortcut:
1. Change the name to "Devices"
2. Change it point to "Connected device" page

Bug: 74806595
Fixes: 69926683
Test: robo test still pass

Change-Id: Ic57756fc955dc622cc22d0be64f02b5ae07a2915
2018-03-30 11:24:26 -07:00
Antoan Angelov
84a4dd0bde Merge "Show policy transparency popup dialog for Bluetooth in Settings." into pi-dev 2018-03-23 14:10:29 +00:00
Antony Sargent
483b1f98bf Fix renaming for Bluetooth devices when rotating to landscape
The bug here is that when renaming a Bluetooth device (either the local
adapter or a paired device), if you click on the text edit field of the
alert dialog and then rotate the screen, the text shown in the soft
input will disappear. Also it's a usability problem that you even needed
to click in the first place. This CL fixes both problems - now the soft
input will be shown immediately when the dialog comes up, and the
content doesn't disappear on rotation.

Change-Id: Id29d11c834bf98c01b5c1208159537a8fd36a64f
Fixes: 72551780
Test: make -j RunSettingsRoboTests
(cherry picked from commit 5a1587526b)
2018-03-21 22:52:46 +00:00
arangelov
75c603cedb Show policy transparency popup dialog for Bluetooth in Settings.
Bug: 70206452
Test: make ROBOTEST_FILTER=BluetoothEnablerTest -j40 RunSettingsRobotests
Test: make ROBOTEST_FILTER=BluetoothSwitchPreferenceControllerTest -j40 RunSettingsRobotests
Change-Id: I543cf69b754c44b02c66e101698f10906a1b957f
2018-03-21 16:03:28 +00:00
Jyun LuoLai
e05884564e Modify connectivty related strings
Change-Id: I971c5f68ff3d881ad0285f87ab868a204edc9b7f
Fixes: 73960246
Test: Manual test & make RunSettingsRoboTests
2018-03-20 09:45:09 +08:00
Weilun Du
d4e1b94b58 Disable bluetooth controller if unsupported
Only disable the controllers not the whole fragment because
user might need to have entry for other features.

Fixes: 73664409
Merged-In: I98ed248cf33d11715dd523e711cbc68ebf128ef8
Change-Id: I98ed248cf33d11715dd523e711cbc68ebf128ef8
Signed-off-by: Weilun Du <wdu@google.com>
(cherry picked from commit 68a195ae93)
2018-03-09 23:40:40 +00:00
James Lemieux
22a39c2b93 Use external/robolectric-shadows/run_robotests.mk
This allows Settings to test against the latest framework changes.

Also replaced TestConfig with traditional robolectric.properties.

Bug: 73173204
Bug: 73892008
Test: make -j56 RunSettingsRoboTests
Change-Id: I3135b4fa5f095ba79b282a76f45dd9baa2584bc7
2018-03-04 03:50:08 -08:00
Andreas Gampe
7d62a5e298 Merge changes I67dbf04a,I032f6741 am: 727ec42d8d am: 6b24cc5769
am: 257f42fd9d

Change-Id: I8bb1a61f255a1c80242ac264f061f15153df12aa
2018-02-26 22:16:49 +00:00
Andreas Gampe
257f42fd9d Merge changes I67dbf04a,I032f6741 am: 727ec42d8d
am: 6b24cc5769

Change-Id: Ib649c224f4496785ae1eba0bce3a411eca8aa1bd
2018-02-26 22:08:42 +00:00
Andreas Gampe
8f4716c401 Settings: Disable failing assert
Temporarily disable.

Bug: 73892004
Test: m RunSettingsRoboTests
Change-Id: I67dbf04ae59e54632155c3eda67c70335147fd19
2018-02-26 12:35:13 -08:00
Andreas Gampe
025ec2ba58 Settings: Fix assertThat in test
Truth.assertThat is a fluent-style API. Fix the tests to actually
do something.

Found by errorprone.

Bug: 73513670
Test: m RunSettingsRoboTests
Test: m javac-check RUN_ERROR_PRONE=true
Change-Id: I032f6741ac0c728781a9d22ab6158e7b74a30167
2018-02-26 12:13:00 -08:00
Fan Zhang
f7843adabd More renaming in DashboardFragment
getPreferenceControllers() -> createPreferenceControllers() for the same
reason as in ag/3647936

Bug: 73668763
Test: robotests
Change-Id: I97670a91a2a38d1c844d1b9d37f4222c5e6f45a0
2018-02-23 16:56:30 -08:00
Fan Zhang
be45f9c865 Migrate more settings to SubSettingsLauncher
Bug: 73250851
Test: robotests
Change-Id: I4100bef20e2ed477e4e31c9b7816f1b03f3f2809
2018-02-19 13:36:57 -08:00
Fan Zhang
7cf99f5f12 Migrate more settings to use SubSettingsLauncher
Bug: 73250851
Test: robotests
Change-Id: I08f6f380489646231d6d8ceb1488e2efb036bf69
2018-02-18 21:10:03 -08:00
Fan Zhang
615563db0c Migrate more subsetting launching to SubSettingLauncher
Bug: 73250851
Test: robotests
Change-Id: Ic0bf23f6ac6f717bdd3d477fdb84af68badae8e6
2018-02-15 15:39:56 -08:00
Pavlin Radoslavov
ac8aed2ce8 Merge "Use proper string formatting for the "Active device" string" am: f5848d0f4d
am: 8018f82e5a

Change-Id: Iaf745544ca349cb5a0193b4dd0e46bcc89ff4e0c
2018-02-10 09:22:38 +00:00
Pavlin Radoslavov
576d4448a9 Use proper string formatting for the "Active device" string
Updated testContextMock() how it checks the bluetooth_connected string.

Bug: 72317067
Test: Unit test updated:
      make ROBOTEST_FILTER=BluetoothDetailsHeaderControllerTest \
                           RunSettingsRoboTests
      Manual: two headsets and switching the active device
Change-Id: I3db178d71543e4dfa437544350c58241860ae703
Merged-In: I3db178d71543e4dfa437544350c58241860ae703
(cherry picked from commit b58b006e44)
2018-02-09 14:53:14 -08:00
Pavlin Radoslavov
b58b006e44 Use proper string formatting for the "Active device" string
Updated testContextMock() how it checks the bluetooth_connected string.

Bug: 72317067
Test: Unit test updated:
      make ROBOTEST_FILTER=BluetoothDetailsHeaderControllerTest \
                           RunSettingsRoboTests
      Manual: two headsets and switching the active device
Change-Id: I3db178d71543e4dfa437544350c58241860ae703
2018-02-08 11:14:10 -08:00
Leif Hendrik Wilden
28dee1f086 Migrate to use instrumentation classes from settingslib.
Test: Compiles. Manually tested.
Change-Id: I70a6e76cc8440547746ecc008c32bd06a7de8161
2018-01-24 12:30:39 -08:00
Leif Wilden
cab0ee611d Revert "Migrate to use instrumentation classes from settingslib."
This reverts commit 1546cca529.

Reason for revert: Broke fingerprint setup flow. b/72267201

Change-Id: I8321265ae64732c526325882ddea51080decddf5
2018-01-22 20:57:36 +00:00
Leif Hendrik Wilden
1546cca529 Migrate to use instrumentation classes from settingslib.
Test: Compiles. Manually tested.
Change-Id: Ie5515bb0fe3e621fc7723a9b04ba23e4bfa9c401
2018-01-18 11:13:24 -08:00
jackqdyulei
f2ef447e8e Tweak bluetooth text alignment
1. Remove the placeholder summary so it won't show blank summary
2. Update settings_entity_header to make text center_vertical,
so it could align with the icon.

Bug: 71742145
Test: Screenshot
Change-Id: I185114a4e0c8d996f218075a8633e802fabf3c66
2018-01-17 12:26:21 -08:00
James Lemieux
99d10a4e62 Adopt robolectric 3.6.1
Bug: 71596155
Test: make RunSettingsRoboTests
Change-Id: I46362bae1e3ddd3ce19ade1c93250d272f3366e6
2018-01-12 13:49:29 -08:00
Fan Zhang
4e08869e1a Make a strong reference to LifecycleOwner in tests
Change-Id: Id3b26ded6c903b67b9880dbfe1a0656a564c8947
Fixes: 71867776
Test: rerun tests
2018-01-11 14:30:16 -08:00
Matthew Fritze
c69f73f4d1 Support getDynamicSummary in BasePreferenceController
Adds dynamic summary getter in relevant BasePreferenceControllers.
Preferece controllers that don't have dynamic summaries or which
are not yet BasePreferenceControllers are not changed right now.

Change-Id: I435ccab7758d90515583fd8ca10a9b1ef0c858b9
Fixes: 71514936
Test: robotests
2018-01-04 13:58:01 -08:00
jackqdyulei
6c94769e56 Add summary placeholder for bt preference
Then UI won't be janky(as everything slide down a little bit)

Bug: 63910184
Test: RunSettingsRoboTests
Change-Id: Ie4074694f54af92da52f09d2caaab5490fa73647
2017-12-22 10:25:04 -08:00
Lei Yu
15b8b27646 Merge changes Ie1f934b4,Ic3b045a6
* changes:
  Create BluetoothSwitchPreference
  Add ConnectedUsbDeviceUpdater
2017-12-13 01:06:14 +00:00
jackqdyulei
be555e2dad Add device name preference in pairing page
Also refactor the preference controller
1. Extend from BasePreferenceController.
2. pass in the preference key. Then it could be reused in different
places with different key.

Bug: 69333961
Test: Screenshot | RunSettingsRoboTests
Change-Id: I773ca022baa326481045c1659565c9a21111200a
2017-12-11 15:52:57 -08:00
jackqdyulei
d055937664 Create BluetoothSwitchPreference
In the new design, bluetooth preference is not MasterSwitchPreference
any more. This cl creates BluetoothSwitchPreference while reuse the
BluetoothEnabler.

Future cl will remove the BluetoothMasterSwitchPreference when P
feature is finalized.

Bug: 69333961
Test: RunSettingsRoboTests
Change-Id: Ie1f934b4e93a6758a1b0cf83bb5098585a635c2a
2017-12-11 13:05:01 -08:00
jeffreyhuang
cbfb099a40 Rename SDK_VERSION_O to SDK_VERSION
Test: make RunSettingsRoboTests -j40
Change-Id: I6715062d8addadda441e32809db1af55f15e3a90
2017-12-05 16:43:54 -08:00
Fan Zhang
dff6dd687e Move away from deprecated FakeFeatureFactory.setupForTest()
Test: rerun
Change-Id: I896ba414315ddb1664c0499264f4992f0554ef98
2017-12-05 10:12:10 -08:00
TreeHugger Robot
b5931a6624 Merge "Add preferences in new connected device page" 2017-12-01 23:00:20 +00:00
Antony Sargent
4d9e1b4b6b Fix BluetoothPairingDialogTest to not expect device name am: f20e0a492b am: 0ceadf9fb8 am: 4b47184df3
am: a4e3b55ad2

Change-Id: I2e82fc3f4faab96221679e661bf19225f297f327
2017-12-01 21:29:25 +00:00
Antony Sargent
4b47184df3 Fix BluetoothPairingDialogTest to not expect device name am: f20e0a492b
am: 0ceadf9fb8

Change-Id: I2d48521b73bb75fbbc92c54ff353ec491397f81c
2017-12-01 21:23:59 +00:00