diff --git a/doze/src/org/lineageos/settings/doze/BootCompletedReceiver.java b/doze/src/org/lineageos/settings/doze/BootCompletedReceiver.java index b5c7c24..43b4044 100644 --- a/doze/src/org/lineageos/settings/doze/BootCompletedReceiver.java +++ b/doze/src/org/lineageos/settings/doze/BootCompletedReceiver.java @@ -29,10 +29,7 @@ public class BootCompletedReceiver extends BroadcastReceiver { @Override public void onReceive(final Context context, Intent intent) { - if (Utils.isDozeEnabled(context) && Utils.isPickUpEnabled(context)) { - if (DEBUG) Log.d(TAG, "Starting service"); - Utils.startService(context); - } + if (DEBUG) Log.d(TAG, "Received boot completed intent"); + Utils.checkDozeService(context); } - } diff --git a/doze/src/org/lineageos/settings/doze/DozeSettingsFragment.java b/doze/src/org/lineageos/settings/doze/DozeSettingsFragment.java index d61bd8c..a4558b9 100644 --- a/doze/src/org/lineageos/settings/doze/DozeSettingsFragment.java +++ b/doze/src/org/lineageos/settings/doze/DozeSettingsFragment.java @@ -45,6 +45,7 @@ public class DozeSettingsFragment extends PreferenceFragment implements OnPrefer private View mSwitchBar; private SwitchPreference mPickUpPreference; + private SwitchPreference mPocketPreference; @Override public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { @@ -63,6 +64,10 @@ public class DozeSettingsFragment extends PreferenceFragment implements OnPrefer mPickUpPreference = (SwitchPreference) findPreference(Utils.GESTURE_PICK_UP_KEY); mPickUpPreference.setEnabled(dozeEnabled); mPickUpPreference.setOnPreferenceChangeListener(this); + + mPocketPreference = (SwitchPreference) findPreference(Utils.GESTURE_POCKET_KEY); + mPocketPreference.setEnabled(dozeEnabled); + mPocketPreference.setOnPreferenceChangeListener(this); } @Override @@ -96,7 +101,7 @@ public class DozeSettingsFragment extends PreferenceFragment implements OnPrefer @Override public boolean onPreferenceChange(Preference preference, Object newValue) { - Utils.enablePickUp(getActivity(), (Boolean) newValue); + Utils.enableGesture(getActivity(), preference.getKey(), (Boolean) newValue); Utils.checkDozeService(getActivity()); return true; } @@ -110,6 +115,7 @@ public class DozeSettingsFragment extends PreferenceFragment implements OnPrefer mSwitchBar.setActivated(isChecked); mPickUpPreference.setEnabled(isChecked); + mPocketPreference.setEnabled(isChecked); } @Override diff --git a/doze/src/org/lineageos/settings/doze/Utils.java b/doze/src/org/lineageos/settings/doze/Utils.java index cbafe8c..e8bb642 100644 --- a/doze/src/org/lineageos/settings/doze/Utils.java +++ b/doze/src/org/lineageos/settings/doze/Utils.java @@ -51,8 +51,7 @@ public final class Utils { } protected static void checkDozeService(Context context) { - if (isDozeEnabled(context) && - (isPickUpEnabled(context) || isPocketEnabled(context))) { + if (isDozeEnabled(context) && areGesturesEnabled(context)) { startService(context); } else { stopService(context); @@ -75,24 +74,26 @@ public final class Utils { new UserHandle(UserHandle.USER_CURRENT)); } - protected static void enablePickUp(Context context, boolean enable) { + protected static void enableGesture(Context context, String gesture, boolean enable) { PreferenceManager.getDefaultSharedPreferences(context).edit() - .putBoolean(GESTURE_PICK_UP_KEY, enable).apply(); + .putBoolean(gesture, enable).apply(); + } + + protected static boolean isGestureEnabled(Context context, String gesture) { + return PreferenceManager.getDefaultSharedPreferences(context) + .getBoolean(gesture, false); } protected static boolean isPickUpEnabled(Context context) { - return PreferenceManager.getDefaultSharedPreferences(context) - .getBoolean(GESTURE_PICK_UP_KEY, false); - } - - protected static void enablePocket(Context context, boolean enable) { - PreferenceManager.getDefaultSharedPreferences(context).edit() - .putBoolean(GESTURE_POCKET_KEY, enable).apply(); + return isGestureEnabled(context, GESTURE_PICK_UP_KEY); } protected static boolean isPocketEnabled(Context context) { - return PreferenceManager.getDefaultSharedPreferences(context) - .getBoolean(GESTURE_POCKET_KEY, false); + return isGestureEnabled(context, GESTURE_POCKET_KEY); + } + + public static boolean areGesturesEnabled(Context context) { + return isPickUpEnabled(context) || isPocketEnabled(context); } protected static Sensor getSensor(SensorManager sm, String type) {