Commit Graph

63 Commits

Author SHA1 Message Date
Fan Zhang
31b210017b Migrate all MetricsProto enums to SettingsEnums
Bug: 122855168
Test: rebuild
Change-Id: I962d9a71179f86b7cae9dc5e9a00e0aa1557dc76
2019-01-17 14:55:42 -08:00
Fan Zhang
23f8d59d02 Sort imports
Having consistent import order will reduce chance of merge
conflict between internal and external master

Test: rebuild
Change-Id: I0b1a170967ddcce7f388603fd521f6ed1eeba30b
2018-08-28 22:13:15 +00:00
tmfang
41ab6b4bf8 Migrate all AlertDialogs to AndroidX version
This CL only changed AlertDialog imports.
So, reviewer can review it easily.

Change-Id: I097bc44394195b14287f4f920c570ac8653f356a
Fixes: 111413092
Test: This CL can't pass Robo test.
2018-07-20 11:32:13 +08:00
Fan Zhang
c7162cd24d Reorder and clean up imports.
Test: rebuild
Change-Id: I178485c84ae7146f991fd77b6d7504b029942a68
2018-06-18 15:45:09 -07: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
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
Aurimas Liutikas
e0069d332d Migrate Settings to androidx.
Test: make Settings
Bug: 76692459
Change-Id: I941dea40562170649bf056e675cc32e5163c0e39
2018-04-20 12:52:29 -07: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
cf1ce05ce5 Decouple BluetoothDevicePreference and DeviceListPreferenceFragment
The BluetoothDevicePreference need to know whether to display with an
invalid name. However pass in the whole fragment is over-killing.

This cl decouple it for several reasons:
1. In P, BluetoothDevicePreference will be used in other fragment.
2. In preference lifecycle from end user side, this flag is constant.

Bug: 69333961
Test: RunSettingsRoboTests
Change-Id: I3dbcd2a4aafa3ead74371534250e5e7c3ee221f7
2017-11-20 10:11:20 -08:00
jackqdyulei
88a4b0b0e5 Move the bluetooth icon logic to settingslib
This cl contains the moving about:
1. Several methods in Bluetooth/Utils.java
2. Bluetooth icon drawables
3. Bluetooth strings
4. Tests

Bug: 65488978
Test: RunSettingslibRoboTests

Change-Id: I682daa3eeb5022beb90a95763c70d19d32d54915
2017-10-25 12:49:59 -07:00
Jack He
5b017f7b05 Bluetooth: add metrics for pairing with devices without names
* Also caches context in onClick() method

Bug: 34685932
Test: make, unit test
Change-Id: I99beab2c85b8e48c4bc41f69146759d4b7c62428
2017-09-07 12:09:00 -07:00
Jack He
19ba320263 Bluetooth: Only show devices when their names are resolved
* Add a developer menu option to allow name-less devices to be shown
  when a Bluetooth developer needs it, but hide it for non-developer
  users.
* Set BluetoothDevicePreference to invisible when CachedBluetoothDevice
  does not have a name besides MAC address and the above developer option
  is false.
* This affects BluetoothPairingDetail and DevicePickerFragment, but does
  not affect BluetoothSettings. BluetoothSettings will show all paired
  devices regardless whether an user friendly name exists.

Bug: 34685932
Test: pair Bluetooth device, send file over Bluetooth, unit tests
Change-Id: Idd7ad4b1671dfdcf3204efb50eddb6dae1065aa5
2017-08-25 16:27:30 -07:00
jackqdyulei
7661137981 Add battery indicator to bluetooth icon
This cl change util method in bluetooth package to return
drawable instead of resId.

If the bt device has battery level, then method return customized
layerDrawable, otherwise return a simple drawable created from
resId.

Bug: 63393322
Test: RunSettingsRoboTests

Change-Id: Ib21822eafda0e8570212ce5cb070478e4f4876a2
Merged-In: Ib21822eafda0e8570212ce5cb070478e4f4876a2
2017-08-24 16:53:01 -07:00
Jack He
04f5967c95 Bluetooth: Use string in remote device summary
* Use String in connected device summary instead of resource id
* This allows dynamic strings to be built by CachedBluetoothDevice
  such as ones involve battery level percentages

Bug: 35874078
Test: make, unit test, test with Bluetooth devices
Change-Id: I583eac73280ca17387b215a4e7095e27de399998
2017-07-06 01:22:35 +00:00
Antony Sargent
04a3b2199e Add a new Bluetooth device details page
Bug: 35877479
Test: make RunSettingsRoboTests

The existing behavior is to bring up a dialog with Bluetooth device
details with checkboxes for each supported profile. This adds a new page
that serves the same purpose with a switch for each profile and a footer
containing the MAC address.

Whether to use the new page or old dialog is controlled by a flag
accessible via BluetoothFeatureProvider.

Change-Id: I026c363d4cd33932a84017a67cbef51c258bad10
2017-06-05 11:17:06 -07: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
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
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
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
Doris Ling
133b096288 Add logging to Bluetooth settings.
- Add logging when users selects the listed devices to connect or
disconnect, and when connection error is shown
- Update the event for the top level bluetooth master switch toggle to
have its own event.

Change-Id: I58f21256fdd07fad9d733ff987ff38df1148f4f8
Fix: 35065258
Test: make RunSettingsRoboTests
2017-03-09 18:14:30 -08:00
Marie Janssen
42c61c10cc Merge "Make headset icons consistent before / after pairing" am: 690bdb22c9 am: a2e068a2b4 am: 60eb5503e8
am: a78e718b26

Change-Id: I20b0fe30ab6b882e4f517147e9ffabe786d73988
2017-01-25 16:16:12 +00:00
Xiaodong Xu
262f7fba9a Make headset icons consistent before / after pairing
Previously A2DP would be shown before pairing with a HFP device.

bug: 30677445
Change-Id: I0e9ab17197e6ee099d890d5368def36a14ca8344
2017-01-23 17:25:27 +00:00
Fan Zhang
ec407ff78c Left align preferences and graphs to leave space for icon.
Bug: 33559277
Test: Visual inspection
Change-Id: Iacf9556826174a03b1cbf8a6f179b63d8686c5f5
2016-12-19 13:41:37 -08:00
pkanwar
8fa3d44596 The "device type" icons in "Bluetooth device list" screen are
not accessible to TalkBack users.

b/28199679 Changed method to for setting the talk-back
attribute on "device type".

Change-Id: I63820d861ea1075195b98c82004ba95470448a53
2016-05-05 11:25:46 -07:00
Jason Monk
2071eda150 Workarounds to avoid removing all prefs
Removing all prefs causes ugly animations, so avoid it at all cost
and cache all the prefs (while still added) as long as possible.

Bug: 26271353
Change-Id: I33b84d751938b460f4b66c0158057407dd45d974
2016-02-26 11:00:01 -05:00
Jason Monk
39b467482d Depend on support lib preferences
Bug: 24576551
Change-Id: Ic6190bacd3f7582c9bbc8de972da4612bd92421e
2015-10-13 10:12:20 -04:00
Jason Monk
f2819e0ead Fix battery usage screen issues
Tint icons properly
Bug: 21077770

Show better icons for wifi and bt (remove the old ones)
Bug: 21172936

Also add a way to show fake items in power list for testing.

Change-Id: I6b6804673a68190ebc3f2ea32802e30811a7f5b2
2015-06-02 16:03:32 -04:00
John Spurlock
9a23adf69d Settings: Remove all unused imports.
Change-Id: Iebfa52cb849d69974c94902b0b020893cf5618a3
2015-03-18 15:51:15 -04:00
Jason Monk
88643ac6ba Support some changes to SettingsLib
SettingsLib has a couple of bluetooth changes to support quick
settings and as a result a few updates are needed in Settings.

Depends on I7f828f0038ad0cf39274986ece6d486d545f0286
Change-Id: I9b207b74abb0175148fd4a3c421d33ab9a861587
2015-02-24 14:01:47 +00:00
Jason Monk
f2982a9ba1 Move isolatable bluetooth code to SettingsLib
Move the non-ui bluetooth control/tracking code to SettingsLib so
that it can be shared with others.

Mostly just move classes to frameworks/base/packages/SettingsLib,
however a few things had to move around.
 - Dock handling had to move back to code still in settings
 - Local preference related code had to be moved back to settings
 - Added an error flow from SettingsLib to Settings

Depends on I69fd888362c6dbb325f6113b32c4b15cc6a23a41
Bug: 19180466
Change-Id: Ie57fe26a27bbb0adc2ef69e042a05c7290c6a52a
2015-02-05 10:43:57 -05:00
PauloftheWest
a7aef13fbb Fix the truncating of Bluetooth icons.
Bug: 17347150
Change-Id: Iad6bec51bf9327ee0c6752ddaa161aec3b4ff590
2014-09-04 08:27:32 -07:00
Paul West
c0963dd7c5 Revert "Tapping a connected Bluetooth device now presents its settings dialog."
This reverts commit 893be9cc34.

Change-Id: Idefe6a1972ca1130a687632f74051e5b5a2e54e1
2014-08-27 20:31:38 +00:00
PauloftheWest
893be9cc34 Tapping a connected Bluetooth device now presents its settings dialog.
Bug: 14184769
Change-Id: I1de3110dd7460e0329dbe6df99abf3451d3041cc
2014-08-25 15:40:56 +00:00
PauloftheWest
5badff7622 Added a default Bluetooth icon for Bluetooth Preferences.
Bug: 17139683
Change-Id: I7b68950685732a85319a0dca7bd77234d345dbb7
2014-08-20 14:48:38 -07:00
PauloftheWest
da43135d7e bug #15543626 Bluetooth Settings headers need to support Quantum styling
+ Changed cog to teal
+ Eliminated double vertical bar
+ Removed dimming the cog

Change-Id: I6311408658328b5cc9c7e2846a8ba74a32d1af6e
2014-06-18 13:26:19 -07:00
Zhihai Xu
c5f5e93702 am 3cfb6885: am d6b0b172: am 7dd84651: Merge "Display BTH connected status correctly"
* commit '3cfb6885b4075a3887cb0acb437704394fc9e90e':
  Display BTH connected status correctly
2014-04-30 18:44:13 +00:00
Tsuyoshi Kamata
89377530c7 Display BTH connected status correctly
This patch removes incorrect condition.
(to not use LocalBluetoothProfile#isPreferred())
This condition uses the priority that already disconnected profile,
so this codition always returns false.

To verify this issue:
1. Turn on Bluetooth.
2. Pair and connect to BTH(A2DP/HFP)
3. The display now says "Connected"
3. Disconnect HFP profile
4. The display still says "Connected" but it should say "Connected (no phone)"

Change-Id: I9e2bfa6d23bf1be7587c9556b4b05459d02c4817
2014-04-30 18:20:55 +00:00
Fabrice Di Meglio
fa46de5c68 Search - fix remembered Bluetooth devices indexing
We were indexing the remembered device names but we were missing the
informations for launching the correct Activity from the Search result.

- add the missing information: className and iconResId

Change-Id: Ib6781d4c492c296e822da1b5a8a2a76c92ecd586
2014-04-11 14:03:28 -07:00
Fabrice Di Meglio
3b22695670 Fix issue about at which time Bluetooth devices name are indexed
- remembered devices name were only indexed when BT was turned on/off
- allow the same when they are paired
- remove device name from the Index if it is un-paired

Change-Id: I1206a591b0132789c3b003e52c7ffac630e80758
2014-04-08 17:49:01 -07:00
Maggie Benthall
11b69bf86d Implement Settings app UX for when a user has bluetooth config locked down.
When a user has the user restriction DISALLOW_CONFIG_BLUETOOTH
- Remove all the menu items for searching and other config
- Hide "available" but non-paired devices
- Remove settings button from paired devices
- Remove ability to make the device visible to others

Change-Id: Icaebf29d3cce55d924fdd65449447b5b7a438bbe
2013-04-08 16:05:38 -04:00
Jake Hamby
79be0b3e6b Fix multiple BT settings bugs.
- Change Bluetooth profiles screen to match ICS wireframes
- Remove BluetoothProfilePreference.java (no longer used)
- Remove "Pair with this device" summary below every unpaired device
- Remove "Paired but not connected" summary below unconnected paired devices
- Fix auto connection after pairing (reuse existing CachedBluetoothDevice)
- Add "Connected (no phone/media)" summaries based on ICS wireframes
- Fix visibility timeout strings.
- Fix crash when starting Bluetooth from Settings shortcut widget.

Bug: 5064139
Bug: 5064324
Bug: 5080404
Bug: 5093513
Bug: 5104485
Change-Id: Ie87103e183ce414c86cb1831a38ef0178b1b1292
2011-08-03 17:55:27 -07:00
Jake Hamby
ca9812a852 Upgrade Bluetooth pairing dialogs for ICS.
* Change Bluetooth pairing dialogs to match ICS wireframes.
* Default to numeric soft keyboard for PIN entry, and add checkbox
  to allow user to switch to alphanumeric keyboard if necessary.
* Move all Bluetooth advanced settings into action bar menu.
* Toggle visibility by touching "My device" entry in devices list.

Change-Id: Ic2377eb4364f41d215181cb1e3933997c9db9106
2011-07-15 15:39:53 -07:00
Gilles Debunne
4346cda76c Double list in Bluetooth Settings
Paired devices are listed first (from cache), followed by unpaired ones.
A scan is only started on user request or when there is no paired device
(should it be when there is no paired *connected* device?).

Wrench icon only displayed for paired devices.

Wrench click listener no longer uses mDeviceSettings which is unreliable
with ListView view recycling.

Fixed blinking ProgressCategory when the category was first in the list.

Change-Id: Ie749883426c12bd354da64733bd04b00304bc1f5
2011-06-28 18:17:30 -07:00
Amith Yamasani
3a5b3494a7 Make the BT class icon visible.
This change is required due to a change in the framework to accomodate smaller screen sizes.

Bug: 4519989
Change-Id: I77c5d72b29dec69df2bdd4d82811f4828ad155a6
2011-06-02 11:48:55 -07:00
Jaikumar Ganesh
50e0b0cf87 Fix settings app not showing correct profile connection state message.
Bug:3385085
Change-Id: Ie4b7eb6bc9d8c91264cf7f68d7830c110e34496d
2011-03-04 10:27:31 -08:00
Jake Hamby
436b29e68e Refactor Bluetooth settings for readability and performance.
Major refactoring of Bluetooth settings classes.
- Moved all functionality from LocalBluetoothManager into new
  LocalBluetoothAdapter and LocalBluetoothPreferences, and into
  existing classes.
- Refactored functionality from BluetoothEventRedirector into new
  BluetoothEventManager class, deleting the original version. New
  version uses a HashMap from action Strings to implementers of the
  BluetoothEventManager.Handler interface.
- Created new BluetoothDiscoveryReceiver to update shared preferences
  timestamp for Bluetooth discovery start/finish. This is the only event
  handling we need to do when the settings app is not visible, so it has
  its own receiver entry in AndroidManifest.xml. Edits are written using
  QueuedWork.singleThreadExecutor(), which BroadcastReceiver knows about
  and will wait for completion, eliminating the need for PendingResult.
- Miscellaneous cleanups to code style and logic for readability.
- Pulled some large switch statement code blocks into new methods.
- Changed all Bluetooth state references to the new BluetoothProfile
  constants.
- Changed use of deprecated Notification constructor in
  BluetoothPairingRequest to use Notification.Builder.
- Moved Utf8ByteLengthFilter helper function from BluetoothNamePreference
  into its own class, and moved test cases into the same package.
- Moved all LocalBluetoothProfileManager functionality related to
  specific profiles into new top-level classes (A2dpProfile, etc.), all
  implementing the LocalBluetoothProfile interface.
- Moved all UI-related methods from CachedBluetoothDevice into the class
  that uses the method, or into the static Utils class for shared methods.

Change-Id: I6d49b7f4ae0c7d7dcf62551ee40b51ecb5fe4f47
2011-03-01 18:44:36 -08:00
Jake Hamby
3d1fd57e30 Increase size of BT profile icons and decrease alpha for inactive profiles
Increase the size of the Bluetooth profile icons from 20dp to 30dp.
Decrease the alpha for disabled profile icons to 50% of theme default.

Bug: 3400851
Change-Id: Ieb5ecb01ccbd7185d383828e0d9c9f78525ee0c4
2011-01-27 18:33:17 -08:00
Jake Hamby
39ef225e7c Enable reverse tethering in BT settings screen.
- Enable support for reverse tethering in BT settings.
- Add string resource for "Auto connect" preference.
- Remove unused imports and other minor cleanups.
- Add isConnectable() and isAutoConnectable() methods to Profile
  enum type and remove isConnectableProfile() method.

Change-Id: Ie606db04028a8278e98231f0671a388671f2f067
2010-12-22 14:54:33 -08:00