summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/bluetooth/LocalBluetoothProfileManager.java
Commit message (Collapse)AuthorAgeFilesLines
* Remove Profile Auto connection specific logicGanesh Ganapathi Batta2012-08-061-153/+11
| | | | | | | | 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
* Fix for correctly enabling PAN profile in SettingsSyed Ibrahim M2012-08-011-3/+6
| | | | | | | | | | 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
* Fix for When Hf is rejected the device should initiate A2dp if a2dp is enabledSwaminatha Balaji2012-08-011-0/+38
| | | | Change-Id: I0716782a5308cc45297a30d0a7371286c75bfa52
* Add dev to cached dev list if entry is missing before auto connectGanesh Ganapathi Batta2012-08-011-6/+8
| | | | | | Fix for BLTH01482218 Change-Id: I7d5cfad3eff872b5eb0b0c71804f25f3c3334557
* Auto connect hf/a2dp when any one of them gets connected and timeout happensSwaminatha Balaji2012-07-161-0/+70
| | | | Change-Id: I6249c2fceab87f91c6629d19f72268d000ecf61c
* Auto connect hf/a2dpSwaminatha Balaji2012-07-161-1/+49
| | | | Change-Id: I4cb260a1f794c2e094a0b19bdc1df919c4287232
* Improve Bluetooth tethering UI usability.Jake Hamby2011-03-091-7/+42
| | | | | | | | | | | | | | | | | | | | | | | | | | - Updated hint text for BT tethering checkbox to "[Sharing|not sharing] this [tablet|phone]'s mobile data connection". - Show correct hint text when user enters tethering screen. - Show correct status after user enables tethering when Bluetooth is off. When BluetoothPan.setBluetoothTethering(true) is called with BT off, BluetoothPanProfileHandler will add a broadcast receiver to enable tethering after BT turns on. This happens too late to show the correct status when TetherSettings gets the adapter state changed event, so set a flag (mBluetoothEnableForTether) instead, and call setBluetoothTethering ourselves after the state changes to ON. Also, clear the flag if the adapter state changes to OFF or ERROR. - Show correct status when user enables tethering, then disables Bluetooth, then returns to the tethering screen. Previously it would show Bluetooth tethering enabled, even though adapter state was OFF. - Show the number of connected devices in tethering preference screen. - Distinguish between PANU and NAP in device profiles screen, and show appropriate text to clarify the direction of tethering. - Remove profiles from device profiles list when the device removes the UUID (e.g. Mac OS X turning NAP on/off) and after a NAP disconnection when the remote device only supports PANU. Bug: 3414575 Change-Id: I2c0830876d5b9bddb293e57c4d3ca74f105911b8
* Settings app: Run Bluetooth Event receiver when not in fg.Jaikumar Ganesh2011-03-041-1/+2
| | | | | | | Also fix connection indication issues. Fixes bugs 3510336 and 3513352 Change-Id: Iaa47c9d7fd04fa5dd2700f55993ba2fd1a78fd70
* Refactor Bluetooth settings for readability and performance.Jake Hamby2011-03-011-711/+184
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Make BluetoothPan implement BluetoothProfile.Jaikumar Ganesh2011-02-231-4/+14
| | | | | | This makes it consistent across all other profiles. Change-Id: I4c0694d042d7ed1b78c92ca3be38c8d543886769
* Update code for making BluetoothInputProfile implement BluetoothProfile.Jaikumar Ganesh2011-02-181-16/+26
| | | | Change-Id: Ib04abc590429eaa40c0ea1bd24fa728d41306fe8
* Don't display extra A2DP profile icon for OPP.Jake Hamby2011-01-271-1/+1
| | | | | | | | | | The getDrawableResource() method for OppProfileManager was returning the resource ID for the A2DP icon. This was causing an extra headset icon to be drawn for devices supporting OPP, when no icon should be shown for this profile. Changed to return 0. Bug: 3368197 Change-Id: Idcadaf59fe53301544cda215ca24f15608b2d727
* Fix settings NPE crash on launch.Jake Hamby2011-01-261-1/+6
| | | | | | | | | | | | | Sometimes when the settings app is resumed, HeadsetProfileManager's getConnectedDevices() method is called before the onServiceConnected() callback gives us the proxy object, causing an NPE. Check that we have the proxy object, and return an empty list otherwise. The correct states will be shown in the UI because the onServiceConnected() callback makes its own call to getConnectedDevices() to set the correct headset profile state. Bug: 3378431 Change-Id: I364ade0804fb2090378438c8721afef6cac2b0b8
* Add icons for Bluetooth HID and PAN profiles.Jake Hamby2011-01-191-6/+3
| | | | | | | | Add icon resources for Bluetooth keyboard/mouse (HID profile) and reverse tethering (PAN profile). Bug: 3137982 Change-Id: Id6c4a9f2b4bee2fdf43626592e32070b49e49d73
* Allow multiple simultaneous connections for BT input devices.Jake Hamby2011-01-101-0/+12
| | | | | | | | | | | | | Move responsibility for disconnecting devices before connecting a new profile from CachedBluetoothDevice to LocalBluetoothProfileManager. The ProfileManager subclasses of LocalBluetoothProfileManager will handle disconnecting the previously connected device, if necessary, as part of connect(). The HID profile allows multiple simultaneous connected devices, while the other supported profiles do not. Bug: 3333975 Change-Id: Id51b26e64f7c3ee7d54af3a03ca82a669f305b52
* Enable reverse tethering in BT settings screen.Jake Hamby2010-12-221-23/+31
| | | | | | | | | | - 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
* Add ability to connect to only headset profile.Jaikumar Ganesh2010-12-101-14/+24
| | | | | | Fix some SDP records issues. Change-Id: I42816527b1ae0749b4b59b7947f1acb9d2e6f001
* Implement BT settings functionality for new UI.Jake Hamby2010-12-091-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | - Removed context menu logic for long press (no longer used). - Converted device picker to run in its own Activity, using a dialog theme on large screen devices and full-screen on phones. - Removed unused resources. - Add device to "Paired devices" list when pairing is initiated by the remote device. - Return to Bluetooth settings pane after successfully pairing a new device from the "Find nearby device" pane. - Add support for renaming devices (TODO: persist the custom name and update the "bread crumb" in the action bar to the new device name). - Add support for incoming file transfer and auto connect checkboxes in DeviceProfilesSettings. - Show available and connected device profiles as icons instead of summary text. Available but disconnected profiles are drawn in gray. - Fixed bluetooth_notif_message to include the device name as a parameter instead of appending the name to the end of the localized string. - Changed some fields from private to package scope for more efficient access from inner classes. Bug: 3137982 Change-Id: Ic2d6ee5be60c9c5b3f3a8a58846d58efedfa5c93
* Update supported profiles for voice capability.Jaikumar Ganesh2010-11-231-5/+34
| | | | Change-Id: If12f97ccc5d7d54d8d3e470dd4bc91fe9119b9cd
* Implement individual Bluetooth profile connect/disconnect.Jake Hamby2010-11-031-2/+2
| | | | | | | | Allow individual Bluetooth profiles to be connected/disconnected from the device's settings pane. Bug: 3137982 Change-Id: I21512c5bf965fc523f3dc1e83d029b16b5e22440
* Bluetooth settings revampAmith Yamasani2010-10-271-3/+34
| | | | | | | | Added a separate scanning screen. UI changes to not require long-press options. Needs TODOs to be filled by BT team. Bug: 3038327
* Update BT APIs for change in return type.Jaikumar Ganesh2010-10-221-19/+14
| | | | Change-Id: Ic85b47da50876fd6bdc6e223af4248a8586d82bc
* Update code for public Bluetooth APIsJaikumar Ganesh2010-09-281-55/+76
| | | | Change-Id: Iab22e4ae3206f9085b2d53b8b18dc2abd6197226
* bluetooth tetheringDanica Chang2010-08-171-1/+94
| | | | Change-Id: I8dfb1c85bb8b963d2937b8bc4a4c9f0cf641785d
* Add keyboard support to bluetooth settings.Adam Powell2010-06-221-1/+96
| | | | Change-Id: I8fe41056acd074374cd249bfd0be6034f2614d37
* Changing disconnectHeadset calls.Jaikumar Ganesh2010-06-071-3/+6
| | | | Change-Id: I2f058f28a09e983cd42e5a74bb4ffea19f07b880
* b/2680057 Fixed a bug where bt won't connect when the phone is docked (if ↵Michael Chan2010-05-271-0/+78
| | | | | | | | Settings wasn't running). The fix was to wait for the Bluetooth Headset service to come up before grabbing the settings and connecting. Change-Id: I57affca2fe7d571c96cfeaf9ffe5439a0b02af45
* b/2367861 Auto connect if the user turns on BT while docked.Michael Chan2010-01-141-0/+17
| | | | Change-Id: I855d0448af9c9c665fb8288c83cd13ae9c3d6050
* Fix auto connection of A2DP profile.Jaikumar Ganesh2009-12-091-4/+14
| | | | | | | When the user selects profiles from the UI, set priority to ON. Dr No: Eastham Bug: 2317323
* Disconnect even Sinks in Connecting state while connecting another sink.Jaikumar Ganesh2009-12-071-2/+2
| | | | | | | We can hit this more when using a Car Dock Bug: 2133530 Dr No: Eastham
* b/2296110 New Dialog which appears when phone is place on dock.Michael Chan2009-12-031-2/+6
| | | | Change-Id: I58b216ee9b4ca9ce16210309358c0512271e128e
* b/2293042 Fixed the problem where A2DP connections may fail if there's an ↵Michael Chan2009-12-031-3/+27
| | | | | | existing connection to another device. Change-Id: I1b4963a167b633c0905e2719ab3f651ff8be9f2c
* Update to reflect new priorities for A2DP profile. DO NOT MERGE.Jaikumar Ganesh2009-12-021-2/+6
| | | | | | | | | | | | | | | | | | | | 1. PRIORITY_OFF is when it is unchecked. 2. PRIORITY_ON is when it is checked. 3. PRIORITY_AUTO_CONNECT is when we want to auto connect. When the box is checked, we want to auto connect, so set the priority to AUTO_CONNECT. When the user disconnects, we set the priority back to PRIORITY_ON. Change priority for Headset profile on the same lines as A2DP profile. AUTO_CONNECT => we auto_connect. ON => Settings app box is checked and we allow incoming connections. OFF => Settings app check box is unchecked. Dr no: Eastham Bug: 2133530
* Update application for android.bluetooth.ParcelUuid -> android.os.ParcelUuidNick Pelly2009-09-281-1/+1
| | | | Change-Id: Iebf2b3ea9cac224e3e6c67e503b1063491dce5bb
* b/2138890 Pre-initilize Bluetooth profile managersMichael Chan2009-09-241-22/+24
| | | | Change-Id: I633202457ca445308ec35b99260e603a85451042
* Filter devices by UUID and then class.Jaikumar Ganesh2009-09-231-3/+3
| | | | | | | | The settings app has been updated to use UUIDs. When there is a filter type set for device picket UI, use the UUIDs first and then the class bits. Change-Id: Ifde5dbc3a1cf25babce4c686002315aa3933de59
* b/2126036 Improve remote device capability identification by switching to ↵Michael Chan2009-09-221-35/+53
| | | | | | use UUIDs instead of class bits. Change-Id: Ie60d1c579e40027c2174215c1989887a3250c9bc
* Update application for Bluetooth API changes.Nick Pelly2009-09-101-4/+4
| | | | Change-Id: I8351611f0f0c5eda3e423dbe7e7b53e52d75ac36
* Update application for Bluetooth API change: deprecation of BluetoothError.Nick Pelly2009-09-081-15/+13
|
* Implement Bluetooth device pickerYue Lixin2009-08-191-4/+73
| | | | | | | Add Bluetooth device picker in Settings - add resource to support device picker - show different UI accroding to start Intent - add OPP profile manager
* Bluetooth: Update Settings.apk to match BT API change.Nick Pelly2009-08-171-42/+44
| | | | | | | | | Split BluetoothDevice into BluetoothDevice and BluetoothAdapter. BluetoothAdapter: Represents the local BT adapter. Operations on the local adapter (start a scan, etc). BluetoothDevice: Represents a remote BT device. Operations on remote devices (pair, connect, etc).
* Always add the bt profile to profile list on the arrive of a connect eventMichael Chan2009-05-061-8/+11
| | | | | Always add the bt profile to profile list on the arrive of a connect event. Previously, the connect event is ignored if it is a profile that's not known ahead of time.
* auto import from //branches/cupcake_rel/...@140373The Android Open Source Project2009-03-181-5/+8
|
* auto import from //branches/cupcake/...@137197The Android Open Source Project2009-03-091-0/+6
|
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-031-0/+280
|
* auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-031-280/+0
|
* auto import from //branches/cupcake/...@127101The Android Open Source Project2009-01-201-57/+30
|
* auto import from //branches/cupcake/...@126645The Android Open Source Project2009-01-151-28/+23
|
* Code drop from //branches/cupcake/...@124589The Android Open Source Project2008-12-171-0/+312