Files
lineage-sdk/packages/LineagePreferenceLib/java/lineageos/preference/LineageSecureSettingListPreference.java
Pranav Vashi 0bba37e75b Set summary automatically if required
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-26 17:48:34 +09:00

64 lines
1.8 KiB
Java

/*
* SPDX-FileCopyrightText: 2016 The CyanogenMod Project
* SPDX-FileCopyrightText: 2018 The LineageOS Project
* SPDX-License-Identifier: Apache-2.0
*/
package lineageos.preference;
import android.content.Context;
import android.text.TextUtils;
import android.util.AttributeSet;
import lineageos.providers.LineageSettings;
public class LineageSecureSettingListPreference extends SelfRemovingListPreference {
private boolean mAutoSummary = false;
public LineageSecureSettingListPreference(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
public LineageSecureSettingListPreference(Context context, AttributeSet attrs) {
super(context, attrs);
}
@Override
public void setValue(String value) {
super.setValue(value);
if (mAutoSummary || TextUtils.isEmpty(getSummary())) {
setSummary(getEntry(), true);
}
}
@Override
public void setSummary(CharSequence summary) {
setSummary(summary, false);
}
private void setSummary(CharSequence summary, boolean autoSummary) {
mAutoSummary = autoSummary;
super.setSummary(summary);
}
public int getIntValue(int defValue) {
return getValue() == null ? defValue : Integer.valueOf(getValue());
}
@Override
protected boolean isPersisted() {
return LineageSettings.Secure.getString(getContext().getContentResolver(), getKey()) != null;
}
@Override
protected void putString(String key, String value) {
LineageSettings.Secure.putString(getContext().getContentResolver(), key, value);
}
@Override
protected String getString(String key, String defaultValue) {
return LineageSettings.Secure.getString(getContext().getContentResolver(),
key, defaultValue);
}
}