feat(ui): refine navigation and sleep timer
This commit is contained in:
@@ -1,7 +1,20 @@
|
||||
import 'dart:async';
|
||||
import 'servicio_audio.dart';
|
||||
|
||||
/// Opciones predefinidas de timer en minutos.
|
||||
/// Opciones predefinidas de timer en segundos.
|
||||
const opcionesTimerSegundos = [
|
||||
180,
|
||||
300,
|
||||
600,
|
||||
900,
|
||||
1800,
|
||||
3600,
|
||||
5400,
|
||||
7200,
|
||||
10800,
|
||||
];
|
||||
|
||||
/// Compatibilidad con el reproductor completo, que aún muestra minutos.
|
||||
const opcionesTimer = [3, 5, 10, 15, 30, 60, 90, 120, 180];
|
||||
|
||||
/// Servicio de auto-apagado de la radio.
|
||||
@@ -34,8 +47,13 @@ class ServicioTimer {
|
||||
|
||||
/// Inicia el timer para [minutos] minutos.
|
||||
void iniciar(int minutos) {
|
||||
iniciarDuracion(Duration(minutes: minutos));
|
||||
}
|
||||
|
||||
/// Inicia el timer para una duración exacta.
|
||||
void iniciarDuracion(Duration duracion) {
|
||||
if (duracion <= Duration.zero) return;
|
||||
unawaited(cancelar());
|
||||
final duracion = Duration(minutes: minutos);
|
||||
_finAt = DateTime.now().add(duracion);
|
||||
_tiempoRestante = duracion;
|
||||
_activo = true;
|
||||
|
||||
Reference in New Issue
Block a user