Commit Graph

1115 Commits

Author SHA1 Message Date
Hemant Gupta
7bec5bf895 Settings: Convert notifications to use NotificationChannel (2/2)
Test Setup:
===========
HW DUT: Pixel O
Remote: MecApp (PBAP Client, MAP Client, SAP Client)

Steps:
=====
1. Enable BT on DUT and bond with Remote.
2. Connect from MecApp for PBAP, MAP, SAP and observe if
   connection goes through fine.

Reproducibility:
===============
5/5

Observation:
============
MAP, PBAP and SAP cannot be connected.

Root cause:
In Android O, notifications are hidden by default.
This must be changed to use notification channels so that the
priority of the notifications can be updated.

Test: PBAP/MAP/SAP connection works fine with MecApp.

Bug: 38331825
Change-Id: I51de0ea303037bf88773352d99f092673acda2e3
(cherry picked from commit bd9f532013f0397879101f68f21ac8841fec344b)
2017-05-19 23:33:29 +00:00
jackqdyulei
5333ecd1fb Dupe BluetoothSettings and DeviceListPreferenceFragment
Create the obsolete version of the belowing fragments, so we could
flip between old page and new page.

BluetoothSettingsObsolete and DeviceListPreferenceObsoleteFragment
contains all the old logic but:
1. Logic about BluetoothPairingPreferenceController(ag/2239482),
since this preference shouldn't be checked in without the flag :(

This cl also adds logic in MasterSwitchPreferenceController to flip
these two pages.

Following cl will refactor these fragment to make it compatible
to new framework.

Bug: 35877041
Test: RunSettingsRoboTests
Change-Id: I1cc1bc2d49d8a3e11c3127e56f6409fbc84028d8
2017-05-18 14:12:02 -07:00
Antony Sargent
3033c1a2cf Merge "Add a "Use high quality audio" option to Bluetooth A2DP device settings" into oc-dev am: c439202da9
am: 3afb6616c6

Change-Id: I37280e12b32047ddef316be763f69b5ff648b557
2017-05-17 19:41:16 +00:00
Antony Sargent
3afb6616c6 Merge "Add a "Use high quality audio" option to Bluetooth A2DP device settings" into oc-dev
am: c439202da9

Change-Id: I2e0eed6c7332a9968b020c69dcc7f5507b355f6e
2017-05-17 19:12:43 +00:00
Antony Sargent
f1d544f945 Add a "Use high quality audio" option to Bluetooth A2DP device settings
This change adds a checkbox reading "Use high quality audio: <codec
name>" to the details dialog for A2DP audio bluetooth devices that
support codecs other than the mandatory SBC (eg AAC, LDAC, aptX, etc.).

Bug: 37441685
Test: make RunSettingsRoboTests

Change-Id: I6e5423db11a0cd7fe0b1141dd998e7c936c240f0
2017-05-16 11:02:52 -07:00
jackqdyulei
1b853c5597 Add pairing preference
This preference lives in paired category. When clicked, it will
go to the pairing page.

Bug: 35877041
Test: RunSettingsRoboTests
Change-Id: I64706c49c8d303a494d4c1827e1f86b59effd54c
2017-05-15 10:46:28 -07:00
Juan Lang
777ed2535a Depend on SettingsLib's version of lifecycle and FooterMixin.
The implementations have been imported into SettingsLib. Setting's copy
can now be removed, which this change also does.

Test: Manually check battery status, which uses FooterMixin, looks OK.
make RunSettingsLibRobotTests && make RunSettingsRoboTests
     && make RunSettingsGoogleRoboTests
Change-Id: I6539605fdad80d156ff5ff249e68df4a1c412067
2017-05-12 11:10:46 -07:00
TreeHugger Robot
631120f1ad Merge "Add bluetooth visible item" 2017-05-11 23:45:29 +00:00
jackqdyulei
ae86781edd Add bluetooth visible item
Show "Visible as [Device name]". Also remove the menuitem for
changing device name.

This cl creates a preference controller to handle the logic for
device name preference.

Bug: 35876447
Test: RunSettingsRoboTests

Change-Id: I9ab6c9d2df5b053d15b8ff887073ef82616243a4
2017-05-11 11:12:25 -07:00
Lei Yu
7932d5a66f Merge "Expose mac address in bluetooth main page" 2017-05-10 20:42:03 +00:00
Lei Yu
c0d798ff06 Merge "Add feature provider for Bluetooth" 2017-05-10 19:55:17 +00:00
jackqdyulei
d2ba0117fc Expose mac address in bluetooth main page
This mac address means the owned device, not the device
to connect.

Bug: 35875420
Test: RunSettingsRoboTests
Change-Id: I142f49fdca72d8ffbb9b8b2e2666a61aefb80505
2017-05-10 11:18:10 -07:00
jackqdyulei
3db59a8430 Add feature provider for Bluetooth
Also add method to check whether pairing page is enabled.

Bug: 38134564
Test: RunSettingsGoogleRoboTests
Change-Id: Ib74ece46f9624242895a366eac889957924f84c6
2017-05-08 16:06:42 -07:00
jackqdyulei
e407e67a3b Create RestrictedDashboardFragment.
RestrictedDashboardFragment has all the same logic coming from
RestrcitedSettingsFragment but extends from DashboardFragment.
As a result, we could use preferenceController in child class of
RestrictedDashboardFragment.

This cl also make DeviceListPreferenceFragment as child of
RestrictedDashboardFragment, which enfluences the bluetooth page.

Bug: 38041586
Test: Build
Change-Id: I01395d506176c5cc584948478f7ca16c1c7c7045
2017-05-08 13:34:54 -07:00
Jack He
a16bcf17d4 Merge "Bluetooth: Dismiss pairing dialog on user click" into oc-dev
am: fdd8d3f6ae

Change-Id: Ie5d30226ef700f29af206416b8392fd9f6017784
2017-04-27 00:37:38 +00:00
TreeHugger Robot
fdd8d3f6ae Merge "Bluetooth: Dismiss pairing dialog on user click" into oc-dev 2017-04-27 00:32:12 +00:00
Jack He
2a67cf0465 Bluetooth: Dismiss pairing dialog on user click
* Existing pairing dialog should be dismissed when user clicks on Yes/No
* In a pairing session with multiple pairing dialogs, this is necessary
  as otherwise the second pairing dialog will not be shown
* Modified unit test to test this behavior
* Launch pairing dialog as UserHandle.CURRENT to avoid Context warnings

Bug: 35833536
Test: make, unit test, pair with Bluetooth devices
Change-Id: I1823b78d287134505f59eab7caca2329ecc3a36f
2017-04-25 14:13:26 -07:00
Ruchi Kandoi
7094f1d170 Merge "Add searchable index for Bluetooth and Nfc only if the feature exists" into oc-dev
am: 41a858fde1

Change-Id: Ida195181c34d5f53ea544b1a0c81d3154385219e
2017-04-25 19:20:06 +00:00
TreeHugger Robot
41a858fde1 Merge "Add searchable index for Bluetooth and Nfc only if the feature exists" into oc-dev 2017-04-25 19:05:42 +00:00
Ruchi Kandoi
7ca6c2410c Add searchable index for Bluetooth and Nfc only if the feature exists
Test: make RunSettingsRoboTests
Bug: 35657961
Change-Id: Ie2f4722b2b1599981c933f87f95016909ba92022
Signed-off-by: Ruchi Kandoi <kandoiruchi@google.com>
2017-04-24 13:15:35 -07:00
Lei Yu
96cba04e0d Merge "Add device name for connect string" into oc-dev
am: bcaabec925

Change-Id: I83920ad2cecfece9ed7bb4acb50fe6a6068bd51b
2017-04-24 19:43:08 +00:00
Lei Yu
bcaabec925 Merge "Add device name for connect string" into oc-dev 2017-04-24 17:00:49 +00:00
Ajay Panicker
344405d87a Merge "Add Bluetooth Pairing notifications to a channel" into oc-dev
am: 8b09195f80

Change-Id: Iced885cd7195ed48920667ef96c0cbbdec587466
2017-04-22 01:53:42 +00:00
Ajay Panicker
2432051bfd Add Bluetooth Pairing notifications to a channel
Bug: 37531430
Test: Send a pairing request to DUT from remote phone
Change-Id: I2014b0aa3c4797cbf8e601003471372f4920d21d
2017-04-21 16:44:55 -07:00
jackqdyulei
471d71bae0 Add device name for connect string
When there are more than one connected device, show
a general summary.

Bug: 37365660
Test: RunSettingsRoboTests
Change-Id: I0eed734e82750969bef97a61dd59167e679c0203
2017-04-21 15:10:56 -07:00
Marie Janssen
f8aaed9e1f Bluetooth: Make pairing notification cancellable
Add actions to the pairing service notification so the user can dismiss
the pairing request if they want to.

Add some more information to logs when the user takes an action.

Reformat the file to match android style.

Test: pair from a remote device, dismiss using the new actions
Bug: 36036358
Change-Id: Ie110044bd4caf465f454452737000f01e7430925
(cherry picked from commit c79470d089)
2017-04-21 20:19:20 +00:00
Marie Janssen
f119ab31ad Merge "Bluetooth: Make pairing notification cancellable" am: 6c142b35b4 am: 28bbd5bacb
am: c7ad828691

Change-Id: I1b6a63bdca7a104f993b9114f7c0da18c5e8df22
2017-04-21 18:54:11 +00:00
Marie Janssen
c79470d089 Bluetooth: Make pairing notification cancellable
Add actions to the pairing service notification so the user can dismiss
the pairing request if they want to.

Add some more information to logs when the user takes an action.

Reformat the file to match android style.

Test: pair from a remote device, dismiss using the new actions
Bug: 36036358
Change-Id: Ie110044bd4caf465f454452737000f01e7430925
2017-04-20 15:22:20 -07:00
Lenka Trochtova
33707767be Check for user restrictions disallowing BT in BluetoothEnabler.
am: 363b3303c0

Change-Id: I6c85b31a44930e174a8caff04696d70884fc1dbc
2017-04-20 16:03:26 +00:00
Lenka Trochtova
363b3303c0 Check for user restrictions disallowing BT in BluetoothEnabler.
Test: make RunSettingsRoboTests -j40
Test: manual

BUG: 35596982
BUG: 32895313

Change-Id: Ie8f53b665a4aad4e6b17b20602cbe5502998d7a2
(cherry picked from commit 479d197196)
2017-04-20 10:26:14 +00:00
Fan Zhang
668dae22e7 Merge "Revert "Revert "Convert BT preference to use TwoTargetPreference""" into oc-dev
am: fd29aada6b

Change-Id: I30e9087f3e90055ccc1192743814c42f3a28a21e
2017-04-11 23:42:46 +00:00
Fan Zhang
00d8ff5d6e Revert "Revert "Convert BT preference to use TwoTargetPreference""
This reverts commit 457c3cbec2.

Revert with fix/test.
The fix is that we removed DevicePickerFragment#initDevicePreference(),
which incorrectly set a useless widget on preference, and removes the
gear icon from preference, preventing bind() call to go through

Change-Id: Ia70cdb51d13cca6035a4e7fe8008d195f7f00c6e
Fix: 36511169
Test: runtest --path tests/app/src/com/android/settings/bluetooth/DevicePickerActivityTest.java
2017-04-11 09:45:27 -07:00
Marie Janssen
d76cc0a468 Bluetooth: only unregisterReceiver if we register
We can get to onDestroy() without registering now.

Test: none
Fixes: 36501241
Change-Id: I90da3b350f9951993238d51f9fde86ccb335cafd
(cherry picked from commit af34ed06f1)
2017-04-06 08:45:27 -07:00
Marie Janssen
097b20b453 Merge "Bluetooth: only unregisterReceiver if we register" am: 4dc556bda8 am: c27d7effb0
am: f72e86f332

Change-Id: Ic0a53a4904b11342fe89bed6d4dea69e595a6cf7
2017-04-06 00:20:16 +00:00
Marie Janssen
4dc556bda8 Merge "Bluetooth: only unregisterReceiver if we register" 2017-04-06 00:01:58 +00:00
Jack He
4b27231fd4 Fix a crash when an app requests Bluetooth to be discoverable
am: ebbfce0bf1

Change-Id: I3fcdf1abcf7ce42b7f95dc9ca34aad6dac03daff
2017-04-04 04:12:08 +00:00
Jack He
ebbfce0bf1 Fix a crash when an app requests Bluetooth to be discoverable
* When an app requests Bluetooth to be discoverable with a timeout and a
  non null EXTRA_PACKAGE_NAME, Settings app should put in the correct
  timeout values in the dialog string

Bug: 36870303
Test: make, try making Bluetooth discoverable via
      ACTION_REQUEST_DISCOVERABLE intent

Change-Id: I0cebc2f20371c9de5f28feb26425422c0777aa45
2017-04-04 01:53:20 +00:00
Hemant Gupta
ec6815ea7c Merge "Bluetooth: Fix Resource Leak in OPP (1/2)" am: e270a6aa85 am: 2ffab51c0e
am: b5e14d5f30

Change-Id: Ie2246c812f6a34086c19561f62e73f714bdd8eff
2017-04-03 17:57:42 +00:00
Hemant Gupta
2ffab51c0e Merge "Bluetooth: Fix Resource Leak in OPP (1/2)"
am: e270a6aa85

Change-Id: Ia5108737add480f2cce52663f13d496653c37320
2017-04-03 17:50:36 +00:00
Hemant Gupta
33c7e03b6a Bluetooth: Fix Resource Leak in OPP (1/2)
Handle onDestroy in DevicePickerFragment class, which would be
called when user presses back button and does not select any device.
This will send intent to class that called DevicePickerFragment that
no device is selected.

Test: Performed the usecase overnight and see if no crash is observed.

Bug: 35626275
Change-Id: Ib3965d7dea8d59b244abdc6ffe61ef21109346fb
2017-03-29 13:45:34 +00:00
Doris Ling
457c3cbec2 Revert "Convert BT preference to use TwoTargetPreference"
This reverts commit 09c7f15b12.

Change-Id: I29aa67f026c0b54da08b19657f9916275e5a3459
2017-03-28 20:03:10 +00:00
Marie Janssen
af34ed06f1 Bluetooth: only unregisterReceiver if we register
We can get to onDestroy() without registering now.

Test: none
Fixes: 36501241
Change-Id: I90da3b350f9951993238d51f9fde86ccb335cafd
2017-03-23 14:41:06 -07:00
Doris Ling
fe768e9e22 Update string for Connected devices page.
- update Bluetooth summary text "Connected to" and "Not connected"
- update USB summary text "Charging" and "Supplying"
- update Printing summary to "... on" or "off

Change-Id: I39a809b560a5c6cc6a0e217315dfabb2c4d1a129
Fix: 36234108
Test: builds
2017-03-23 13:22:52 -07:00
Fan Zhang
09c7f15b12 Convert BT preference to use TwoTargetPreference
Change-Id: I0b49af4afb4b782a6057060b2666f6528bc003b2
Fix: 36511169
Test: make RunSettingsRoboTests
2017-03-22 16:03:45 -07:00
Marie Janssen
d18020875b Merge "Bluetooth: stop pairing service correctly" am: 4e32e87e57 am: b7c50119e5
am: 912c74e02e

Change-Id: Ib822796906d81baad9a4b731a057b7ae14d7a355
2017-03-20 21:56:37 +00:00
Marie Janssen
b7c50119e5 Merge "Bluetooth: stop pairing service correctly"
am: 4e32e87e57

Change-Id: Ied66e2bf14771853be46c09b0720c9978d53e3c9
2017-03-20 21:45:41 +00:00
Marie Janssen
d06f49189c Bluetooth: stop pairing service correctly
If BluetoothPairingService was stopped and restarted, it would receive
a null intent, and it also would not signal correctly when it needed to
be stopped.

Since restarts can happen, check that we are still bonding when starting.

Also prevent crashes when we might be called with a null intent.

Test: initiate pairing remotely, adb am kill service, notice no crash
Bug: 36130262
Change-Id: I408811935fdb36591826f4481d103cf4799db27e
2017-03-20 12:23:26 -07:00
Matthew Fritze
5c83cfa278 Remove Index.java from old Search and its dependents
Test: make RunSettingsRoboTests
Bug: 35763944, 36192909
Change-Id:  If216e1eeb4c29e7372720c6228fa4e99ea2a9904
2017-03-17 14:26:05 -07:00
Marie Janssen
68a414e86c Merge "Bluetooth: leave screen off for permission request" am: 172b01035d am: 09f5638b92
am: 895ac35f4d

Change-Id: I9e162f37b76ad8e7adc438d082d8352720916df0
2017-03-15 23:02:23 +00:00
Marie Janssen
09f5638b92 Merge "Bluetooth: leave screen off for permission request"
am: 172b01035d

Change-Id: Id768f3a4cdbb4286cd1096f94b6fb5b11bae6cc8
2017-03-15 22:57:38 +00:00