Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 9af35bb7 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Bluetooth A2DP Sink only connect from Disconnected state" into pi-dev

parents 69cb54e9 3647a5f0
Loading
Loading
Loading
Loading
+3 −23
Original line number Diff line number Diff line
@@ -304,7 +304,7 @@ public class A2dpSinkStateMachine extends StateMachine {
            boolean retValue = HANDLED;
            switch (message.what) {
                case CONNECT:
                    deferMessage(message);
                    logd("Disconnect before connecting to another target");
                    break;
                case CONNECT_TIMEOUT:
                    onConnectionStateChanged(getByteAddress(mTargetDevice),
@@ -320,8 +320,6 @@ public class A2dpSinkStateMachine extends StateMachine {
                        synchronized (A2dpSinkStateMachine.this) {
                            mTargetDevice = null;
                        }
                    } else {
                        deferMessage(message);
                    }
                    break;
                case STACK_EVENT:
@@ -516,26 +514,8 @@ public class A2dpSinkStateMachine extends StateMachine {
            }

            switch (message.what) {
                case CONNECT: {
                    BluetoothDevice device = (BluetoothDevice) message.obj;
                    if (mCurrentDevice.equals(device)) {
                        break;
                    }

                    broadcastConnectionState(device, BluetoothProfile.STATE_CONNECTING,
                            BluetoothProfile.STATE_DISCONNECTED);
                    if (!disconnectA2dpNative(getByteAddress(mCurrentDevice))) {
                        broadcastConnectionState(device, BluetoothProfile.STATE_DISCONNECTED,
                                BluetoothProfile.STATE_CONNECTING);
                        break;
                    }

                    synchronized (A2dpSinkStateMachine.this) {
                        mTargetDevice = device;
                        mStreaming.obtainMessage(A2dpSinkStreamHandler.DISCONNECT).sendToTarget();
                        transitionTo(mPending);
                    }
                }
                case CONNECT:
                    logd("Disconnect before connecting to another target");
                break;

                case DISCONNECT: {