Skip to content

Commit 174b2ac

Browse files
committed
Use more sensible values for sleep timer
This also changes all of these items to use `getQuantityString` instead of manually appending values.
1 parent c55e784 commit 174b2ac

File tree

1 file changed

+22
-24
lines changed
  • app/src/main/kotlin/com/simplemobiletools/flashlight/activities

1 file changed

+22
-24
lines changed

app/src/main/kotlin/com/simplemobiletools/flashlight/activities/MainActivity.kt

Lines changed: 22 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -304,32 +304,13 @@ class MainActivity : SimpleActivity() {
304304
)
305305
return
306306
}
307-
val minutes = getString(R.string.minutes_raw)
308-
val hour = resources.getQuantityString(R.plurals.hours, 1, 1)
309-
val minute = resources.getQuantityString(R.plurals.minutes, 1, 1)
310-
311-
val items = arrayListOf(
312-
RadioItem(1 * 60, "1 $minute"),
313-
RadioItem(2 * 60, "2 $minutes"),
314-
RadioItem(5 * 60, "5 $minutes"),
315-
RadioItem(10 * 60, "10 $minutes"),
316-
RadioItem(20 * 60, "20 $minutes"),
317-
RadioItem(30 * 60, "30 $minutes"),
318-
RadioItem(60 * 60, hour)
319-
)
307+
308+
val items = ArrayList(listOf(10, 30, 60, 5 * 60, 10 * 60, 30 * 60).map {
309+
RadioItem(it, secondsToString(it))
310+
})
320311

321312
if (items.none { it.id == config.lastSleepTimerSeconds }) {
322-
val lastSleepTimerMinutes = config.lastSleepTimerSeconds / 60
323-
val lastSleepTimerSeconds = config.lastSleepTimerSeconds % 60
324-
val parts = mutableListOf<String>()
325-
if (lastSleepTimerMinutes != 0) {
326-
parts.add(resources.getQuantityString(R.plurals.minutes, lastSleepTimerMinutes, lastSleepTimerMinutes))
327-
}
328-
if (lastSleepTimerSeconds != 0) {
329-
parts.add(resources.getQuantityString(R.plurals.seconds, lastSleepTimerSeconds, lastSleepTimerSeconds))
330-
}
331-
val text = parts.joinToString(separator = " ")
332-
items.add(RadioItem(config.lastSleepTimerSeconds, text))
313+
items.add(RadioItem(config.lastSleepTimerSeconds, secondsToString(config.lastSleepTimerSeconds)))
333314
}
334315

335316
items.sortBy { it.id }
@@ -348,6 +329,23 @@ class MainActivity : SimpleActivity() {
348329
}
349330
}
350331

332+
private fun secondsToString(seconds: Int): String {
333+
val finalHours = seconds / 3600
334+
val finalMinutes = (seconds / 60) % 60
335+
val finalSeconds = seconds % 60
336+
val parts = mutableListOf<String>()
337+
if (finalHours != 0) {
338+
parts.add(resources.getQuantityString(R.plurals.hours, finalHours, finalHours))
339+
}
340+
if (finalMinutes != 0) {
341+
parts.add(resources.getQuantityString(R.plurals.minutes, finalMinutes, finalMinutes))
342+
}
343+
if (finalSeconds != 0) {
344+
parts.add(resources.getQuantityString(R.plurals.seconds, finalSeconds, finalSeconds))
345+
}
346+
return parts.joinToString(separator = " ")
347+
}
348+
351349
private fun pickedSleepTimer(seconds: Int) {
352350
config.lastSleepTimerSeconds = seconds
353351
config.sleepInTS = System.currentTimeMillis() + seconds * 1000

0 commit comments

Comments
 (0)