Merge "Revert "Convert clipboard access to use new APIs"" into main
diff --git a/src/com/android/settings/privacy/ShowClipAccessNotificationPreferenceController.java b/src/com/android/settings/privacy/ShowClipAccessNotificationPreferenceController.java
index bd829b5..ad57073 100644
--- a/src/com/android/settings/privacy/ShowClipAccessNotificationPreferenceController.java
+++ b/src/com/android/settings/privacy/ShowClipAccessNotificationPreferenceController.java
@@ -19,6 +19,7 @@
import android.content.ClipboardManager;
import android.content.Context;
import android.provider.DeviceConfig;
+import android.provider.Settings;
import androidx.lifecycle.Lifecycle;
import androidx.lifecycle.LifecycleObserver;
@@ -37,25 +38,26 @@
private static final String KEY_SHOW_CLIP_ACCESS_NOTIFICATION = "show_clip_access_notification";
- private Preference mPreference;
- private final ClipboardManager mClipboardManager;
private final DeviceConfig.OnPropertiesChangedListener mDeviceConfigListener =
- properties -> updateState(mPreference);
+ properties -> updateConfig();
+ private boolean mDefault;
+ private Preference mPreference;
public ShowClipAccessNotificationPreferenceController(Context context) {
super(context, KEY_SHOW_CLIP_ACCESS_NOTIFICATION);
- mClipboardManager = context.getSystemService(ClipboardManager.class);
- updateState(mPreference);
+ updateConfig();
}
@Override
public boolean isChecked() {
- return mClipboardManager.areClipboardAccessNotificationsEnabled();
+ return Settings.Secure.getInt(mContext.getContentResolver(),
+ Settings.Secure.CLIPBOARD_SHOW_ACCESS_NOTIFICATIONS, (mDefault ? 1 : 0)) != 0;
}
@Override
public boolean setChecked(boolean isChecked) {
- mClipboardManager.setClipboardAccessNotificationsEnabled(isChecked);
+ Settings.Secure.putInt(mContext.getContentResolver(),
+ Settings.Secure.CLIPBOARD_SHOW_ACCESS_NOTIFICATIONS, (isChecked ? 1 : 0));
return true;
}
@@ -92,4 +94,12 @@
public void onStop() {
DeviceConfig.removeOnPropertiesChangedListener(mDeviceConfigListener);
}
+
+ private void updateConfig() {
+ mDefault = DeviceConfig.getBoolean(DeviceConfig.NAMESPACE_CLIPBOARD,
+ ClipboardManager.DEVICE_CONFIG_SHOW_ACCESS_NOTIFICATIONS,
+ ClipboardManager.DEVICE_CONFIG_DEFAULT_SHOW_ACCESS_NOTIFICATIONS);
+ updateState(mPreference);
+ }
+
}