Skip to content

Commit 428892e

Browse files
committed
Make SAF picking as a vanilla menu item
1 parent d1eeaa5 commit 428892e

File tree

13 files changed

+22
-70
lines changed

13 files changed

+22
-70
lines changed

app-base/src/main/res/drawable/ic_magic.xml

-10
This file was deleted.

app-base/src/main/res/values-de/strings.xml

-2
Original file line numberDiff line numberDiff line change
@@ -93,8 +93,6 @@
9393
<string name="behaviour_music">Musik</string>
9494
<string name="music_pick_ringtone">Schritt-Musik auswählen</string>
9595
<string name="music_loop">Musik-Loop</string>
96-
<string name="music_saf_pick">SAF-Auswahl</string>
97-
<string name="music_saf_pick_desp">Wenn Sie Musik auswählen möchten, ohne eine Erlaubnis zu erteilen, oder wenn die Standard-Klingeltonauswahl Ihre Musik nicht anzeigt, kann die Aktivierung dieser Option helfen.</string>
9896
<string name="behaviour_vibration">Vibration</string>
9997
<string name="behaviour_vibration_help">Bei diesem Schritt vibrieren</string>
10098
<string name="vibration_count">Anzahl</string>

app-base/src/main/res/values-es/strings.xml

-2
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,6 @@
2525
<string name="behaviour_no_behaviours">Etapa en silencio</string>
2626
<string name="behaviour_music_help">Reproducir música en esta etapa</string>
2727
<string name="music_loop">En bucle</string>
28-
<string name="music_saf_pick">Selección SAF</string>
29-
<string name="music_saf_pick_desp">Si quieres elegir música sin dar permiso, o el selector por defecto no muestra tu música, habilitar esta opción puede ayudar.</string>
3028
<string name="behaviour_vibration">Vibración</string>
3129
<string name="vibration_count">Conteo</string>
3230
<string name="behaviour_vibration_help">Vibrar equipo en esta etapa</string>

app-base/src/main/res/values-it/strings.xml

-2
Original file line numberDiff line numberDiff line change
@@ -104,7 +104,6 @@
104104
<string name="behaviour_music_help">Riproduci della musica in questo passaggio</string>
105105
<string name="music_pick_ringtone">Scegli la musica del passaggio</string>
106106
<string name="music_loop">Ripeti</string>
107-
<string name="music_saf_pick_desp">Abilitare questa opzione potrebbe aiutare se vuoi scegliere la musica senza dare il permesso oppure se la scelta della suoneria di default non mostra la tua musica.</string>
108107
<string name="behaviour_vibration">Vibrazione</string>
109108
<string name="vibration_count">Numero di vibrazioni</string>
110109
<string name="vibration_pattern">Tipo di vibrazione</string>
@@ -196,5 +195,4 @@
196195
<string name="unknown">Sconosciuto</string>
197196
<string name="time_picker_type_scroll">Scorri</string>
198197
<string name="edit_add_notifier_desp">Uno step utile come memo. Ricorda la tua modifica</string>
199-
<string name="music_saf_pick">Scegli SAF</string>
200198
</resources>

app-base/src/main/res/values-nl/strings.xml

-2
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,6 @@
5353
<string name="intro_start_step_time">Klik op <b>de tijd naast de stapnaam</b> en verander de tijd in <b>3 minuten</b>.</string>
5454
<string name="edit_add_notifier">Meldinggever</string>
5555
<string name="beep_count_title">Piep aantal</string>
56-
<string name="music_saf_pick_desp">Als je muziek wilt kiezen zonder toestemming te verlenen, of als de standaard beltoon-kiezer je muziek niet toont, kan het inschakelen van deze optie helpen.</string>
5756
<string name="tip_missed_timer"><b> Sommige timers worden abnormaal gestopt!</b>
5857
\n
5958
\nDit komt waarschijnlijk omdat het systeem de app op de achtergrond stopt. <b>Om dit probleem op te lossen, kun je deze app in de systeeminstellingen op de Witte lijst zetten.</b></string>
@@ -542,7 +541,6 @@
542541
<string name="record_deleted_timer">Verwijderd</string>
543542
<string name="time_panel_elapsed_time">Verstreken tijd</string>
544543
<string name="scheduler_repeat_tomorrow">Morgen</string>
545-
<string name="music_saf_pick">SAF kiezen</string>
546544
<string name="sample_timer_template_title">Timer-sjabloon</string>
547545
<string name="notif_a11y_start_ally">Alle timers starten</string>
548546
<string name="help_tts_test_system_settings">Nee. Ik wil graag naar de systeeminstellingen gaan</string>

app-base/src/main/res/values-pt/strings.xml

-2
Original file line numberDiff line numberDiff line change
@@ -206,8 +206,6 @@
206206
<string name="behaviour_music_help">Tocar música nesta etapa</string>
207207
<string name="music_pick_ringtone">Selecionar música de etapa</string>
208208
<string name="music_loop">Em repetição</string>
209-
<string name="music_saf_pick">Seleção SAF</string>
210-
<string name="music_saf_pick_desp">Se quer escolher música sem autorizar a permissão, ou o menu padrão de toques não mostra a sua música, habilitar esta opção pode ajudar.</string>
211209
<string name="behaviour_vibration">Vibração</string>
212210
<string name="behaviour_vibration_help">Vibrar o dispositivo nesta etapa</string>
213211
<string name="vibration_count_desp_0">0 para vibrar durante toda esta etapa</string>

app-base/src/main/res/values-ru/strings.xml

-2
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@
1515
<string name="name_loop_loop_hint">Цикл</string>
1616
<string name="edit_add_notifier">Оповещение</string>
1717
<string name="beep_count_title">Количество звуковых сигналов</string>
18-
<string name="music_saf_pick_desp">Если вы хотите выбирать музыку без разрешения или в программе выбора рингтонов по умолчанию не отображается ваша музыка, включение этой опции может помочь.</string>
1918
<string name="edit_add_end_desp">Одно действие в конце всего задания, для завершения</string>
2019
<string name="voice_variable_timer_elapsed_desp">Прошедшее время со старта</string>
2120
<string name="edit_more_a11y">Другие настройки таймера</string>
@@ -198,7 +197,6 @@
198197
<string name="record_total_time">С первого дня</string>
199198
<string name="billing_a_part_of_iap">Это одно из покупок внутри приложения.</string>
200199
<string name="trash_done_template">Таймер %s перемещён в Корзину</string>
201-
<string name="music_saf_pick">Выбрать через SAF</string>
202200
<string name="edit_add_notifier_desp">Удобное напоминание о шаге. Помнит ваши изменения</string>
203201
<string name="vibration_pattern">Частота</string>
204202
<string name="half_option">Напоминание о половине</string>

app-base/src/main/res/values-zh-rCN/strings.xml

-2
Original file line numberDiff line numberDiff line change
@@ -130,8 +130,6 @@
130130
<string name="behaviour_music_help">在此步骤播放音乐</string>
131131
<string name="music_pick_ringtone">选择步骤铃声</string>
132132
<string name="music_loop">循环</string>
133-
<string name="music_saf_pick">SAF音乐选择</string>
134-
<string name="music_saf_pick_desp">如果你想在不授予权限的情况下挑选音乐,或者默认的铃声挑选器不显示你的音乐,启用此选项可能有帮助。</string>
135133
<string name="music_trim_step_duration">裁剪步骤时长</string>
136134
<string name="behaviour_vibration">振动</string>
137135
<string name="behaviour_vibration_help">在此步骤振动手机</string>

app-base/src/main/res/values-zh-rHK/strings.xml

-2
Original file line numberDiff line numberDiff line change
@@ -130,8 +130,6 @@
130130
<string name="behaviour_music_help">在此步驟播放音樂</string>
131131
<string name="music_pick_ringtone">選擇步驟鈴聲</string>
132132
<string name="music_loop">循環</string>
133-
<string name="music_saf_pick">SAF音樂選擇</string>
134-
<string name="music_saf_pick_desp">如果你想在不授予權限的情況下挑選音樂,或者默認的鈴聲挑選器不顯示你的音樂,啓用此選項可能有幫助。</string>
135133
<string name="music_trim_step_duration">裁剪步驟時長</string>
136134
<string name="behaviour_vibration">震動</string>
137135
<string name="behaviour_vibration_help">在此步驟震動手機</string>

app-base/src/main/res/values-zh-rTW/strings.xml

-2
Original file line numberDiff line numberDiff line change
@@ -130,8 +130,6 @@
130130
<string name="behaviour_music_help">在此步驟播放音樂</string>
131131
<string name="music_pick_ringtone">選擇步驟鈴聲</string>
132132
<string name="music_loop">循環</string>
133-
<string name="music_saf_pick">SAF音樂選擇</string>
134-
<string name="music_saf_pick_desp">如果你想在不授予許可權的情況下挑選音樂,或者預設的鈴聲挑選器不顯示你的音樂,啟用此選項可能有幫助。</string>
135133
<string name="music_trim_step_duration">裁剪步驟時長</string>
136134
<string name="behaviour_vibration">振動</string>
137135
<string name="behaviour_vibration_help">在此步驟振動手機</string>

app-base/src/main/res/values/strings.xml

-2
Original file line numberDiff line numberDiff line change
@@ -144,8 +144,6 @@
144144
<string name="behaviour_music_help">Play music at this step</string>
145145
<string name="music_pick_ringtone">Pick Step Music</string>
146146
<string name="music_loop">Loop</string>
147-
<string name="music_saf_pick">SAF Pick</string>
148-
<string name="music_saf_pick_desp">If you would like to pick music without granting permission, or the default ringtone picker doesn\'t show your music, enabling this option might help.</string>
149147
<string name="music_trim_step_duration">Trim step duration</string>
150148

151149
<string name="behaviour_vibration">Vibration</string>

app-timer-edit/src/main/java/xyz/aprildown/timer/app/timer/edit/RingtonePickerActivity.kt

+22-30
Original file line numberDiff line numberDiff line change
@@ -6,14 +6,14 @@ import android.content.Intent
66
import android.media.RingtoneManager
77
import android.net.Uri
88
import android.os.Bundle
9+
import android.text.Spanned
10+
import android.text.style.ForegroundColorSpan
911
import android.view.Menu
1012
import android.view.MenuItem
1113
import android.view.View
1214
import androidx.core.content.IntentCompat
1315
import androidx.core.content.edit
14-
import androidx.core.view.MenuItemCompat
15-
import com.github.deweyreed.tools.helper.toColorStateList
16-
import com.google.android.material.dialog.MaterialAlertDialogBuilder
16+
import androidx.core.text.buildSpannedString
1717
import dagger.hilt.android.AndroidEntryPoint
1818
import xyz.aprildown.timer.app.base.data.PreferenceData.storedAudioTypeValue
1919
import xyz.aprildown.timer.app.base.ui.BaseActivity
@@ -75,40 +75,32 @@ class RingtonePickerActivity :
7575
}
7676

7777
override fun onCreateOptionsMenu(menu: Menu?): Boolean {
78-
menuInflater.inflate(R.menu.ringtone_picker, menu)
79-
return true
80-
}
81-
82-
override fun onPrepareOptionsMenu(menu: Menu?): Boolean {
83-
menu?.findItem(R.id.action_ringtone_picker_saf)?.let {
84-
MenuItemCompat.setIconTintList(
85-
it,
86-
if (usingSafPick) newDynamicTheme.colorSecondary.toColorStateList() else null
87-
)
78+
menu?.add("")?.run {
79+
setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM)
80+
setOnMenuItemClickListener {
81+
usingSafPick = !usingSafPick
82+
applyNewSafPickSetting()
83+
true
84+
}
8885
}
8986
return true
9087
}
9188

92-
override fun onOptionsItemSelected(item: MenuItem): Boolean {
93-
when (item.itemId) {
94-
R.id.action_ringtone_picker_saf -> {
89+
override fun onPrepareOptionsMenu(menu: Menu?): Boolean {
90+
val menuItem = menu?.getItem(0)
91+
menuItem?.setTitle(
92+
buildSpannedString {
93+
append("SAF")
9594
if (usingSafPick) {
96-
usingSafPick = false
97-
applyNewSafPickSetting()
98-
} else {
99-
MaterialAlertDialogBuilder(this)
100-
.setTitle(RBase.string.music_saf_pick)
101-
.setMessage(RBase.string.music_saf_pick_desp)
102-
.setPositiveButton(RBase.string.enable) { _, _ ->
103-
usingSafPick = true
104-
applyNewSafPickSetting()
105-
}
106-
.setNegativeButton(RBase.string.cancel, null)
107-
.show()
95+
setSpan(
96+
ForegroundColorSpan(newDynamicTheme.colorSecondary),
97+
0,
98+
length,
99+
Spanned.SPAN_EXCLUSIVE_EXCLUSIVE
100+
)
108101
}
109102
}
110-
else -> return false
111-
}
103+
)
112104
return true
113105
}
114106

app-timer-edit/src/main/res/menu/ringtone_picker.xml

-10
This file was deleted.

0 commit comments

Comments
 (0)