diff options
author | Rashed Abdel-Tawab <rashed@linux.com> | 2018-05-14 13:56:33 -0700 |
---|---|---|
committer | Joey Rizzoli <joey@lineageos.org> | 2018-05-24 21:39:00 +0200 |
commit | 18fd692bbdf3aba82a2af2515a4eb5acb3ee4302 (patch) | |
tree | 9678691e0296c6f0be657bb763d6df7db8c005c6 /sdk | |
parent | ff242a26c1e714fd5a270e6ef12097ee9b9d92a0 (diff) | |
download | lineage-sdk-18fd692bbdf3aba82a2af2515a4eb5acb3ee4302.tar.gz lineage-sdk-18fd692bbdf3aba82a2af2515a4eb5acb3ee4302.tar.bz2 lineage-sdk-18fd692bbdf3aba82a2af2515a4eb5acb3ee4302.zip |
lineage-sdk: Add backend for reading enhancement
Change-Id: Ibd1c9e057ddf8e9d21657aef0ebeeaa9a253e92d
Diffstat (limited to 'sdk')
5 files changed, 47 insertions, 4 deletions
diff --git a/sdk/src/java/lineageos/hardware/ILineageHardwareService.aidl b/sdk/src/java/lineageos/hardware/ILineageHardwareService.aidl index cca87244..aaa1ce50 100644 --- a/sdk/src/java/lineageos/hardware/ILineageHardwareService.aidl +++ b/sdk/src/java/lineageos/hardware/ILineageHardwareService.aidl @@ -1,6 +1,6 @@ /** - * Copyright (c) 2015, The CyanogenMod Project - * 2017 The LineageOS Project + * Copyright (c) 2015-2016 The CyanogenMod Project + * 2017-2018 The LineageOS Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -65,4 +65,6 @@ interface ILineageHardwareService { TouchscreenGesture[] getTouchscreenGestures(); boolean setTouchscreenGestureEnabled(in TouchscreenGesture gesture, boolean state); + + boolean setGrayscale(boolean state); } diff --git a/sdk/src/java/lineageos/hardware/LineageHardwareManager.java b/sdk/src/java/lineageos/hardware/LineageHardwareManager.java index ae0ece65..c58b1c90 100644 --- a/sdk/src/java/lineageos/hardware/LineageHardwareManager.java +++ b/sdk/src/java/lineageos/hardware/LineageHardwareManager.java @@ -1,6 +1,6 @@ /* * Copyright (C) 2015-2016 The CyanogenMod Project - * 2017 The LineageOS Project + * 2017-2018 The LineageOS Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -135,6 +135,12 @@ public final class LineageHardwareManager { public static final int FEATURE_DISPLAY_MODES = 0x2000; /** + * Reading mode + */ + @VisibleForTesting + public static final int FEATURE_READING_ENHANCEMENT = 0x4000; + + /** * Color balance */ @VisibleForTesting @@ -868,4 +874,19 @@ public final class LineageHardwareManager { } return false; } + + /** + * Enables or disables reading mode + * + * @return true if success + */ + public boolean setGrayscale(boolean state) { + try { + if (checkService()) { + return sService.setGrayscale(state); + } + } catch (RemoteException e) { + } + return false; + } } diff --git a/sdk/src/java/lineageos/hardware/LiveDisplayManager.java b/sdk/src/java/lineageos/hardware/LiveDisplayManager.java index 28238494..17e142ef 100644 --- a/sdk/src/java/lineageos/hardware/LiveDisplayManager.java +++ b/sdk/src/java/lineageos/hardware/LiveDisplayManager.java @@ -1,5 +1,6 @@ /* * Copyright (C) 2016 The CyanogenMod Project + * 2018 The LineageOS Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -120,6 +121,11 @@ public class LiveDisplayManager { */ public static final int FEATURE_PICTURE_ADJUSTMENT = 17; + /** + * System supports grayscale matrix overlay + */ + public static final int FEATURE_READING_ENHANCEMENT = 18; + public static final int ADJUSTMENT_HUE = 0; public static final int ADJUSTMENT_SATURATION = 1; public static final int ADJUSTMENT_INTENSITY = 2; diff --git a/sdk/src/java/lineageos/providers/LineageSettings.java b/sdk/src/java/lineageos/providers/LineageSettings.java index 7a5feabe..ac48c996 100644 --- a/sdk/src/java/lineageos/providers/LineageSettings.java +++ b/sdk/src/java/lineageos/providers/LineageSettings.java @@ -1450,6 +1450,16 @@ public final class LineageSettings { sBooleanValidator; /** + * Reader mode + * 0 = 0ff, 1 = on + */ + public static final String DISPLAY_READING_MODE = "display_reading_mode"; + + /** @hide */ + public static final Validator DISPLAY_READING_MODE_VALIDATOR = + sBooleanValidator; + + /** * Use display power saving features such as CABC or CABL * 0 = 0ff, 1 = on */ @@ -2058,6 +2068,7 @@ public final class LineageSettings { LineageSettings.System.DISPLAY_TEMPERATURE_NIGHT, LineageSettings.System.DISPLAY_TEMPERATURE_MODE, LineageSettings.System.DISPLAY_AUTO_OUTDOOR_MODE, + LineageSettings.System.DISPLAY_READING_MODE, LineageSettings.System.DISPLAY_CABC, LineageSettings.System.DISPLAY_COLOR_ENHANCE, LineageSettings.System.DISPLAY_COLOR_ADJUSTMENT, @@ -2216,6 +2227,7 @@ public final class LineageSettings { VALIDATORS.put(DISPLAY_TEMPERATURE_MODE, DISPLAY_TEMPERATURE_MODE_VALIDATOR); VALIDATORS.put(DISPLAY_AUTO_CONTRAST, DISPLAY_AUTO_CONTRAST_VALIDATOR); VALIDATORS.put(DISPLAY_AUTO_OUTDOOR_MODE, DISPLAY_AUTO_OUTDOOR_MODE_VALIDATOR); + VALIDATORS.put(DISPLAY_READING_MODE, DISPLAY_READING_MODE_VALIDATOR); VALIDATORS.put(DISPLAY_CABC, DISPLAY_CABC_VALIDATOR); VALIDATORS.put(DISPLAY_COLOR_ENHANCE, DISPLAY_COLOR_ENHANCE_VALIDATOR); VALIDATORS.put(DISPLAY_COLOR_ADJUSTMENT, DISPLAY_COLOR_ADJUSTMENT_VALIDATOR); diff --git a/sdk/src/java/org/lineageos/internal/logging/LineageMetricsLogger.java b/sdk/src/java/org/lineageos/internal/logging/LineageMetricsLogger.java index e75a5e43..5b7d7009 100644 --- a/sdk/src/java/org/lineageos/internal/logging/LineageMetricsLogger.java +++ b/sdk/src/java/org/lineageos/internal/logging/LineageMetricsLogger.java @@ -1,5 +1,6 @@ /** - * Copyright (c) 2016, The CyanogenMod Project + * Copyright (c) 2016 The CyanogenMod Project + * 2018 The LineageOS Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -69,4 +70,5 @@ public class LineageMetricsLogger extends MetricsLogger { public static final int WEATHER_SETTINGS = BASE + 42; public static final int TILE_THEMES = BASE + 43; public static final int TILE_LOCATION_DETAIL = BASE + 44; + public static final int TILE_READING_MODE = BASE + 45; } |