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

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

Merge "Add callback to notify the device attributes is changed"

parents 5d9e7aac e572b83c
Loading
Loading
Loading
Loading
+18 −6
Original line number Diff line number Diff line
@@ -194,6 +194,14 @@ public class LocalMediaManager implements BluetoothCallback {
        }
    }

    void dispatchDeviceAttributesChanged() {
        synchronized (mCallbacks) {
            for (DeviceCallback callback : mCallbacks) {
                callback.onDeviceAttributesChanged();
            }
        }
    }

    /**
     * Stop scan MediaDevice
     */
@@ -306,14 +314,12 @@ public class LocalMediaManager implements BluetoothCallback {
            }
            mCurrentConnectedDevice = connectDevice;
            updatePhoneMediaDeviceSummary();
            dispatchDeviceListUpdate();
            dispatchDeviceAttributesChanged();
        }

        @Override
        public void onDeviceAttributesChanged() {
            addPhoneDeviceIfNecessary();
            removePhoneMediaDeviceIfNecessary();
            dispatchDeviceListUpdate();
            dispatchDeviceAttributesChanged();
        }
    }

@@ -327,7 +333,7 @@ public class LocalMediaManager implements BluetoothCallback {
         *
         * @param devices MediaDevice list
         */
        void onDeviceListUpdate(List<MediaDevice> devices);
        default void onDeviceListUpdate(List<MediaDevice> devices) {};

        /**
         * Callback for notifying the connected device is changed.
@@ -338,6 +344,12 @@ public class LocalMediaManager implements BluetoothCallback {
         * {@link MediaDeviceState#STATE_CONNECTING},
         * {@link MediaDeviceState#STATE_DISCONNECTED}
         */
        void onSelectedDeviceStateChanged(MediaDevice device, @MediaDeviceState int state);
        default void onSelectedDeviceStateChanged(MediaDevice device,
                @MediaDeviceState int state) {};

        /**
         * Callback for notifying the device attributes is changed.
         */
        default void onDeviceAttributesChanged() {};
    }
}
+3 −3
Original line number Diff line number Diff line
@@ -355,7 +355,7 @@ public class LocalMediaManagerTest {
        mLocalMediaManager.mMediaDeviceCallback.onConnectedDeviceChanged(TEST_DEVICE_ID_2);

        assertThat(mLocalMediaManager.getCurrentConnectedDevice()).isEqualTo(device2);
        verify(mCallback).onDeviceListUpdate(any());
        verify(mCallback).onDeviceAttributesChanged();
    }

    @Test
@@ -373,7 +373,7 @@ public class LocalMediaManagerTest {
        mLocalMediaManager.registerCallback(mCallback);
        mLocalMediaManager.mMediaDeviceCallback.onConnectedDeviceChanged(TEST_DEVICE_ID_1);

        verify(mCallback, never()).onDeviceListUpdate(any());
        verify(mCallback, never()).onDeviceAttributesChanged();
    }

    @Test
@@ -382,6 +382,6 @@ public class LocalMediaManagerTest {

        mLocalMediaManager.mMediaDeviceCallback.onDeviceAttributesChanged();

        verify(mCallback).onDeviceListUpdate(any());
        verify(mCallback).onDeviceAttributesChanged();
    }
}