From d0e36f6d22f9a8d6771fa2a3d150f4bf59bdd355 Mon Sep 17 00:00:00 2001 From: LuK1337 Date: Sun, 10 Apr 2022 18:30:16 +0200 Subject: [PATCH] doze: Move sensor trigger values to resources This lets us use android.sensor.tilt_detector on Oplus. Change-Id: I21db794d86656bfa41dfe32d33b272d4b55ec199 --- doze/res/values/config.xml | 6 +++++- .../src/org/lineageos/settings/doze/DozeService.kt | 14 +++++++++++--- .../org/lineageos/settings/doze/PickupSensor.kt | 8 +++++--- .../org/lineageos/settings/doze/PocketSensor.kt | 8 +++++--- 4 files changed, 26 insertions(+), 10 deletions(-) diff --git a/doze/res/values/config.xml b/doze/res/values/config.xml index e2400de..ad644a5 100644 --- a/doze/res/values/config.xml +++ b/doze/res/values/config.xml @@ -1,6 +1,6 @@ + + + 1.0 + 0.0 diff --git a/doze/src/org/lineageos/settings/doze/DozeService.kt b/doze/src/org/lineageos/settings/doze/DozeService.kt index 240b87c..4d673c1 100644 --- a/doze/src/org/lineageos/settings/doze/DozeService.kt +++ b/doze/src/org/lineageos/settings/doze/DozeService.kt @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 The LineageOS Project + * Copyright (C) 2021-2022 The LineageOS Project * SPDX-License-Identifier: Apache-2.0 */ @@ -28,8 +28,16 @@ class DozeService : Service() { override fun onCreate() { Log.d(TAG, "Creating service") - pickupSensor = PickupSensor(this, resources.getString(R.string.pickup_sensor_type)) - pocketSensor = PocketSensor(this, resources.getString(R.string.pocket_sensor_type)) + pickupSensor = PickupSensor( + this, + resources.getString(R.string.pickup_sensor_type), + resources.getFloat(R.dimen.pickup_sensor_value), + ) + pocketSensor = PocketSensor( + this, + resources.getString(R.string.pocket_sensor_type), + resources.getFloat(R.dimen.pocket_sensor_value) + ) val screenStateFilter = IntentFilter() screenStateFilter.addAction(Intent.ACTION_SCREEN_ON) diff --git a/doze/src/org/lineageos/settings/doze/PickupSensor.kt b/doze/src/org/lineageos/settings/doze/PickupSensor.kt index 7c70260..4e547f6 100644 --- a/doze/src/org/lineageos/settings/doze/PickupSensor.kt +++ b/doze/src/org/lineageos/settings/doze/PickupSensor.kt @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 The LineageOS Project + * Copyright (C) 2021-2022 The LineageOS Project * SPDX-License-Identifier: Apache-2.0 */ @@ -16,7 +16,9 @@ import android.util.Log import java.util.concurrent.Executors -class PickupSensor(private val context: Context, sensorType: String) : SensorEventListener { +class PickupSensor( + private val context: Context, sensorType: String, private val sensorValue: Float +) : SensorEventListener { private val powerManager = context.getSystemService(PowerManager::class.java) private val wakeLock = powerManager.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, TAG) @@ -33,7 +35,7 @@ class PickupSensor(private val context: Context, sensorType: String) : SensorEve return } entryTimestamp = SystemClock.elapsedRealtime() - if (event.values[0] == 1.0f) { + if (event.values[0] == sensorValue) { if (Utils.isPickUpSetToWake(context)) { wakeLock.acquire(WAKELOCK_TIMEOUT_MS) powerManager.wakeUpWithProximityCheck( diff --git a/doze/src/org/lineageos/settings/doze/PocketSensor.kt b/doze/src/org/lineageos/settings/doze/PocketSensor.kt index 8cfdd13..3af29c6 100644 --- a/doze/src/org/lineageos/settings/doze/PocketSensor.kt +++ b/doze/src/org/lineageos/settings/doze/PocketSensor.kt @@ -1,5 +1,5 @@ /* - * Copyright (C) 2021 The LineageOS Project + * Copyright (C) 2021-2022 The LineageOS Project * SPDX-License-Identifier: Apache-2.0 */ @@ -15,7 +15,9 @@ import android.util.Log import java.util.concurrent.Executors -class PocketSensor(private val context: Context, sensorType: String) : SensorEventListener { +class PocketSensor( + private val context: Context, sensorType: String, private val sensorValue: Float +) : SensorEventListener { private val sensorManager = context.getSystemService(SensorManager::class.java) private val sensor = Utils.getSensor(sensorManager, sensorType) @@ -29,7 +31,7 @@ class PocketSensor(private val context: Context, sensorType: String) : SensorEve return } entryTimestamp = SystemClock.elapsedRealtime() - if (event.values[0] == 0.0f) { + if (event.values[0] == sensorValue) { Utils.launchDozePulse(context) } }