aboutsummaryrefslogtreecommitdiff
path: root/app/src/main/java/moe/yuuta/workmode/suspend/SuspendTile.kt
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/moe/yuuta/workmode/suspend/SuspendTile.kt')
-rw-r--r--app/src/main/java/moe/yuuta/workmode/suspend/SuspendTile.kt10
1 files changed, 9 insertions, 1 deletions
diff --git a/app/src/main/java/moe/yuuta/workmode/suspend/SuspendTile.kt b/app/src/main/java/moe/yuuta/workmode/suspend/SuspendTile.kt
index 23a3334..75b6ce4 100644
--- a/app/src/main/java/moe/yuuta/workmode/suspend/SuspendTile.kt
+++ b/app/src/main/java/moe/yuuta/workmode/suspend/SuspendTile.kt
@@ -3,10 +3,13 @@ package moe.yuuta.workmode.suspend
import android.content.Intent
import android.service.quicksettings.Tile
import android.service.quicksettings.TileService
+import com.elvishew.xlog.XLog
import moe.yuuta.workmode.suspend.data.Status
import moe.yuuta.workmode.suspend.data.SuspendedStorage
+import java.util.concurrent.TimeUnit
class SuspendTile : TileService() {
+ private val logger = XLog.tag("SuspendTile").build()
override fun onClick() {
val storage = SuspendedStorage.get(this)
storage.setStatus(
@@ -16,7 +19,12 @@ class SuspendTile : TileService() {
}
)
sendBroadcast(Intent(Intent.ACTION_CLOSE_SYSTEM_DIALOGS))
- Suspender(this).applyFromSettings()
+ try {
+ AsyncSuspender(this).applyFromSettings()
+ .get(10, TimeUnit.SECONDS)
+ } catch (e: Throwable) {
+ logger.e("Cannot trigger", e)
+ }
}
override fun onStartListening() {