Implement RestrictedPreferenceHelperProvider for restricted preference
Bug: 377600992 Flag: EXEMPT library Test: Manual Change-Id: I73e60ea7a392aac96e701b9d7f0ff617e449f3b2
This commit is contained in:
@@ -27,6 +27,7 @@ import androidx.preference.PreferenceViewHolder;
|
||||
|
||||
import com.android.settingslib.RestrictedLockUtils;
|
||||
import com.android.settingslib.RestrictedPreferenceHelper;
|
||||
import com.android.settingslib.RestrictedPreferenceHelperProvider;
|
||||
import com.android.settingslib.widget.AppPreference;
|
||||
|
||||
/**
|
||||
@@ -34,7 +35,8 @@ import com.android.settingslib.widget.AppPreference;
|
||||
* {@link com.android.settingslib.RestrictedPreferenceHelper}.
|
||||
* Used to show policy transparency on {@link AppPreference}.
|
||||
*/
|
||||
public class RestrictedAppPreference extends AppPreference {
|
||||
public class RestrictedAppPreference extends AppPreference implements
|
||||
RestrictedPreferenceHelperProvider {
|
||||
private RestrictedPreferenceHelper mHelper;
|
||||
private String userRestriction;
|
||||
|
||||
@@ -58,6 +60,11 @@ public class RestrictedAppPreference extends AppPreference {
|
||||
this.userRestriction = userRestriction;
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NonNull RestrictedPreferenceHelper getRestrictedPreferenceHelper() {
|
||||
return mHelper;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(PreferenceViewHolder holder) {
|
||||
super.onBindViewHolder(holder);
|
||||
|
||||
@@ -23,12 +23,14 @@ import android.util.AttributeSet;
|
||||
import android.widget.CompoundButton;
|
||||
import android.widget.CompoundButton.OnCheckedChangeListener;
|
||||
|
||||
import androidx.annotation.NonNull;
|
||||
import androidx.preference.PreferenceViewHolder;
|
||||
import androidx.preference.TwoStatePreference;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.widget.SettingsMainSwitchBar.OnBeforeCheckedChangeListener;
|
||||
import com.android.settingslib.RestrictedPreferenceHelper;
|
||||
import com.android.settingslib.RestrictedPreferenceHelperProvider;
|
||||
import com.android.settingslib.core.instrumentation.SettingsJankMonitor;
|
||||
|
||||
import java.util.ArrayList;
|
||||
@@ -40,7 +42,7 @@ import java.util.List;
|
||||
* to enable or disable the preferences on the page.
|
||||
*/
|
||||
public class SettingsMainSwitchPreference extends TwoStatePreference implements
|
||||
OnCheckedChangeListener {
|
||||
OnCheckedChangeListener, RestrictedPreferenceHelperProvider {
|
||||
|
||||
private final List<OnBeforeCheckedChangeListener> mBeforeCheckedChangeListeners =
|
||||
new ArrayList<>();
|
||||
@@ -71,6 +73,11 @@ public class SettingsMainSwitchPreference extends TwoStatePreference implements
|
||||
init(context, attrs);
|
||||
}
|
||||
|
||||
@Override
|
||||
public @NonNull RestrictedPreferenceHelper getRestrictedPreferenceHelper() {
|
||||
return mRestrictedHelper;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBindViewHolder(PreferenceViewHolder holder) {
|
||||
super.onBindViewHolder(holder);
|
||||
|
||||
Reference in New Issue
Block a user