Loading src/com/android/settings/display/AmbientDisplayAlwaysOnPreferenceController.java +10 −1 Original line number Diff line number Diff line Loading @@ -34,11 +34,17 @@ public class AmbientDisplayAlwaysOnPreferenceController extends PreferenceContro private static final int MY_USER = UserHandle.myUserId(); private final AmbientDisplayConfiguration mConfig; private final OnPreferenceChangedCallback mCallback; public interface OnPreferenceChangedCallback { void onPreferenceChanged(); } public AmbientDisplayAlwaysOnPreferenceController(Context context, AmbientDisplayConfiguration config) { AmbientDisplayConfiguration config, OnPreferenceChangedCallback callback) { super(context); mConfig = config; mCallback = callback; } @Override Loading @@ -55,6 +61,9 @@ public class AmbientDisplayAlwaysOnPreferenceController extends PreferenceContro public boolean onPreferenceChange(Preference preference, Object newValue) { int enabled = (boolean) newValue ? 1 : 0; Settings.Secure.putInt(mContext.getContentResolver(), DOZE_ALWAYS_ON, enabled); if (mCallback != null) { mCallback.onPreferenceChanged(); } return true; } Loading src/com/android/settings/display/AmbientDisplaySettings.java +7 −4 Original line number Diff line number Diff line Loading @@ -51,11 +51,13 @@ public class AmbientDisplaySettings extends DashboardFragment { private static List<PreferenceController> buildPreferenceControllers(Context context, Lifecycle lifecycle, AmbientDisplayConfiguration config, MetricsFeatureProvider metricsFeatureProvider) { MetricsFeatureProvider metricsFeatureProvider, AmbientDisplayAlwaysOnPreferenceController.OnPreferenceChangedCallback aodCallback) { final List<PreferenceController> controllers = new ArrayList<>(); controllers.add(new AmbientDisplayNotificationsPreferenceController(context, config, metricsFeatureProvider)); controllers.add(new AmbientDisplayAlwaysOnPreferenceController(context, config)); controllers.add(new AmbientDisplayAlwaysOnPreferenceController(context, config, aodCallback)); controllers.add(new DoubleTapScreenPreferenceController(context, lifecycle, config, MY_USER_ID, KEY_AMBIENT_DISPLAY_DOUBLE_TAP)); controllers.add(new PickupGesturePreferenceController(context, lifecycle, config, Loading @@ -77,7 +79,8 @@ public class AmbientDisplaySettings extends DashboardFragment { @Override protected List<PreferenceController> getPreferenceControllers(Context context) { return buildPreferenceControllers(context, getLifecycle(), new AmbientDisplayConfiguration(context), mMetricsFeatureProvider); new AmbientDisplayConfiguration(context), mMetricsFeatureProvider, () -> { updatePreferenceStates(); }); } @Override Loading @@ -101,7 +104,7 @@ public class AmbientDisplaySettings extends DashboardFragment { @Override public List<PreferenceController> getPreferenceControllers(Context context) { return buildPreferenceControllers(context, null, new AmbientDisplayConfiguration(context), null); new AmbientDisplayConfiguration(context), null, null); } }; } src/com/android/settings/gestures/GesturePreferenceController.java +6 −0 Original line number Diff line number Diff line Loading @@ -61,6 +61,8 @@ public abstract class GesturePreferenceController extends PreferenceController ? R.string.gesture_setting_on : R.string.gesture_setting_off); } // Different meanings of "Enabled" for the Preference and Controller. preference.setEnabled(canHandleClicks()); } } Loading @@ -81,4 +83,8 @@ public abstract class GesturePreferenceController extends PreferenceController protected abstract String getVideoPrefKey(); protected abstract boolean isSwitchPrefEnabled(); protected boolean canHandleClicks() { return true; } } src/com/android/settings/gestures/PickupGesturePreferenceController.java +5 −0 Original line number Diff line number Diff line Loading @@ -76,4 +76,9 @@ public class PickupGesturePreferenceController extends GesturePreferenceControll Settings.Secure.DOZE_PULSE_ON_PICK_UP, enabled ? 1 : 0); return true; } @Override public boolean canHandleClicks() { return mAmbientConfig.pulseOnPickupCanBeModified(mUserId); } } tests/robotests/src/com/android/internal/hardware/AmbientDisplayConfiguration.java +4 −0 Original line number Diff line number Diff line Loading @@ -34,6 +34,10 @@ public class AmbientDisplayConfiguration { return true; } public boolean pulseOnPickupCanBeModified(int user) { return true; } public boolean pulseOnDoubleTapAvailable() { return true; } Loading Loading
src/com/android/settings/display/AmbientDisplayAlwaysOnPreferenceController.java +10 −1 Original line number Diff line number Diff line Loading @@ -34,11 +34,17 @@ public class AmbientDisplayAlwaysOnPreferenceController extends PreferenceContro private static final int MY_USER = UserHandle.myUserId(); private final AmbientDisplayConfiguration mConfig; private final OnPreferenceChangedCallback mCallback; public interface OnPreferenceChangedCallback { void onPreferenceChanged(); } public AmbientDisplayAlwaysOnPreferenceController(Context context, AmbientDisplayConfiguration config) { AmbientDisplayConfiguration config, OnPreferenceChangedCallback callback) { super(context); mConfig = config; mCallback = callback; } @Override Loading @@ -55,6 +61,9 @@ public class AmbientDisplayAlwaysOnPreferenceController extends PreferenceContro public boolean onPreferenceChange(Preference preference, Object newValue) { int enabled = (boolean) newValue ? 1 : 0; Settings.Secure.putInt(mContext.getContentResolver(), DOZE_ALWAYS_ON, enabled); if (mCallback != null) { mCallback.onPreferenceChanged(); } return true; } Loading
src/com/android/settings/display/AmbientDisplaySettings.java +7 −4 Original line number Diff line number Diff line Loading @@ -51,11 +51,13 @@ public class AmbientDisplaySettings extends DashboardFragment { private static List<PreferenceController> buildPreferenceControllers(Context context, Lifecycle lifecycle, AmbientDisplayConfiguration config, MetricsFeatureProvider metricsFeatureProvider) { MetricsFeatureProvider metricsFeatureProvider, AmbientDisplayAlwaysOnPreferenceController.OnPreferenceChangedCallback aodCallback) { final List<PreferenceController> controllers = new ArrayList<>(); controllers.add(new AmbientDisplayNotificationsPreferenceController(context, config, metricsFeatureProvider)); controllers.add(new AmbientDisplayAlwaysOnPreferenceController(context, config)); controllers.add(new AmbientDisplayAlwaysOnPreferenceController(context, config, aodCallback)); controllers.add(new DoubleTapScreenPreferenceController(context, lifecycle, config, MY_USER_ID, KEY_AMBIENT_DISPLAY_DOUBLE_TAP)); controllers.add(new PickupGesturePreferenceController(context, lifecycle, config, Loading @@ -77,7 +79,8 @@ public class AmbientDisplaySettings extends DashboardFragment { @Override protected List<PreferenceController> getPreferenceControllers(Context context) { return buildPreferenceControllers(context, getLifecycle(), new AmbientDisplayConfiguration(context), mMetricsFeatureProvider); new AmbientDisplayConfiguration(context), mMetricsFeatureProvider, () -> { updatePreferenceStates(); }); } @Override Loading @@ -101,7 +104,7 @@ public class AmbientDisplaySettings extends DashboardFragment { @Override public List<PreferenceController> getPreferenceControllers(Context context) { return buildPreferenceControllers(context, null, new AmbientDisplayConfiguration(context), null); new AmbientDisplayConfiguration(context), null, null); } }; }
src/com/android/settings/gestures/GesturePreferenceController.java +6 −0 Original line number Diff line number Diff line Loading @@ -61,6 +61,8 @@ public abstract class GesturePreferenceController extends PreferenceController ? R.string.gesture_setting_on : R.string.gesture_setting_off); } // Different meanings of "Enabled" for the Preference and Controller. preference.setEnabled(canHandleClicks()); } } Loading @@ -81,4 +83,8 @@ public abstract class GesturePreferenceController extends PreferenceController protected abstract String getVideoPrefKey(); protected abstract boolean isSwitchPrefEnabled(); protected boolean canHandleClicks() { return true; } }
src/com/android/settings/gestures/PickupGesturePreferenceController.java +5 −0 Original line number Diff line number Diff line Loading @@ -76,4 +76,9 @@ public class PickupGesturePreferenceController extends GesturePreferenceControll Settings.Secure.DOZE_PULSE_ON_PICK_UP, enabled ? 1 : 0); return true; } @Override public boolean canHandleClicks() { return mAmbientConfig.pulseOnPickupCanBeModified(mUserId); } }
tests/robotests/src/com/android/internal/hardware/AmbientDisplayConfiguration.java +4 −0 Original line number Diff line number Diff line Loading @@ -34,6 +34,10 @@ public class AmbientDisplayConfiguration { return true; } public boolean pulseOnPickupCanBeModified(int user) { return true; } public boolean pulseOnDoubleTapAvailable() { return true; } Loading