Revert "Convert clipboard access to use new APIs"

This reverts commit 7667643ef6.

Reason for revert: b/345139412

Change-Id: Iebea39e034faeab53d972c691477e2d710787a14
This commit is contained in:
Nate Myren
2024-06-07 16:37:19 +00:00
committed by Android (Google) Code Review
parent 7667643ef6
commit 3dc6a7f6be

View File

@@ -19,6 +19,7 @@ package com.android.settings.privacy;
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 @@ public class ShowClipAccessNotificationPreferenceController
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 class ShowClipAccessNotificationPreferenceController
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);
}
}