diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 1ad5b76a..d0a9afeb 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -43,6 +43,17 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/java/com/bnyro/wallpaper/util/WallpaperChangerTileService.kt b/app/src/main/java/com/bnyro/wallpaper/util/WallpaperChangerTileService.kt new file mode 100644 index 00000000..02571c65 --- /dev/null +++ b/app/src/main/java/com/bnyro/wallpaper/util/WallpaperChangerTileService.kt @@ -0,0 +1,44 @@ +package com.bnyro.wallpaper.util + +import android.os.Build +import android.os.Handler +import android.os.Looper +import android.service.quicksettings.Tile +import android.service.quicksettings.TileService +import androidx.annotation.RequiresApi +import androidx.core.os.postDelayed +import androidx.work.ExistingWorkPolicy +import androidx.work.OneTimeWorkRequestBuilder +import androidx.work.WorkManager + +@RequiresApi(Build.VERSION_CODES.N) +class WallpaperChangerTileService : TileService() { + override fun onStartListening() { + super.onStartListening() + + qsTile.state = Tile.STATE_INACTIVE + qsTile.updateTile() + } + + override fun onClick() { + super.onClick() + + val oneTimeJob = OneTimeWorkRequestBuilder() + .build() + + WorkManager.getInstance(this) + .enqueueUniqueWork(TILE_WORKER_KEY, ExistingWorkPolicy.KEEP, oneTimeJob) + + qsTile.state = Tile.STATE_ACTIVE + qsTile.updateTile() + + Handler(Looper.getMainLooper()).postDelayed(3000) { + qsTile.state = Tile.STATE_INACTIVE + qsTile.updateTile() + } + } + + companion object { + private const val TILE_WORKER_KEY = "tile_worker_key" + } +} \ No newline at end of file diff --git a/app/src/main/java/com/bnyro/wallpaper/util/WorkerHelper.kt b/app/src/main/java/com/bnyro/wallpaper/util/WorkerHelper.kt index 6fc75185..c601a314 100644 --- a/app/src/main/java/com/bnyro/wallpaper/util/WorkerHelper.kt +++ b/app/src/main/java/com/bnyro/wallpaper/util/WorkerHelper.kt @@ -33,7 +33,6 @@ object WorkerHelper { return } - val repeatIntervalMinutes = Preferences.getString( Preferences.wallpaperChangerIntervalKey, Preferences.defaultWallpaperChangeInterval.toString() @@ -49,15 +48,4 @@ object WorkerHelper { WorkManager.getInstance(context) .enqueueUniquePeriodicWork(JOB_NAME, policy, job) } - - /** - fun enqueueTestWorker(context: Context) { - val job = OneTimeWorkRequestBuilder() - .setConstraints(getWorkerConstraints()) - .build() - - WorkManager.getInstance(context) - .enqueue(job) - } - **/ } diff --git a/app/src/main/res/drawable/ic_qs_tile.xml b/app/src/main/res/drawable/ic_qs_tile.xml new file mode 100644 index 00000000..b882f02c --- /dev/null +++ b/app/src/main/res/drawable/ic_qs_tile.xml @@ -0,0 +1,6 @@ + + + diff --git a/app/src/main/res/drawable/ic_wallhaven.xml b/app/src/main/res/drawable/ic_wallhaven.xml deleted file mode 100644 index 8472fe61..00000000 --- a/app/src/main/res/drawable/ic_wallhaven.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - \ No newline at end of file diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index 9728feaa..298f5746 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -33,6 +33,7 @@ Home screen Lockscreen Applying random wallpaper + Random wallpaper Blur Grayscale