diff --git a/src/com/android/settings/bluetooth/BluetoothDetailsButtonsController.java b/src/com/android/settings/bluetooth/BluetoothDetailsButtonsController.java index c8078938b6d..2ade4eca44d 100644 --- a/src/com/android/settings/bluetooth/BluetoothDetailsButtonsController.java +++ b/src/com/android/settings/bluetooth/BluetoothDetailsButtonsController.java @@ -16,6 +16,7 @@ package com.android.settings.bluetooth; +import android.app.settings.SettingsEnums; import android.content.Context; import androidx.preference.PreferenceFragmentCompat; @@ -70,7 +71,11 @@ public class BluetoothDetailsButtonsController extends BluetoothDetailsControlle mActionButtons .setButton2Text(R.string.bluetooth_device_context_disconnect) .setButton2Icon(R.drawable.ic_settings_close) - .setButton2OnClickListener(view -> mCachedDevice.disconnect()); + .setButton2OnClickListener(view -> { + mMetricsFeatureProvider.action(mContext, + SettingsEnums.ACTION_SETTINGS_BLUETOOTH_DISCONNECT); + mCachedDevice.disconnect(); + }); mConnectButtonInitialized = true; } } else { @@ -79,7 +84,11 @@ public class BluetoothDetailsButtonsController extends BluetoothDetailsControlle .setButton2Text(R.string.bluetooth_device_context_connect) .setButton2Icon(R.drawable.ic_add_24dp) .setButton2OnClickListener( - view -> mCachedDevice.connect()); + view -> { + mMetricsFeatureProvider.action(mContext, + SettingsEnums.ACTION_SETTINGS_BLUETOOTH_CONNECT); + mCachedDevice.connect(); + }); mConnectButtonInitialized = true; } } diff --git a/src/com/android/settings/bluetooth/BluetoothDetailsController.java b/src/com/android/settings/bluetooth/BluetoothDetailsController.java index bb489044f89..5444f682f97 100644 --- a/src/com/android/settings/bluetooth/BluetoothDetailsController.java +++ b/src/com/android/settings/bluetooth/BluetoothDetailsController.java @@ -22,8 +22,10 @@ import androidx.preference.PreferenceFragmentCompat; import androidx.preference.PreferenceScreen; import com.android.settings.core.PreferenceControllerMixin; +import com.android.settings.overlay.FeatureFactory; import com.android.settingslib.bluetooth.CachedBluetoothDevice; import com.android.settingslib.core.AbstractPreferenceController; +import com.android.settingslib.core.instrumentation.MetricsFeatureProvider; import com.android.settingslib.core.lifecycle.Lifecycle; import com.android.settingslib.core.lifecycle.LifecycleObserver; import com.android.settingslib.core.lifecycle.events.OnPause; @@ -40,6 +42,7 @@ public abstract class BluetoothDetailsController extends AbstractPreferenceContr protected final Context mContext; protected final PreferenceFragmentCompat mFragment; protected final CachedBluetoothDevice mCachedDevice; + protected final MetricsFeatureProvider mMetricsFeatureProvider; public BluetoothDetailsController(Context context, PreferenceFragmentCompat fragment, CachedBluetoothDevice device, Lifecycle lifecycle) { @@ -48,6 +51,7 @@ public abstract class BluetoothDetailsController extends AbstractPreferenceContr mFragment = fragment; mCachedDevice = device; lifecycle.addObserver(this); + mMetricsFeatureProvider = FeatureFactory.getFactory(context).getMetricsFeatureProvider(); } @Override diff --git a/src/com/android/settings/bluetooth/SavedBluetoothDeviceUpdater.java b/src/com/android/settings/bluetooth/SavedBluetoothDeviceUpdater.java index f5bc279b8a3..3bdf91e9d3b 100644 --- a/src/com/android/settings/bluetooth/SavedBluetoothDeviceUpdater.java +++ b/src/com/android/settings/bluetooth/SavedBluetoothDeviceUpdater.java @@ -15,6 +15,7 @@ */ package com.android.settings.bluetooth; +import android.app.settings.SettingsEnums; import android.bluetooth.BluetoothAdapter; import android.bluetooth.BluetoothDevice; import android.content.Context; @@ -116,6 +117,8 @@ public class SavedBluetoothDeviceUpdater extends BluetoothDeviceUpdater if (device.isConnected()) { return device.setActive(); } + mMetricsFeatureProvider.action(mPrefContext, + SettingsEnums.ACTION_SETTINGS_BLUETOOTH_CONNECT); device.connect(); return true; }