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
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
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
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
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
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
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
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
* 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.
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
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
Earlier, the checkbox state was not being updated when the connection state changed for media audio, when connected from headset
Change-Id: Ic46a8a87b74cbe76f0e8b62428516af5594526ec
Disables the BluetoothPairingDialog if we are in appliance mode.
Bug: 6392817
TESTED = runs on Tungsten.
Change-Id: I62191496b412c6196e9a18a1dd1d3bc3dd70ba0c
The soft keyboard should automatically pop up when the user selects
the Bluetooth rename device menu item. Fixed by calling
setSoftInputMode(SOFT_INPUT_STATE_ALWAYS_VISIBLE) on the Window
containing the AlertDialog before showing.
The device name field should also be a single line field, with the
Done button causing the device to be renamed. Set the "singleLine"
attribute in the layout XML to true, and added a
TextView.OnEditorActionListener to set the device name and dismiss
the dialog for EditorInfo.IME_ACTION_DONE.
Bug: 5342542
Bug: 5343354
Change-Id: I550d8e9a59395ad66f8a9c11d29c0f2ef278c196