From 218012b8fc64a9f09865b80f4490414aa052bdb1 Mon Sep 17 00:00:00 2001 From: lucky <> Date: Fri, 14 Jan 2022 10:50:38 +0300 Subject: [PATCH] disable tile when off --- app/src/main/AndroidManifest.xml | 1 + app/src/main/java/me/lucky/wasted/MainActivity.kt | 10 +++++++--- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index bbd1f02..ff48333 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -86,6 +86,7 @@ android:icon="@android:drawable/ic_lock_lock" android:label="@string/tile_label" android:permission="android.permission.BIND_QUICK_SETTINGS_TILE" + android:enabled="false" android:exported="true"> diff --git a/app/src/main/java/me/lucky/wasted/MainActivity.kt b/app/src/main/java/me/lucky/wasted/MainActivity.kt index 713e70e..2dc8e43 100644 --- a/app/src/main/java/me/lucky/wasted/MainActivity.kt +++ b/app/src/main/java/me/lucky/wasted/MainActivity.kt @@ -169,6 +169,7 @@ open class MainActivity : AppCompatActivity() { } prefs.isServiceEnabled = true setCodeReceiverState(prefs.isCodeEnabled) + setTileState(true) shortcut.push() } @@ -184,6 +185,7 @@ open class MainActivity : AppCompatActivity() { prefs.isServiceEnabled = false setCodeReceiverState(false) setWipeOnInactivityComponentsState(false) + setTileState(false) shortcut.remove() admin.remove() } @@ -191,11 +193,13 @@ open class MainActivity : AppCompatActivity() { private fun requestAdmin() = requestAdminPolicy.launch(admin.makeRequestIntent()) private fun makeCode(): String = UUID.randomUUID().toString() private fun setCodeReceiverState(value: Boolean) = - setReceiverState(CodeReceiver::class.java, value) + setComponentState(CodeReceiver::class.java, value) private fun setRestartReceiverState(value: Boolean) = - setReceiverState(RestartReceiver::class.java, value) + setComponentState(RestartReceiver::class.java, value) + private fun setTileState(value: Boolean) = + setComponentState(QSTileService::class.java, value) - private fun setReceiverState(cls: Class<*>, value: Boolean) { + private fun setComponentState(cls: Class<*>, value: Boolean) { packageManager.setComponentEnabledSetting( ComponentName(this, cls), if (value) PackageManager.COMPONENT_ENABLED_STATE_ENABLED else