mirror of
https://github.com/CherretGit/zaprett-app.git
synced 2026-01-07 11:29:38 +05:00
QS Button
This commit is contained in:
@@ -40,6 +40,16 @@
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
</activity>
|
||||
<service
|
||||
android:name=".QSTileService"
|
||||
android:exported="true"
|
||||
android:label="@string/qs_name"
|
||||
android:icon="@drawable/ic_launcher_monochrome"
|
||||
android:permission="android.permission.BIND_QUICK_SETTINGS_TILE">
|
||||
<intent-filter>
|
||||
<action android:name="android.service.quicksettings.action.QS_TILE" />
|
||||
</intent-filter>
|
||||
</service>
|
||||
</application>
|
||||
|
||||
</manifest>
|
||||
65
app/src/main/java/com/cherret/zaprett/QSTileService.kt
Normal file
65
app/src/main/java/com/cherret/zaprett/QSTileService.kt
Normal file
@@ -0,0 +1,65 @@
|
||||
package com.cherret.zaprett
|
||||
|
||||
import android.service.quicksettings.Tile
|
||||
import android.service.quicksettings.TileService
|
||||
|
||||
class QSTileService: TileService() {
|
||||
override fun onTileAdded() {
|
||||
super.onTileAdded()
|
||||
updateStatus()
|
||||
}
|
||||
|
||||
override fun onStartListening() {
|
||||
super.onStartListening()
|
||||
updateStatus()
|
||||
}
|
||||
|
||||
override fun onStopListening() {
|
||||
super.onStopListening()
|
||||
}
|
||||
|
||||
override fun onClick() {
|
||||
super.onClick()
|
||||
if (qsTile.state == Tile.STATE_INACTIVE) {
|
||||
qsTile.subtitle = getString(R.string.qs_starting)
|
||||
qsTile.state = Tile.STATE_UNAVAILABLE
|
||||
qsTile.updateTile()
|
||||
startService {}
|
||||
}
|
||||
else {
|
||||
qsTile.subtitle = getString(R.string.qs_stopping)
|
||||
qsTile.state = Tile.STATE_UNAVAILABLE
|
||||
qsTile.updateTile()
|
||||
stopService {}
|
||||
}
|
||||
updateStatus()
|
||||
}
|
||||
|
||||
override fun onTileRemoved() {
|
||||
super.onTileRemoved()
|
||||
}
|
||||
|
||||
fun updateStatus() {
|
||||
if (getSharedPreferences("settings", MODE_PRIVATE).getBoolean("use_module", false)) {
|
||||
getStatus {
|
||||
if (it) {
|
||||
qsTile.label = getString(R.string.qs_name)
|
||||
qsTile.subtitle = getString(R.string.qs_working)
|
||||
qsTile.state = Tile.STATE_ACTIVE
|
||||
qsTile.updateTile()
|
||||
} else {
|
||||
qsTile.label = getString(R.string.qs_name)
|
||||
qsTile.subtitle = getString(R.string.qs_not_working)
|
||||
qsTile.state = Tile.STATE_INACTIVE
|
||||
qsTile.updateTile()
|
||||
}
|
||||
}
|
||||
}
|
||||
else {
|
||||
qsTile.label = getString(R.string.qs_name)
|
||||
qsTile.subtitle = getString(R.string.qs_not_available)
|
||||
qsTile.state = Tile.STATE_UNAVAILABLE
|
||||
qsTile.updateTile()
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -96,7 +96,6 @@ fun HomeScreen() {
|
||||
cardText.value = R.string.status_disabled
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Scaffold(
|
||||
|
||||
@@ -12,7 +12,7 @@
|
||||
<string name="error_root_message">Не получилось получить root доступ. Дайте права root для использования модуля Magisk</string>
|
||||
<string name="error_no_module_title">Модуль не установлен</string>
|
||||
<string name="error_no_module_message">Magisk модуль zaprett не найден. Пожалуйста, установите его</string>
|
||||
<string name="snack_reload">Перезагружаем zaprett...</string>
|
||||
<string name="snack_reload">Перезагружаем zaprett…</string>
|
||||
<string name="snack_module_disabled">Модуль Magisk отключен! Не получилось выполнить действие</string>
|
||||
<string name="title_strategy">Стратегия</string>
|
||||
<string name="status_not_availible">Состояние zaprett неизвестно. Нажми для обновления</string>
|
||||
@@ -30,12 +30,18 @@
|
||||
<string name="alert_version">Версия</string>
|
||||
<string name="alert_changelog">Список изменений</string>
|
||||
<string name="snack_already_started">Сервис уже запущен.</string>
|
||||
<string name="snack_starting_service">Запускаем сервис...</string>
|
||||
<string name="snack_starting_service">Запускаем сервис…</string>
|
||||
<string name="snack_no_service">Сервис не запущен</string>
|
||||
<string name="snack_stopping_service">Останавливаем сервис...</string>
|
||||
<string name="snack_stopping_service">Останавливаем сервис…</string>
|
||||
<string name="error_no_storage_title">Нет разрешения</string>
|
||||
<string name="error_no_storage_message">Для правильной работы приложения необходимо разрешение на доступ к хранилищу</string>
|
||||
<string name="btn_show_full_path">Показывать полный путь к листу</string>
|
||||
<string name="pls_reboot_snack">Перезагрузите устройство для вступления изменений в силу</string>
|
||||
<string name="pls_restart_snack">Перезапустите zaprett для вступления изменений в силу</string>
|
||||
<string name="qs_name">Zaprett</string>
|
||||
<string name="qs_starting">Запуск…</string>
|
||||
<string name="qs_stopping">Остановка…</string>
|
||||
<string name="qs_not_available">Не доступно</string>
|
||||
<string name="qs_working">Работает</string>
|
||||
<string name="qs_not_working">Не работает</string>
|
||||
</resources>
|
||||
@@ -12,7 +12,7 @@
|
||||
<string name="error_root_message">Couldn\'t get root access. Give root access to use the Magisk module</string>
|
||||
<string name="error_no_module_title">Module is not installed</string>
|
||||
<string name="error_no_module_message">Magisk module zaprett wasn\'t found. Please install it</string>
|
||||
<string name="snack_reload">Reloading zaprett...</string>
|
||||
<string name="snack_reload">Reloading zaprett…</string>
|
||||
<string name="snack_module_disabled">Magisk module disabled! Cant\'t execute action</string>
|
||||
<string name="title_strategy">Strategy</string>
|
||||
<string name="status_not_availible">Status of zaprett is unknown. Tap to update</string>
|
||||
@@ -30,7 +30,7 @@
|
||||
<string name="alert_version">Version</string>
|
||||
<string name="alert_changelog">Changelog</string>
|
||||
<string name="snack_already_started">Service already started.</string>
|
||||
<string name="snack_starting_service">Starting service...</string>
|
||||
<string name="snack_starting_service">Starting service…</string>
|
||||
<string name="snack_no_service">Service is not launched</string>
|
||||
<string name="snack_stopping_service">Stopping service...</string>
|
||||
<string name="error_no_storage_title">No permission</string>
|
||||
@@ -38,4 +38,10 @@
|
||||
<string name="btn_show_full_path">Show full list\'s path</string>
|
||||
<string name="pls_reboot_snack">Reboot your device for the changes to take effect</string>
|
||||
<string name="pls_restart_snack">Restart zaprett service for the changes to take effects</string>
|
||||
<string name="qs_name">Zaprett</string>
|
||||
<string name="qs_starting">Starting…</string>
|
||||
<string name="qs_stopping">Stopping…</string>
|
||||
<string name="qs_not_available">Not available</string>
|
||||
<string name="qs_working">Working</string>
|
||||
<string name="qs_not_working">Not working</string>
|
||||
</resources>
|
||||
Reference in New Issue
Block a user