From e0e649f1c644280a7e0882497c9714a551623771 Mon Sep 17 00:00:00 2001 From: albertms10 Date: Sun, 24 Jan 2021 10:38:16 +0100 Subject: [PATCH] refactor(material_buttons): migrated to the new specification --- lib/widgets/layout/danger_alert_dialog.dart | 26 ++++++++++++++++----- lib/widgets/layout/day_navigation.dart | 6 +++-- lib/widgets/layout/radio_button_list.dart | 19 ++++++++------- 3 files changed, 35 insertions(+), 16 deletions(-) diff --git a/lib/widgets/layout/danger_alert_dialog.dart b/lib/widgets/layout/danger_alert_dialog.dart index 2f6f7e39..54cbc8f4 100644 --- a/lib/widgets/layout/danger_alert_dialog.dart +++ b/lib/widgets/layout/danger_alert_dialog.dart @@ -15,28 +15,42 @@ class DangerAlertDialog extends StatelessWidget { @override Widget build(BuildContext context) { + const buttonPadding = + EdgeInsets.symmetric(horizontal: 20.0, vertical: 16.0); + return AlertDialog( title: Text(title), content: Text(content), actionsPadding: const EdgeInsets.all(8.0), actions: [ - FlatButton( + TextButton( + style: TextButton.styleFrom( + padding: buttonPadding, + ), onPressed: () { Navigator.of(context).pop(false); }, - padding: const EdgeInsets.symmetric(horizontal: 20.0, vertical: 16.0), child: Text( (cancelText ?? MaterialLocalizations.of(context).cancelButtonLabel) .toUpperCase(), ), ), - FlatButton( + TextButton( onPressed: () { Navigator.of(context).pop(true); }, - padding: const EdgeInsets.symmetric(horizontal: 20.0, vertical: 16.0), - hoverColor: Colors.red.withOpacity(0.1), - splashColor: Colors.red.withOpacity(0.15), + style: ButtonStyle( + padding: MaterialStateProperty.all(buttonPadding), + overlayColor: MaterialStateProperty.resolveWith((states) { + if (states.contains(MaterialState.hovered)) { + return Colors.red.withOpacity(0.1); + } else if (states.contains(MaterialState.pressed)) { + return Colors.red.withOpacity(0.15); + } + + return null; + }), + ), child: Text( (okText ?? MaterialLocalizations.of(context).deleteButtonTooltip) .toUpperCase(), diff --git a/lib/widgets/layout/day_navigation.dart b/lib/widgets/layout/day_navigation.dart index d65171c3..3389774a 100644 --- a/lib/widgets/layout/day_navigation.dart +++ b/lib/widgets/layout/day_navigation.dart @@ -15,8 +15,10 @@ class DayNavigation extends StatelessWidget { builder: (context, dayHandler, child) { return Row( children: [ - FlatButton( - padding: const EdgeInsets.symmetric(vertical: 18.0), + TextButton( + style: TextButton.styleFrom( + padding: const EdgeInsets.symmetric(vertical: 16.0), + ), onPressed: () => dayHandler.changeToNow(), child: Text(appLocalizations.today), ), diff --git a/lib/widgets/layout/radio_button_list.dart b/lib/widgets/layout/radio_button_list.dart index 4cf1d875..6367dd4d 100644 --- a/lib/widgets/layout/radio_button_list.dart +++ b/lib/widgets/layout/radio_button_list.dart @@ -48,14 +48,17 @@ class _RadioButtonListState extends State { Padding( padding: EdgeInsets.only(bottom: i == widget._lastLoopIndex ? 0.0 : 4.0), - child: FlatButton( - color: _selectedIndex == i - ? theme.colorScheme.secondaryVariant - : null, - textTheme: ButtonTextTheme.primary, - textColor: _selectedIndex == i ? null : theme.hintColor, - padding: - const EdgeInsets.symmetric(horizontal: 24.0, vertical: 16.0), + child: TextButton( + style: ElevatedButton.styleFrom( + primary: _selectedIndex == i + ? theme.colorScheme.secondaryVariant + : null, + onPrimary: _selectedIndex == i ? Colors.white : theme.hintColor, + padding: const EdgeInsets.symmetric( + horizontal: 24.0, + vertical: 16.0, + ), + ), onPressed: () { if (i != _selectedIndex) { setState(() => _selectedIndex = i);