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

Commit 56a2c2eb 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 7933e26f 2341c35b
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: {