summaryrefslogtreecommitdiff
path: root/app
diff options
context:
space:
mode:
authorTyler Nijmeh <tylernij@gmail.com>2021-03-31 12:30:03 -0700
committerTyler Nijmeh <tylernij@gmail.com>2021-03-31 12:30:03 -0700
commit1c04bfd5343191744dccb53a833e966d90cbeacc (patch)
tree20ff2b66a7463747094e660b0d28f43b443f64aa /app
parentb0f0169b66156af2a75a90d3d90a8e024a0ba867 (diff)
Add quick settings tiles
Signed-off-by: Tyler Nijmeh <tylernij@gmail.com>
Diffstat (limited to 'app')
-rw-r--r--app/build.gradle2
-rw-r--r--app/src/main/AndroidManifest.xml50
-rw-r--r--app/src/main/java/com/draco/buoy/services/TileExtremeService.kt19
-rw-r--r--app/src/main/java/com/draco/buoy/services/TileHighService.kt19
-rw-r--r--app/src/main/java/com/draco/buoy/services/TileLightService.kt19
-rw-r--r--app/src/main/java/com/draco/buoy/services/TileModerateService.kt19
-rw-r--r--app/src/main/java/com/draco/buoy/services/TileResetService.kt18
7 files changed, 145 insertions, 1 deletions
diff --git a/app/build.gradle b/app/build.gradle
index 7ab5e86..47bdbcd 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -9,7 +9,7 @@ android {
defaultConfig {
applicationId "com.draco.buoy"
- minSdk 23
+ minSdk 24
targetSdk 30
versionCode 1
versionName "1.0"
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index b72fa01..9424907 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -29,6 +29,56 @@
<receiver android:name=".receivers.ExternalProfileReceiver"
android:exported="true"
tools:ignore="ExportedReceiver" />
+
+ <service android:name=".services.TileResetService"
+ android:icon="@drawable/ic_baseline_api_24"
+ android:label="@string/pref_profile_title_reset"
+ android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
+ android:exported="true">
+ <intent-filter>
+ <action android:name="android.service.quicksettings.action.QS_TILE" />
+ </intent-filter>
+ </service>
+
+ <service android:name=".services.TileLightService"
+ android:icon="@drawable/ic_baseline_api_24"
+ android:label="@string/pref_profile_title_light"
+ android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
+ android:exported="true">
+ <intent-filter>
+ <action android:name="android.service.quicksettings.action.QS_TILE" />
+ </intent-filter>
+ </service>
+
+ <service android:name=".services.TileModerateService"
+ android:icon="@drawable/ic_baseline_api_24"
+ android:label="@string/pref_profile_title_moderate"
+ android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
+ android:exported="true">
+ <intent-filter>
+ <action android:name="android.service.quicksettings.action.QS_TILE" />
+ </intent-filter>
+ </service>
+
+ <service android:name=".services.TileHighService"
+ android:icon="@drawable/ic_baseline_api_24"
+ android:label="@string/pref_profile_title_high"
+ android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
+ android:exported="true">
+ <intent-filter>
+ <action android:name="android.service.quicksettings.action.QS_TILE" />
+ </intent-filter>
+ </service>
+
+ <service android:name=".services.TileExtremeService"
+ android:icon="@drawable/ic_baseline_api_24"
+ android:label="@string/pref_profile_title_extreme"
+ android:permission="android.permission.BIND_QUICK_SETTINGS_TILE"
+ android:exported="true">
+ <intent-filter>
+ <action android:name="android.service.quicksettings.action.QS_TILE" />
+ </intent-filter>
+ </service>
</application>
</manifest> \ No newline at end of file
diff --git a/app/src/main/java/com/draco/buoy/services/TileExtremeService.kt b/app/src/main/java/com/draco/buoy/services/TileExtremeService.kt
new file mode 100644
index 0000000..b00bd2a
--- /dev/null
+++ b/app/src/main/java/com/draco/buoy/services/TileExtremeService.kt
@@ -0,0 +1,19 @@
+package com.draco.buoy.services
+
+import android.service.quicksettings.TileService
+import com.draco.buoy.repositories.profiles.BatterySaverConstantsConfigProfiles
+import com.draco.buoy.utils.BatterySaverManager
+
+class TileExtremeService : TileService() {
+ private lateinit var batterySaverManager: BatterySaverManager
+
+ override fun onCreate() {
+ super.onCreate()
+ batterySaverManager = BatterySaverManager(contentResolver)
+ }
+
+ override fun onClick() {
+ super.onClick()
+ batterySaverManager.apply(BatterySaverConstantsConfigProfiles.EXTREME)
+ }
+} \ No newline at end of file
diff --git a/app/src/main/java/com/draco/buoy/services/TileHighService.kt b/app/src/main/java/com/draco/buoy/services/TileHighService.kt
new file mode 100644
index 0000000..66ac8b5
--- /dev/null
+++ b/app/src/main/java/com/draco/buoy/services/TileHighService.kt
@@ -0,0 +1,19 @@
+package com.draco.buoy.services
+
+import android.service.quicksettings.TileService
+import com.draco.buoy.repositories.profiles.BatterySaverConstantsConfigProfiles
+import com.draco.buoy.utils.BatterySaverManager
+
+class TileHighService : TileService() {
+ private lateinit var batterySaverManager: BatterySaverManager
+
+ override fun onCreate() {
+ super.onCreate()
+ batterySaverManager = BatterySaverManager(contentResolver)
+ }
+
+ override fun onClick() {
+ super.onClick()
+ batterySaverManager.apply(BatterySaverConstantsConfigProfiles.HIGH)
+ }
+} \ No newline at end of file
diff --git a/app/src/main/java/com/draco/buoy/services/TileLightService.kt b/app/src/main/java/com/draco/buoy/services/TileLightService.kt
new file mode 100644
index 0000000..2ef0a8d
--- /dev/null
+++ b/app/src/main/java/com/draco/buoy/services/TileLightService.kt
@@ -0,0 +1,19 @@
+package com.draco.buoy.services
+
+import android.service.quicksettings.TileService
+import com.draco.buoy.repositories.profiles.BatterySaverConstantsConfigProfiles
+import com.draco.buoy.utils.BatterySaverManager
+
+class TileLightService : TileService() {
+ private lateinit var batterySaverManager: BatterySaverManager
+
+ override fun onCreate() {
+ super.onCreate()
+ batterySaverManager = BatterySaverManager(contentResolver)
+ }
+
+ override fun onClick() {
+ super.onClick()
+ batterySaverManager.apply(BatterySaverConstantsConfigProfiles.LIGHT)
+ }
+} \ No newline at end of file
diff --git a/app/src/main/java/com/draco/buoy/services/TileModerateService.kt b/app/src/main/java/com/draco/buoy/services/TileModerateService.kt
new file mode 100644
index 0000000..d9f66e8
--- /dev/null
+++ b/app/src/main/java/com/draco/buoy/services/TileModerateService.kt
@@ -0,0 +1,19 @@
+package com.draco.buoy.services
+
+import android.service.quicksettings.TileService
+import com.draco.buoy.repositories.profiles.BatterySaverConstantsConfigProfiles
+import com.draco.buoy.utils.BatterySaverManager
+
+class TileModerateService : TileService() {
+ private lateinit var batterySaverManager: BatterySaverManager
+
+ override fun onCreate() {
+ super.onCreate()
+ batterySaverManager = BatterySaverManager(contentResolver)
+ }
+
+ override fun onClick() {
+ super.onClick()
+ batterySaverManager.apply(BatterySaverConstantsConfigProfiles.MODERATE)
+ }
+} \ No newline at end of file
diff --git a/app/src/main/java/com/draco/buoy/services/TileResetService.kt b/app/src/main/java/com/draco/buoy/services/TileResetService.kt
new file mode 100644
index 0000000..21f22d7
--- /dev/null
+++ b/app/src/main/java/com/draco/buoy/services/TileResetService.kt
@@ -0,0 +1,18 @@
+package com.draco.buoy.services
+
+import android.service.quicksettings.TileService
+import com.draco.buoy.utils.BatterySaverManager
+
+class TileResetService : TileService() {
+ private lateinit var batterySaverManager: BatterySaverManager
+
+ override fun onCreate() {
+ super.onCreate()
+ batterySaverManager = BatterySaverManager(contentResolver)
+ }
+
+ override fun onClick() {
+ super.onClick()
+ batterySaverManager.reset()
+ }
+} \ No newline at end of file