diff --git a/mews_pedantic/lib/analysis_options.yaml b/mews_pedantic/lib/analysis_options.yaml index 3ffb0790..5dd77d3b 100644 --- a/mews_pedantic/lib/analysis_options.yaml +++ b/mews_pedantic/lib/analysis_options.yaml @@ -446,7 +446,7 @@ dart_code_metrics: - prefer-correct-error-name - prefer-correct-for-loop-increment - prefer-correct-future-return-type - # - prefer-correct-handler-name + - prefer-correct-handler-name # - prefer-correct-identifier-length - prefer-correct-json-casts - prefer-correct-setter-parameter-name @@ -568,7 +568,9 @@ dart_code_metrics: pubspec-rules: # - avoid-any-version # - avoid-dependency-overrides - # - banned-dependencies + - banned-dependencies: + banned: + - get # - prefer-caret-version-syntax # - prefer-correct-package-name # - prefer-correct-screenshots diff --git a/optimus/lib/src/lists/nav_list_tile.dart b/optimus/lib/src/lists/nav_list_tile.dart index 4b6090ff..5064ff4c 100644 --- a/optimus/lib/src/lists/nav_list_tile.dart +++ b/optimus/lib/src/lists/nav_list_tile.dart @@ -90,6 +90,14 @@ class _OptimusNavListTileState extends State hovered: tokens.backgroundInteractiveNeutralSubtleHover, ); + void _handleHoverChanged(bool isHovered) { + setState(() => _controller.update(WidgetState.hovered, isHovered)); + } + + void _handlePressedChanged(bool isPressed) { + setState(() => _controller.update(WidgetState.pressed, isPressed)); + } + @override Widget build(BuildContext context) { final tokens = context.tokens; @@ -101,10 +109,8 @@ class _OptimusNavListTileState extends State return IgnorePointer( ignoring: !widget.isEnabled, child: GestureWrapper( - onHoverChanged: (isHovered) => - setState(() => _controller.update(WidgetState.hovered, isHovered)), - onPressedChanged: (isPressed) => - setState(() => _controller.update(WidgetState.pressed, isPressed)), + onHoverChanged: _handleHoverChanged, + onPressedChanged: _handlePressedChanged, child: DecoratedBox( decoration: BoxDecoration(color: _backgroundColor.resolve(_controller.value)), diff --git a/optimus/lib/src/progress_indicator/progress_indicator_item.dart b/optimus/lib/src/progress_indicator/progress_indicator_item.dart index adad51ae..168c4642 100644 --- a/optimus/lib/src/progress_indicator/progress_indicator_item.dart +++ b/optimus/lib/src/progress_indicator/progress_indicator_item.dart @@ -61,6 +61,12 @@ class _ProgressIndicatorItemState extends State bool _isHovered = false; bool _isPressed = false; + void _handleHoverChange(bool isHovered) => + setState(() => _isHovered = isHovered); + + void _handlePressChange(bool isPressed) => + setState(() => _isPressed = isPressed); + @override Widget build(BuildContext context) { final indicator = widget.state.isEnabled @@ -82,8 +88,8 @@ class _ProgressIndicatorItemState extends State final itemsCount = widget.itemsCount; return GestureWrapper( - onHoverChanged: (isHovered) => setState(() => _isHovered = isHovered), - onPressedChanged: (isPressed) => setState(() => _isPressed = isPressed), + onHoverChanged: _handleHoverChange, + onPressedChanged: _handlePressChange, child: switch (widget.axis) { Axis.horizontal => _HorizontalItem( indicator: indicator, diff --git a/optimus_widgetbook/lib/components/buttons/toggle.dart b/optimus_widgetbook/lib/components/buttons/toggle.dart index 6a4ca2de..1e0b2f6b 100644 --- a/optimus_widgetbook/lib/components/buttons/toggle.dart +++ b/optimus_widgetbook/lib/components/buttons/toggle.dart @@ -44,26 +44,25 @@ class _ToggleExampleState extends State<_ToggleExample> { bool _isLoading = false; String _label = 'Claim'; + void _handlePressed() { + setState(() => _isLoading = true); + Future.delayed(const Duration(seconds: 2), _handleToggleBack); + } + + void _handleToggleBack() { + setState(() { + _isToggled = !_isToggled; + _label = _isToggled ? 'Claimed' : 'Claim'; + _isLoading = false; + }); + } + @override Widget build(BuildContext context) => OptimusToggleButton( label: widget.hasLabel ? Text(_label) : null, isToggled: _isToggled, isLoading: _isLoading, - onPressed: widget.isEnabled - ? () { - setState(() { - _isLoading = true; - }); - Future.delayed( - const Duration(seconds: 2), - () => setState(() { - _isToggled = !_isToggled; - _label = _isToggled ? 'Claimed' : 'Claim'; - _isLoading = false; - }), - ); - } - : null, + onPressed: widget.isEnabled ? _handlePressed : null, size: widget.size, ); } diff --git a/optimus_widgetbook/lib/components/forms/date_input_field.dart b/optimus_widgetbook/lib/components/forms/date_input_field.dart index 08e5800d..096981a7 100644 --- a/optimus_widgetbook/lib/components/forms/date_input_field.dart +++ b/optimus_widgetbook/lib/components/forms/date_input_field.dart @@ -26,6 +26,8 @@ class _DateFieldExampleState extends State<_DateFieldExample> { _value = DateTime.now(); } + void _handleSubmit(DateTime? value) => setState(() => _value = value); + @override Widget build(BuildContext context) { final k = context.knobs; @@ -48,7 +50,7 @@ class _DateFieldExampleState extends State<_DateFieldExample> { isEnabled: isEnabled, format: DateFormat(format), isClearAllEnabled: isClearEnabled, - onSubmitted: (value) => setState(() => _value = value), + onSubmitted: _handleSubmit, ), ); } diff --git a/optimus_widgetbook/lib/components/forms/selection_card.dart b/optimus_widgetbook/lib/components/forms/selection_card.dart index afe9f868..aa864eee 100644 --- a/optimus_widgetbook/lib/components/forms/selection_card.dart +++ b/optimus_widgetbook/lib/components/forms/selection_card.dart @@ -21,6 +21,8 @@ class _SelectionCardExample extends StatefulWidget { class _SelectionCardExampleState extends State<_SelectionCardExample> { bool _isSelected = false; + void _handlePress() => setState(() => _isSelected = !_isSelected); + @override Widget build(BuildContext context) { final k = context.knobs; @@ -63,7 +65,7 @@ class _SelectionCardExampleState extends State<_SelectionCardExample> { selectionVariant: selectorVariant, borderRadius: borderRadius, isEnabled: isEnabled, - onPressed: () => setState(() => _isSelected = !_isSelected), + onPressed: _handlePress, ), ); } diff --git a/optimus_widgetbook/lib/components/list/nav_list_tile.dart b/optimus_widgetbook/lib/components/list/nav_list_tile.dart index 662b66f3..c58b9947 100644 --- a/optimus_widgetbook/lib/components/list/nav_list_tile.dart +++ b/optimus_widgetbook/lib/components/list/nav_list_tile.dart @@ -21,6 +21,8 @@ class _NavListExample extends StatefulWidget { class _NavListExampleState extends State<_NavListExample> { bool _isToggled = false; + void _handleToggle(bool isToggled) => setState(() => _isToggled = isToggled); + @override Widget build(BuildContext context) { final k = context.knobs; @@ -54,8 +56,7 @@ class _NavListExampleState extends State<_NavListExample> { rightDetail: rightDetail != null ? Icon(rightDetail) : null, isChevronVisible: isChevronVisible, isToggleVisible: isToggleVisible, - onTogglePressed: (isToggled) => - setState(() => _isToggled = isToggled), + onTogglePressed: _handleToggle, isToggled: _isToggled, isEnabled: isEnabled, leading: leading != null ? Icon(leading) : null,