mirror of
https://github.com/vleeuwenmenno/supplements.git
synced 2025-09-11 18:29:12 +02:00
feat: Integrate ShadSonner for improved toast notifications across multiple screens
This commit is contained in:
@@ -1,6 +1,7 @@
|
||||
import 'package:flutter/foundation.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:shadcn_ui/shadcn_ui.dart';
|
||||
|
||||
import '../providers/settings_provider.dart';
|
||||
import 'debug_notifications_screen.dart';
|
||||
@@ -124,6 +125,7 @@ class SettingsScreen extends StatelessWidget {
|
||||
trailing: DropdownButton<int>(
|
||||
value: settingsProvider.snoozeMinutes,
|
||||
items: const [
|
||||
DropdownMenuItem(value: 2, child: Text('2 min')),
|
||||
DropdownMenuItem(value: 5, child: Text('5 min')),
|
||||
DropdownMenuItem(value: 10, child: Text('10 min')),
|
||||
DropdownMenuItem(value: 15, child: Text('15 min')),
|
||||
@@ -301,10 +303,18 @@ class SettingsScreen extends StatelessWidget {
|
||||
);
|
||||
} catch (e) {
|
||||
if (context.mounted) {
|
||||
ScaffoldMessenger.of(context).showSnackBar(
|
||||
SnackBar(
|
||||
content: Text('Invalid time ranges: ${e.toString()}'),
|
||||
backgroundColor: Colors.red,
|
||||
final sonner = ShadSonner.of(context);
|
||||
final id = DateTime.now().millisecondsSinceEpoch;
|
||||
sonner.show(
|
||||
ShadToast(
|
||||
id: id,
|
||||
title: const Text('Invalid time ranges'),
|
||||
description: Text('${e.toString()}'),
|
||||
action: ShadButton(
|
||||
size: ShadButtonSize.sm,
|
||||
child: const Text('Dismiss'),
|
||||
onPressed: () => sonner.hide(id),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
Reference in New Issue
Block a user