Files
lineage-sdk/packages/LineagePreferenceLib/java/lineageos/preference/LineageSystemSettingSwitchPreference.java
Pranav Vashi bb57322336 Fix settings pref switch for multi-user
Signed-off-by: Pranav Vashi <neobuddy89@gmail.com>
2025-11-26 17:48:34 +09:00

45 lines
1.4 KiB
Java

/*
* SPDX-FileCopyrightText: 2015 The CyanogenMod Project
* SPDX-FileCopyrightText: 2018 The LineageOS Project
* SPDX-License-Identifier: Apache-2.0
*/
package lineageos.preference;
import android.content.Context;
import android.os.UserHandle;
import android.util.AttributeSet;
import lineageos.providers.LineageSettings;
public class LineageSystemSettingSwitchPreference extends SelfRemovingSwitchPreference {
public LineageSystemSettingSwitchPreference(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
public LineageSystemSettingSwitchPreference(Context context, AttributeSet attrs) {
super(context, attrs);
}
public LineageSystemSettingSwitchPreference(Context context) {
super(context);
}
@Override
protected boolean isPersisted() {
return LineageSettings.System.getString(getContext().getContentResolver(), getKey()) != null;
}
@Override
protected void putBoolean(String key, boolean value) {
LineageSettings.System.putIntForUser(getContext().getContentResolver(), key, value ? 1 : 0, UserHandle.USER_CURRENT);
}
@Override
protected boolean getBoolean(String key, boolean defaultValue) {
return LineageSettings.System.getIntForUser(getContext().getContentResolver(),
key, defaultValue ? 1 : 0, UserHandle.USER_CURRENT) != 0;
}
}