Commit Graph

1451 Commits

Author SHA1 Message Date
Fabrice Di Meglio
3b52963edf Fix bug #12898564 Settings Crash on Renaming the device.
- remove the call to PreferencesActivity as we are no more using the PreferencesActivity

Also set correct activity title with the new selected BT name for the device.

Change-Id: I03497187e0410ff2bba87bdb04a197938d1ea967
2014-02-05 15:18:18 -08:00
Fabrice Di Meglio
90e9e6cd30 Fix bug #12895706 BT settings crash with java.lang.ClassCastException: com.android.settings.Settings cannot be cast to android.preference.PreferenceActivity
- remove the PreferenceActivity related code as we are no more using PreferenceActivity (and Settings is a derive of
SettingsActivity)

Change-Id: I3c650c03cd205d9c06679974ae4d832ced25459b
2014-02-04 14:38:59 -08:00
Fabrice Di Meglio
263bcc8b73 Use Drawer in Settings app
- get rid of PreferenceActivity as much as we can and use fragments instead
- add Drawer widget
- add Dashboard high level entry into the Drawer (but this is work in progress and would be done in another CL)
- add bypass of fragment's Header  validation when launched from the Drawer but *force* validation if external
call thru an Intent

Be aware that WifiPickerActivity should remain for now a PreferenceActivity. It is used by SetupWizard and should
not trigger running the SettingsActivity's header building code. SetupWizard is a Home during the provisionnig process
and then deactivate itself as a Home but would make the Home header to appear in the Drawer (because momentarily we
would have two Home).

Also, verified that:

- the WiFi settings still work when called from SetupWizard
- when you have multiple Launchers, the Home header will appear in the list of Headers in the Drawer

Change-Id: I407a5e0fdd843ad7615d3d511c416a44e3d97c90
2014-02-03 16:36:46 -08:00
Wei Wang
f4f8d9f346 BLE peripheral mode (4/4): Settings change for advertising preference.
Change-Id: I5721f136267fe25e55f764bb4a6c53acd45b318b
2014-01-14 18:06:42 -08:00
Wei Wang
eb56b9ccb8 BLE peripheral mode (4/4): Settings change for advertising preference.
Change-Id: I5721f136267fe25e55f764bb4a6c53acd45b318b
2014-01-13 17:41:02 -08:00
Kim Schulz
54313d7d66 BLuetooth Discoverable timer not correctly cleared
Changing the discoverable timer from 2min to infinity before the 2min timer
has passed will not clear the 2min timer.
This fix handles this case.

Bug: 12220031
Change-Id: I8794eda353c74e46b09e15ee9a7a491658e7b5cd
2013-12-19 13:45:11 -08:00
Zhihai Xu
1b5bd091eb need persist adding bluetooth MAP profile to profile list in case the settings process being killed
bug:11303213
Change-Id: I1f227839931872ba6fdca0b5932a24e0b002ec44
2013-10-19 23:37:35 -07:00
Zhihai Xu
1083b4726b BT keeps on asking me if I want to allow car to do stuff
Persist the "no" count
bug:11176511

Change-Id: I39674334fe8bf09d1f3f2b07c12513a6c46f053b
2013-10-17 17:11:38 -07:00
Zhihai Xu
3fd5e2839f BT keeps on asking me if I want to allow car to do stuff
remember how many time the user choose the "no",
if user choose "no" twice, we will make it persist.
bug:11176511

Change-Id: I7234e7b4ba4586065dea462029e2da5ddaf53316
2013-10-15 11:27:54 -07:00
Zhihai Xu
9998639a65 BT keeps on asking me if I want to allow car to do stuff
We can remember it as a non persist global value when user click no.
This value won't be saved when power down.
We will restore the permission choice
when we are disconnected with the remote device.
So the "no" choice selected by user will only take effect
until we are disconnected with the remote device.

bug:11176511
Change-Id: Ic0c0829587cf7a812b5fa96fbd381921f67c186f
2013-10-11 12:15:19 -07:00
Edward Jee
46c746551f Once the user allows PBAP phonebook access, do not ask again.
Bug: 9876209
Change-Id: I8d9dcfa03e8d85577af4c4664fa34b3830e3d8f6
2013-09-23 15:21:27 -07:00
Kim Schulz
5d2595f051 MAP 1.1 Review fixes
- Fixes to the issues found during review.
- added support for BluetoothProfile ProfileService Classes
- Added new MapProfile.java to comply with new structure
- changed ORDINAL to use BluetoothProfile.MAP directly
- Moved construction of MapProfile to LocalBluetoothProfileManager constructor
- Added support for multiple concurent permission activities and/or multiple notifications (i.e. pbap and map permission request right after each other)
- cleanup
- changed settings to use Notification.Builder
- made the notifications for map/pbab more informative
- added handling of back button + "clear all notifications"

Bug:10692365
Change-Id: I9803c9658a96b1a9c1d4734d2fdd22f1421d2827
2013-09-13 15:44:26 -07:00
Andre Eisenbach
79f3384eaa LE: Add support for the HID-over-GATT profile (3/3)
bug:8330048
Change-Id: I0999c3af999939aec88eba4c38bca4358c554e69
2013-08-15 15:21:27 -07:00
Maggie Benthall
cd3eb97ce5 Merge "Fix bug when sharing to bluetooth." into klp-dev 2013-08-13 17:00:25 +00:00
Maggie Benthall
3343d1aabb Fix bug when sharing to bluetooth.
Bug:10259347
Change-Id: I860a758333947c4207d7acda41e43b8bd1d671df
2013-08-12 18:40:45 -04:00
Matthew Xie
5b5b1e39dd Bluetooth MAP profile - sms and mms support initial check-in
bug:10116530

Change-Id: I3f50e66420e53bf21a1ecba06aed6b8261ff3064
2013-08-09 15:47:10 -07:00
Geoffrey Borggaard
fe21d9aaa8 Pin protect more screens.
When these screens are locked down with user restrictions,
it should prompt the user for the restrictions pin before allowing
access to the settings screen.

Change-Id: Iadbb087da2d9470b855ea0bea89f2da1ffb9e854
2013-08-06 17:24:37 -04:00
Jake Hamby
18c4317b93 Show correct A2DP connection status in Bluetooth settings.
When BluetoothSettings is entered via QuickSettings while an A2DP
device is connected, we aren't showing the device connection
status in the UI, because the device list is created before we've
connected to the A2DP and Headset profile services, and we weren't
refreshing the device list UI after getting the callback for
onServiceConnected() and retrieving the list of connected devices.

Add a line to HeadsetServiceListener.onServiceConnected() to call
device.refresh() after we call device.onProfileStateChanged() to
refresh the device list UI. Also copy the logic into A2dpProfile's
onServiceConnected() callback so it will refresh the UI for any
connected A2DP devices.

The reason this bug doesn't show up when entering BT settings
from the main Settings screen is because the onServiceConnected()
callbacks happen before the device list is initialized, so the
UI items are created with the correct connection status. For the
same reason, the bug doesn't occur if the Settings app is already
running and we re-enter it via Bluetooth QuickSettings.

Bug: 8724247
Change-Id: I1a993636ecab18dd6e980e3b4d2485bbed256d74
2013-04-30 13:51:38 -07:00
Fabrice Di Meglio
ae8d5bdc5b Fix bug #8665924 Native arabic numerals in the bluetooth pairing ui
- force LATIN digits for passkey

Change-Id: Ifc7fc746677df4c1e9013ecfe6e9f4887f2d4f1d
2013-04-19 13:50:59 -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
Fabrice Di Meglio
b27223f139 Fix Switches padding for Settings app
- use setPaddingRelative() instead of setPadding()

Change-Id: Ifd14193a5f60d303035b394616dc65a70e1ef5f9
2013-01-15 18:54:11 -08:00
Jake Hamby
95c1003f1c Fix Bluetooth enable dialog to match Android style guide.
When an app requests to enable Bluetooth and/or Bluetooth discovery,
we show a dialog for user confirmation. Remove the dialog title,
update the message text and button labels to be more descriptive,
and use the standard dialog layout instead of a custom layout.

Also fixes the button layout on the Bluetooth permission test app so
that the "Discoverable" button doesn't wrap to two lines.

Bug: 6001468
Change-Id: I731e2f31b4c822395fc3f83584a092550d9ae7d3
2012-11-20 18:21:44 -08:00
Eric Laurent
9f4afb0762 fix dock audio enable dialog
The dock audio enable setting is not saved if the user
dismisses the dialog without checking or unchecking the check box.
The dialog is then displayed each time the device is docked until the
user checks/unchecks the dialog or goes to sound settings to enable
or disable dock audio.

Bug 7518165.

Change-Id: Ifbc6179e78b64b5b7577ac750acf9846525e47c5
2012-11-12 14:29:17 -08:00
Eric Laurent
f892bc856c display audio dialog when connecting low end dock
Display a dialog to enable the use of the dock audio connection
when a low end dock is connected for the first time.

Modify DockService to process docked and undocked messages even if
the device indicated is null (meaning the dock is not a bluetooth dock)
only for low end docks.

Bug 7302106.

Change-Id: I331d83a74fecf5f26b24bfc178342df414bd8153
2012-10-30 10:41:46 -07:00
Jeff Sharkey
5a740ab1b9 Merge "More migration to Global settings." into jb-mr1-dev 2012-10-18 23:23:08 -07:00
Jeff Sharkey
860eceba2c More migration to Global settings.
Bug: 7375796
Change-Id: I43079368c32e91e8bb75b00377cd57d1766f15d4
2012-10-18 15:38:42 -07:00
Zhihai Xu
ec16c0ae42 bluetooth won't turn on after turn Airplane mode off on setting screen on manta(tablet)
The root cause is normally when change the airplane mode, the bluetooth setting UI
 will not be foreground. No listener is setup for bluetooth setting UI when it is
 in background. So the onCheckedChanged won't be called and mLocalAdapter.setBluetoothEnabled
 won't be called. But for manta, airplane mode setting and bluetooth setting UI both
 will show on the foreground due to bigger screen size. When we turn ariplane mode on,
 bluetooth manager service will disable bluetooth without changing the persist bluetooth setting.
 But bluetooth setting UI will listen to the bluetooth state change intent, it will receive
 bluetooth state turn-off intent then it will call mSwitch.setChecked(false) in handleStateChanged,
 which cause checked status changed from true to false to trigger the listener (onCheckedChanged)
 being called. The listener will call mAdapter.disable() which will call mManagerService.disable(true)
 to change bluetooth persist state to OFF. So when we turn back airplane more to OFF,
 due to the bluetooth persist state is OFF, we won't turn back bluetooth to ON.
 Don't need to consider thread synchronization, because everything is running on the main thread.

bug 7366814

Change-Id: I138d1904df6cb17c7828295caa51a7d80abf99f2
2012-10-18 13:03:10 -07:00
Irfan Sheriff
4aaebfe591 Revert "bluetooth won't turn on after turn Airplane mode off on setting screen on manta(tablet)"
This reverts commit 0b21b3d725.
Bug: 7366814

Change-Id: I0992e9ca1a6e36ebc3a717137a6c494835fad712
2012-10-17 18:45:42 -07:00
Zhihai Xu
0b21b3d725 bluetooth won't turn on after turn Airplane mode off on setting screen on manta(tablet)
The root cause is normally when change the airplane mode, the bluetooth setting UI
 will not be foreground. No listener is setup for bluetooth setting UI when it is
 in background. So the onCheckedChanged won't be called and mLocalAdapter.setBluetoothEnabled
 won't be called. But for manta, airplane mode setting and bluetooth setting UI both
 will show on the foreground due to bigger screen size. When we turn ariplane mode on,
 bluetooth manager service will disable bluetooth without changing the persist bluetooth setting.
 But bluetooth setting UI will listen to the bluetooth state change intent, it will receive
 bluetooth state turn-off intent then it will call mSwitch.setChecked(false) in handleStateChanged,
 which cause checked status changed from true to false to trigger the listener (onCheckedChanged)
 being called. The listener will call mAdapter.disable() which will call mManagerService.disable(true)
 to change bluetooth persist state to OFF. So when we turn back airplane more to OFF,
 due to the bluetooth persist state is OFF, we won't turn back bluetooth to ON.

bug 7366814
Change-Id: I07d4a2dfe03fc6775cfeabb28cd3a0cc1fded44e
2012-10-17 13:57:43 -07:00
Jake Hamby
904d3726d4 Allow disconnected BT profiles to be unchecked in Settings.
In the Bluetooth profile list, the checkbox indicates whether the
profile is preferred (we should auto connect). If the profile is
not connected, selecting it will try to connect the profile and set
it to preferred. If the profile can't be connected, then the user
could not turn off the preferred setting for the profile.

Change the behavior so that when a profile is not connected,
but is marked as preferred, selecting the profile will turn off the
preferred setting (no auto connect) instead of trying to connect.
This enables the user to turn off auto connect for a profile when
it can't be connected. Tapping a second time will try to connect
the profile and set it as preferred, as usual.

Also change PanProfile to return the current connection status for
isPreferred() instead of always returning true. Currently, the
PAN profile is always checked, which is confusing because it looks
like PAN is always connected. Also, because of the new behavior
when a profile is selected, it's now necessary to return false for
isPreferred() when PAN isn't connected, so that we will try to
connect when the user selects it, instead of trying to turn off
the preferred setting, which isn't supported for PAN.

Bug: 7007641
Change-Id: Ifb0f51a15379bc254933168c43bdfc8b22f26051
2012-10-04 17:42:38 -07:00
Jeff Brown
a17a5b814f Fix regression in Bluetooth settings.
Bug: 7207090
Change-Id: Ie14a1d36a61b571766d2025ed7d8079712727690
2012-09-24 20:33:51 -07:00
Jeff Brown
9e143f5e9d First draft of wifi display settings UI.
All of the functionality is in place but the UI is
not fully polished yet.

Bug: 7178216
Change-Id: Id76843bff05cc71e5c02a31bc97c7070d58fff10
2012-09-19 21:37:20 -07:00
Andy Stadler
1490075dff Rename file to satisfy strict Java requirement
There is no code change, the classname is OK, it was just the
filename that needed a tweak.

Original code was Change-Id: I381ed96f6b57f414bbaccd694f55d2b992e330a4

Change-Id: I14f2009cff186647a736b1183acf815713234dd5
2012-09-18 14:43:42 -07:00
Matthew Xie
be82dab9d5 am 206f87c5: am cce52bd3: Merge "Fix NPE in bluetooth Permission Activity" into jb-mr1-dev
* commit '206f87c5b99c5653b83ba55682ab4dd622fbfe6c':
  Fix NPE in bluetooth Permission Activity
2012-09-10 17:15:25 -07:00
Ganesh Ganapathi Batta
40b77fe04b Fix NPE in bluetooth Permission Activity
This fixes a NPE by ensuring that cached device  list has
a cached device associated with a given BDA before accessing
the cached device
Bug:5964529

Change-Id: Ib2c3596e6e008c78f9f1137134e421ca710e1217
2012-09-10 12:50:05 -07:00
Matthew Xie
1e1e15b59d am 0aeb8f2e: am 952146ee: Merge "Clear profile connnection status of bonded devices when BT is turned off" into jb-mr1-dev
* commit '0aeb8f2ee1fcdaaf624e38a4abef47a1a5909b95':
  Clear profile connnection status of bonded devices when BT is turned off
2012-09-04 15:34:23 -07:00
Ganesh Ganapathi Batta
7951b43bd9 Clear profile connnection status of bonded devices when BT is turned off
When BT is turned off in mid of a profile connection, sometimes
profile connection status change message with status= DISCONNECTED
does not reach Settings app which results in stale connection status
for the device when BT is enabled next time. Fixed the issue
By explicitly clearing the connection status for all paired devices
when BT is turning OFF

Change-Id: I5d0c158636f3b62eff9094821abe2ef3a7cab16e
2012-09-04 15:18:25 -07:00
Jean-Baptiste Queru
c3b7086802 am 463b501e: am 9e8e9a17: am 6fb425e2: am eefa61ed: Merge "Settings: Use ICS alert drawable"
* commit '463b501e6c50fb2312e83b520147af41b253dd8f':
  Settings: Use ICS alert drawable
2012-08-13 16:10:23 -07:00
Jean-Baptiste Queru
9e8e9a1783 am 6fb425e2: am eefa61ed: Merge "Settings: Use ICS alert drawable"
* commit '6fb425e2805a1c27c048fc954d402f4612cbf74d':
  Settings: Use ICS alert drawable
2012-08-13 16:03:15 -07:00
Jean-Baptiste Queru
eefa61ed2e Merge "Settings: Use ICS alert drawable" 2012-08-13 11:53:46 -07:00
Matthew Xie
4b6c57c74b am 83457dd7: am a1f463cb: Merge "Remove Profile Auto connection specific logic" into jb-mr1-dev
* commit '83457dd79bb481afe9a1ad16259802b0a09fe68a':
  Remove Profile Auto connection specific logic
2012-08-08 00:37:48 -07:00
Ganesh Ganapathi Batta
0654b71534 Remove Profile Auto connection specific logic
Remove  profile auto connection specific logic as it is not implemented in
Bluetooth app
Disconnect PBAP server connection  when user initiates device level disconnection

Change-Id: I381ed96f6b57f414bbaccd694f55d2b992e330a4
2012-08-06 23:27:27 -07:00
Matthew Xie
b0280b7dfc am 8756c500: am 9effd146: Merge "Fix for correctly enabling PAN profile in Settings Update the connected profile list in CachedBluetoothDevice correctly if a PANU-NAP connection is already existing but the onUuidChanged() callback doesnt contain the PANU UUID in SDP i
* commit '8756c500a1aa22b9b81eeeb7f25ec7246a1c1464':
  Fix for correctly enabling PAN profile in Settings Update the connected profile list in CachedBluetoothDevice correctly if a PANU-NAP connection is already existing but the onUuidChanged() callback doesnt contain the PANU UUID in SDP inquiry. Now, the DeviceProfileSettings screens displays valid 'Internet connection sharing' option when connected as a NAP to remote PANU.
2012-08-06 22:52:27 -07:00
Syed Ibrahim M
6bce91bb9b Fix for correctly enabling PAN profile in Settings
Update the connected profile list in CachedBluetoothDevice correctly
if a PANU-NAP connection is already existing but the onUuidChanged()
callback doesnt contain the PANU UUID in SDP inquiry. Now, the
DeviceProfileSettings screens displays valid 'Internet connection
sharing' option when connected as a NAP to remote PANU.

Change-Id: I35821233e7776fb13f7fb1eb22af992b497202a9
2012-08-01 23:52:47 -07:00
Justin Koh
0962a5cf35 am 7b065464: Move BT settings appliance check after foreground check.
* commit '7b065464c996b792c1ecdd9d8c93db1bf0538b8d':
  Move BT settings appliance check after foreground check.
2012-08-01 10:59:34 -07:00
Ravi Nagarajan
c70f548355 Reset the priority on unbond
Change-Id: I67b68bd70b947177218e0b908b79ebb9de9f45a8
2012-08-01 00:25:24 -07:00
Swaminatha Balaji
b45e3c8fe9 Fix for When Hf is rejected the device should initiate A2dp if a2dp is enabled
Change-Id: I0716782a5308cc45297a30d0a7371286c75bfa52
2012-08-01 00:23:58 -07:00
Ganesh Ganapathi Batta
802956ec9b Add dev to cached dev list if entry is missing before auto connect
Fix for BLTH01482218

Change-Id: I7d5cfad3eff872b5eb0b0c71804f25f3c3334557
2012-08-01 00:23:37 -07:00
Justin Koh
7b065464c9 Move BT settings appliance check after foreground check.
Move the BT settings appliance check after the foreground activity check.
This allows us to pair bt devices if we have a UI hooked up instead of never
allowing it.

TESTED = runs on Nexus Q.

Change-Id: I3c1ea4abb8d05236d91d2525934bec757cc5ca88
2012-07-31 18:32:39 -07:00
Fabrice Di Meglio
79d8e80a30 Make Settings app aware of layout direction
- see bug #5429822 UI should be mirrored for RTL locales (Arabic, Hebrew, farsi)

Change-Id: I696c0f66a16640af767da3c05b5d300fd2284ecb
2012-07-24 15:02:12 -07:00