Merge "[Audiosharing] Support sharing dialog when click media devices." into main

This commit is contained in:
Yiyi Shen
2024-03-25 02:44:35 +00:00
committed by Android (Google) Code Review
7 changed files with 46 additions and 23 deletions

View File

@@ -136,12 +136,8 @@ public class AvailableMediaBluetoothDeviceUpdater extends BluetoothDeviceUpdater
@Override
public boolean onPreferenceClick(Preference preference) {
mMetricsFeatureProvider.logClickedPreference(preference, mMetricsCategory);
final CachedBluetoothDevice device =
((BluetoothDevicePreference) preference).getBluetoothDevice();
FeatureFactory.getFeatureFactory()
.getAudioSharingFeatureProvider()
.handleMediaDeviceOnClick(mLocalManager);
return device.setActive();
mDevicePreferenceCallback.onDeviceClick(preference);
return true;
}
@Override

View File

@@ -35,6 +35,7 @@ import androidx.preference.PreferenceScreen;
import com.android.settings.R;
import com.android.settings.accessibility.HearingAidUtils;
import com.android.settings.bluetooth.AvailableMediaBluetoothDeviceUpdater;
import com.android.settings.bluetooth.BluetoothDevicePreference;
import com.android.settings.bluetooth.BluetoothDeviceUpdater;
import com.android.settings.bluetooth.Utils;
import com.android.settings.core.BasePreferenceController;
@@ -150,6 +151,13 @@ public class AvailableMediaDeviceGroupController extends BasePreferenceControlle
}
}
@Override
public void onDeviceClick(Preference preference) {
final CachedBluetoothDevice cachedDevice =
((BluetoothDevicePreference) preference).getBluetoothDevice();
cachedDevice.setActive();
}
public void init(DashboardFragment fragment) {
mFragmentManager = fragment.getParentFragmentManager();
mBluetoothDeviceUpdater =

View File

@@ -18,19 +18,26 @@ package com.android.settings.connecteddevice;
import androidx.preference.Preference;
/**
* Callback to add or remove {@link Preference} in device group.
*/
/** Callback to add or remove {@link Preference} in device group. */
public interface DevicePreferenceCallback {
/**
* Called when a device(i.e. bluetooth, usb) is added
*
* @param preference present the device
*/
void onDeviceAdded(Preference preference);
/**
* Called when a device(i.e. bluetooth, usb) is removed
*
* @param preference present the device
*/
void onDeviceRemoved(Preference preference);
/**
* Called when a device(i.e. bluetooth, usb) is click
*
* @param preference present the device
*/
default void onDeviceClick(Preference preference) {}
}

View File

@@ -50,7 +50,4 @@ public interface AudioSharingFeatureProvider {
*/
boolean isAudioSharingFilterMatched(
@NonNull CachedBluetoothDevice cachedDevice, LocalBluetoothManager localBtManager);
/** Handle preference onClick in "Media devices" section. */
void handleMediaDeviceOnClick(LocalBluetoothManager localBtManager);
}

View File

@@ -52,7 +52,4 @@ public class AudioSharingFeatureProviderImpl implements AudioSharingFeatureProvi
@NonNull CachedBluetoothDevice cachedDevice, LocalBluetoothManager localBtManager) {
return false;
}
@Override
public void handleMediaDeviceOnClick(LocalBluetoothManager localBtManager) {}
}