summaryrefslogtreecommitdiffstats
path: root/DeviceSettings/src/com/cyanogenmod/settings/device/SensorsFragmentActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'DeviceSettings/src/com/cyanogenmod/settings/device/SensorsFragmentActivity.java')
-rw-r--r--DeviceSettings/src/com/cyanogenmod/settings/device/SensorsFragmentActivity.java32
1 files changed, 24 insertions, 8 deletions
diff --git a/DeviceSettings/src/com/cyanogenmod/settings/device/SensorsFragmentActivity.java b/DeviceSettings/src/com/cyanogenmod/settings/device/SensorsFragmentActivity.java
index 015dd7b..bbe5f08 100644
--- a/DeviceSettings/src/com/cyanogenmod/settings/device/SensorsFragmentActivity.java
+++ b/DeviceSettings/src/com/cyanogenmod/settings/device/SensorsFragmentActivity.java
@@ -36,8 +36,8 @@ public class SensorsFragmentActivity extends PreferenceFragment {
private static final String TAG = "GalaxyNoteParts_General";
private static final String FILE_USE_GYRO_CALIB = "/sys/class/sec/gsensorcal/calibration";
- private static final String FILE_TOUCHKEY_LIGHT = "/data/.disable_touchlight";
- private static final String FILE_TOUCHKEY_TOGGLE = "/sys/class/sec/sec_touchkey/brightness";
+ private static final String FILE_TOUCHKEY_DISABLE = "/sys/class/sec/sec_touchkey/force_disable";
+ private static final String FILE_TOUCHKEY_BRIGHTNESS = "/sys/class/sec/sec_touchkey/brightness";
@Override
public void onCreate(Bundle savedInstanceState) {
@@ -47,6 +47,12 @@ public class SensorsFragmentActivity extends PreferenceFragment {
PreferenceScreen prefSet = getPreferenceScreen();
+ if (((CheckBoxPreference)prefSet.findPreference(DeviceSettings.KEY_TOUCHKEY_LIGHT)).isChecked()) {
+ prefSet.findPreference(DeviceSettings.KEY_TOUCHKEY_TIMEOUT).setEnabled(true);
+ } else {
+ prefSet.findPreference(DeviceSettings.KEY_TOUCHKEY_TIMEOUT).setEnabled(false);
+ }
+
}
@Override
@@ -67,8 +73,15 @@ public class SensorsFragmentActivity extends PreferenceFragment {
Utils.writeValue(FILE_USE_GYRO_CALIB, "1");
Utils.showDialog((Context)getActivity(), "Calibration done", "The gyroscope has been successfully calibrated!");
} else if (key.compareTo(DeviceSettings.KEY_TOUCHKEY_LIGHT) == 0) {
- Utils.writeValue(FILE_TOUCHKEY_LIGHT, ((CheckBoxPreference)preference).isChecked() ? "1" : "0");
- Utils.writeValue(FILE_TOUCHKEY_TOGGLE, ((CheckBoxPreference)preference).isChecked() ? "1" : "2");
+ if (((CheckBoxPreference)preference).isChecked()) {
+ Utils.writeValue(FILE_TOUCHKEY_DISABLE, "0");
+ Utils.writeValue(FILE_TOUCHKEY_BRIGHTNESS, "1");
+ preferenceScreen.findPreference(DeviceSettings.KEY_TOUCHKEY_TIMEOUT).setEnabled(true);
+ } else {
+ Utils.writeValue(FILE_TOUCHKEY_DISABLE, "1");
+ Utils.writeValue(FILE_TOUCHKEY_BRIGHTNESS, "2");
+ preferenceScreen.findPreference(DeviceSettings.KEY_TOUCHKEY_TIMEOUT).setEnabled(false);
+ }
}
return true;
@@ -80,14 +93,17 @@ public class SensorsFragmentActivity extends PreferenceFragment {
public static void restore(Context context) {
SharedPreferences sharedPrefs = PreferenceManager.getDefaultSharedPreferences(context);
- String gyroCalib = sharedPrefs.getString(DeviceSettings.KEY_USE_GYRO_CALIBRATION, "1");
+ boolean gyroCalib = sharedPrefs.getBoolean(DeviceSettings.KEY_USE_GYRO_CALIBRATION, true);
// When use gyro calibration value is set to 1, calibration is done at the same time, which
// means it is reset at each boot, providing wrong calibration most of the time at each reboot.
// So we only set it to "0" if user wants it, as it defaults to 1 at boot
- if (gyroCalib.compareTo("1") != 0)
- Utils.writeValue(FILE_USE_GYRO_CALIB, gyroCalib);
+ if (!gyroCalib)
+ Utils.writeValue(FILE_USE_GYRO_CALIB, "0");
+
+ boolean light = sharedPrefs.getBoolean(DeviceSettings.KEY_TOUCHKEY_LIGHT, true);
- Utils.writeValue(FILE_TOUCHKEY_LIGHT, sharedPrefs.getString(DeviceSettings.KEY_TOUCHKEY_LIGHT, "1"));
+ Utils.writeValue(FILE_TOUCHKEY_BRIGHTNESS, light ? "1" : "0");
+ Utils.writeValue(FILE_TOUCHKEY_DISABLE, light ? "0" : "1");
}
}