sm7125-common: RealmeParts: Hide gesture prefs if not supported

Signed-off-by: SagarMakhar <sagarmakhar@gmail.com>
This commit is contained in:
SagarMakhar
2021-06-23 08:46:54 +00:00
parent bf2bfe8e07
commit 8494df4101
3 changed files with 38 additions and 3 deletions

View File

@@ -2,6 +2,7 @@
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory
android:key="gestures_category"
android:title="@string/gestures">
<PreferenceScreen
@@ -12,6 +13,7 @@
</PreferenceCategory>
<PreferenceCategory
android:key="doze_category"
android:title="@string/ambient_display_title">
<PreferenceScreen
@@ -22,10 +24,11 @@
</PreferenceCategory>
<PreferenceCategory
android:key="vib_strength_category"
android:title="@string/vibrator_intensity_control">
<org.aospextended.device.vibration.VibratorStrengthPreference
android:key="vib_strength"
android:key="vib_strength"
android:icon="@drawable/ic_vibrate" />
</PreferenceCategory>
</PreferenceScreen>

View File

@@ -40,6 +40,7 @@ import androidx.preference.PreferenceScreen;
import androidx.preference.SwitchPreference;
import androidx.preference.TwoStatePreference;
import org.aospextended.device.gestures.TouchGestures;
import org.aospextended.device.gestures.TouchGesturesActivity;
import org.aospextended.device.doze.DozeSettingsActivity;
import org.aospextended.device.vibration.VibratorStrengthPreference;
@@ -72,6 +73,8 @@ public class RealmeParts extends PreferenceFragment implements
public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
setPreferencesFromResource(R.xml.RealmeParts, rootKey);
PreferenceCategory gestures = (PreferenceCategory) getPreferenceScreen()
.findPreference("gestures_category");
mGesturesPref = findPreference("screen_gestures");
mGesturesPref.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@Override
@@ -81,6 +84,10 @@ public class RealmeParts extends PreferenceFragment implements
return true;
}
});
if (!TouchGestures.isSupported()) {
getPreferenceScreen().removePreference(gestures);
}
mDozePref = findPreference("doze");
mDozePref.setOnPreferenceClickListener(new Preference.OnPreferenceClickListener() {
@Override
@@ -91,8 +98,12 @@ public class RealmeParts extends PreferenceFragment implements
}
});
PreferenceCategory vib_strength = (PreferenceCategory) getPreferenceScreen()
.findPreference("vib_strength_category");
mVibratorStrength = (VibratorStrengthPreference) findPreference(VibratorStrengthPreference.KEY_VIBSTRENGTH);
mVibratorStrength.setEnabled(VibratorStrengthPreference.isSupported());
if (!VibratorStrengthPreference.isSupported()) {
getPreferenceScreen().removePreference(vib_strength);
}
}
@Override

View File

@@ -118,6 +118,14 @@ public class TouchGestures extends PreferenceFragment implements
setHasOptionsMenu(true);
}
public static boolean isSupported() {
return Utils.fileWritable(GESTURE_PATH) || Utils.fileWritable(DT2W_PATH);
}
public static boolean isSupported(String filepath) {
return Utils.fileWritable(filepath);
}
public static void enableGestures(boolean enable) {
if (Utils.fileExists(GESTURE_PATH)) {
Utils.writeLine(GESTURE_PATH, enable ? "1" : "0");
@@ -125,7 +133,7 @@ public class TouchGestures extends PreferenceFragment implements
}
public static void enableDt2w(boolean enable) {
if (Utils.fileExists(GESTURE_PATH)) {
if (Utils.fileExists(DT2W_PATH)) {
Utils.writeLine(DT2W_PATH, enable ? "1" : "0");
}
}
@@ -140,10 +148,13 @@ public class TouchGestures extends PreferenceFragment implements
prefs = getPreferenceScreen();
PreferenceCategory dt2w = (PreferenceCategory) prefs.findPreference("dt2w");
mEnableDt2w = (SwitchPreference) prefs.findPreference(PREF_DT2W_ENABLE);
PreferenceCategory gestures = (PreferenceCategory) prefs.findPreference("gestures");
mEnableGestures = (SwitchPreference) prefs.findPreference(PREF_GESTURE_ENABLE);
PreferenceCategory haptic = (PreferenceCategory) prefs.findPreference("haptic");
mHapticFeedback = (SwitchPreference) findPreference(KEY_GESTURE_HAPTIC_FEEDBACK);
mHapticFeedback.setChecked(mPrefs.getInt(Utils.TOUCHSCREEN_GESTURE_HAPTIC_FEEDBACK, 1) != 0);
mHapticFeedback.setOnPreferenceChangeListener(this);
@@ -199,6 +210,16 @@ public class TouchGestures extends PreferenceFragment implements
mEnableGestures.setChecked(enableGestures);
mEnableGestures.setOnPreferenceChangeListener(this);
if (!isSupported(DT2W_PATH)) {
getPreferenceScreen().removePreference(dt2w);
}
if (!isSupported()) {
getPreferenceScreen().removePreference(haptic);
}
if (!isSupported(GESTURE_PATH)) {
getPreferenceScreen().removePreference(gestures);
}
return prefs;
}