feat(ui): refine navigation and sleep timer
Build & Deploy Pluriwave / Análisis de código (push) Successful in 21s
Build & Deploy Pluriwave / Build APK + AAB release (push) Successful in 2m19s

This commit is contained in:
2026-05-22 13:12:50 +02:00
parent 0edad1bfcb
commit e1d1d6c639
11 changed files with 755 additions and 124 deletions
+6 -7
View File
@@ -4,9 +4,9 @@ import 'package:provider/provider.dart';
import 'package:shimmer/shimmer.dart' as shimmer;
import '../estado/estado_radio.dart';
import '../tema/pluriwave_theme.dart';
import '../widgets/pluri_glass_surface.dart';
import '../widgets/pluri_icon.dart';
import '../widgets/pluri_layout.dart';
import '../widgets/pluri_premium_widgets.dart';
import 'package:pluriwave/widgets/tarjeta_emisora.dart';
@@ -41,7 +41,6 @@ class _PantallaInicioState extends State<PantallaInicio> {
Widget build(BuildContext context) {
final estado = context.watch<EstadoRadio>();
final theme = Theme.of(context);
final t = context.pluriTokens;
return RefreshIndicator(
onRefresh: estado.cargarPopulares,
@@ -54,7 +53,7 @@ class _PantallaInicioState extends State<PantallaInicio> {
if (estado.error != null)
SliverToBoxAdapter(child: _errorBanner(estado, theme)),
SliverPadding(
padding: EdgeInsets.fromLTRB(t.spacingMd, 0, t.spacingMd, 124),
padding: const EdgeInsets.fromLTRB(PluriLayout.horizontal, 0, PluriLayout.horizontal, PluriLayout.bottomChromeInset),
sliver: _gridEmisoras(estado),
),
],
@@ -90,7 +89,7 @@ class _PantallaInicioState extends State<PantallaInicio> {
Widget _seccionCercanas(EstadoRadio estado, ThemeData theme) {
final pais = estado.paisCercanoDetectado;
return Padding(
padding: const EdgeInsets.fromLTRB(16, 8, 16, 0),
padding: const EdgeInsets.fromLTRB(PluriLayout.horizontal, 8, PluriLayout.horizontal, 0),
child: PluriGlassSurface(
padding: const EdgeInsets.all(12),
child: Column(
@@ -158,7 +157,7 @@ class _PantallaInicioState extends State<PantallaInicio> {
Widget _seccionTendencias(EstadoRadio estado, ThemeData theme) {
return Padding(
padding: const EdgeInsets.fromLTRB(16, 8, 16, 0),
padding: const EdgeInsets.fromLTRB(PluriLayout.horizontal, 8, PluriLayout.horizontal, 0),
child: PluriGlassSurface(
padding: const EdgeInsets.all(12),
child: Column(
@@ -202,7 +201,7 @@ class _PantallaInicioState extends State<PantallaInicio> {
Widget _chipGeneros(BuildContext context, ThemeData theme) {
return Padding(
padding: const EdgeInsets.fromLTRB(16, 16, 16, 8),
padding: const EdgeInsets.fromLTRB(PluriLayout.horizontal, 16, PluriLayout.horizontal, 8),
child: PluriGlassSurface(
padding: const EdgeInsets.all(12),
child: Column(
@@ -287,7 +286,7 @@ class _PantallaInicioState extends State<PantallaInicio> {
child: PluriEmptyState(
glyph: PluriIconGlyph.home,
title: 'No hay emisoras disponibles',
subtitle: 'Proba refrescar o elegir otro g?nero para volver a capturar se?al.',
subtitle: 'Proba refrescar o elegir otro género para volver a capturar señal.',
),
);
}