diff --git a/lib/theme/themes.dart b/lib/theme/themes.dart index 0213322c5..953f059e0 100644 --- a/lib/theme/themes.dart +++ b/lib/theme/themes.dart @@ -58,6 +58,7 @@ class Themes { typography: _typography, // COMPONENT THEMES checkboxTheme: _checkboxTheme(colors), + floatingActionButtonTheme: _floatingActionButtonTheme(colors), radioTheme: _radioTheme(colors), sliderTheme: _sliderTheme(colors), tooltipTheme: _tooltipTheme, @@ -86,6 +87,13 @@ class Themes { ); } + static FloatingActionButtonThemeData _floatingActionButtonTheme(ColorScheme colors) { + return FloatingActionButtonThemeData( + foregroundColor: colors.onPrimary, + backgroundColor: colors.primary, + ); + } + // adapted from M3 defaults static RadioThemeData _radioTheme(ColorScheme colors) => RadioThemeData( fillColor: MaterialStateProperty.resolveWith((states) { diff --git a/lib/widgets/about/translators.dart b/lib/widgets/about/translators.dart index dba2a6404..b69e2288a 100644 --- a/lib/widgets/about/translators.dart +++ b/lib/widgets/about/translators.dart @@ -30,7 +30,7 @@ class AboutTranslators extends StatelessWidget { static Widget buildBody(BuildContext context) { return _RandomTextSpanHighlighter( spans: Contributors.translators.map((v) => v.name).toList(), - color: Theme.of(context).colorScheme.onPrimary, + color: Theme.of(context).colorScheme.onBackground, ); } } diff --git a/lib/widgets/collection/filter_bar.dart b/lib/widgets/collection/filter_bar.dart index 848c8b37a..013a39601 100644 --- a/lib/widgets/collection/filter_bar.dart +++ b/lib/widgets/collection/filter_bar.dart @@ -11,11 +11,13 @@ class FilterBar extends StatefulWidget { static const double preferredHeight = AvesFilterChip.minChipHeight + verticalPadding; final List filters; + final bool interactive; final FilterCallback? onTap, onRemove; FilterBar({ super.key, required Set filters, + this.interactive = true, this.onTap, this.onRemove, }) : filters = List.from(filters)..sort(); @@ -111,6 +113,7 @@ class _FilterBarState extends State { return _Chip( filter: filter, single: filters.length == 1, + interactive: widget.interactive, onTap: onTap, onRemove: onRemove, ); @@ -119,12 +122,13 @@ class _FilterBarState extends State { class _Chip extends StatelessWidget { final CollectionFilter filter; - final bool single; + final bool single, interactive; final FilterCallback? onTap, onRemove; const _Chip({ required this.filter, required this.single, + required this.interactive, required this.onTap, required this.onRemove, }); @@ -148,6 +152,7 @@ class _Chip extends StatelessWidget { heroType: HeroType.always, onTap: onTap, onRemove: onRemove, + onLongPress: interactive ? AvesFilterChip.showDefaultLongPressMenu : null, ), ), ); diff --git a/lib/widgets/common/grid/sections/mosaic/scale_overlay.dart b/lib/widgets/common/grid/sections/mosaic/scale_overlay.dart index 050995676..d50a8344e 100644 --- a/lib/widgets/common/grid/sections/mosaic/scale_overlay.dart +++ b/lib/widgets/common/grid/sections/mosaic/scale_overlay.dart @@ -50,7 +50,7 @@ class MosaicScaleOverlay extends StatelessWidget { child: Stack( alignment: Alignment.center, children: [ - _buildBar(extentMax, colorScheme.onPrimary.withOpacity(.1)), + _buildBar(extentMax, colorScheme.onBackground.withOpacity(.2)), _buildBar(scaledSize.width, colorScheme.primary), ], ), diff --git a/lib/widgets/common/identity/aves_fab.dart b/lib/widgets/common/identity/aves_fab.dart index df50d8bbd..2c943ca18 100644 --- a/lib/widgets/common/identity/aves_fab.dart +++ b/lib/widgets/common/identity/aves_fab.dart @@ -20,9 +20,6 @@ class AvesFab extends StatelessWidget { child: FloatingActionButton( tooltip: tooltip, onPressed: onPressed, - shape: const RoundedRectangleBorder( - borderRadius: BorderRadius.all(Radius.circular(16)), - ), child: const Icon(AIcons.apply), ), ); diff --git a/lib/widgets/common/identity/buttons/outlined_button.dart b/lib/widgets/common/identity/buttons/outlined_button.dart index 97b715280..9d4299cb1 100644 --- a/lib/widgets/common/identity/buttons/outlined_button.dart +++ b/lib/widgets/common/identity/buttons/outlined_button.dart @@ -22,7 +22,7 @@ class AvesOutlinedButton extends StatelessWidget { ); }), foregroundColor: MaterialStateProperty.resolveWith((states) { - return states.contains(MaterialState.disabled) ? theme.disabledColor : theme.colorScheme.onPrimary; + return states.contains(MaterialState.disabled) ? theme.disabledColor : theme.colorScheme.onBackground; }), ); return icon != null diff --git a/lib/widgets/settings/common/collection_tile.dart b/lib/widgets/settings/common/collection_tile.dart index ff5bfefe4..3299c90e8 100644 --- a/lib/widgets/settings/common/collection_tile.dart +++ b/lib/widgets/settings/common/collection_tile.dart @@ -61,7 +61,11 @@ class SettingsCollectionTile extends StatelessWidget { ], ), ), - if (filters.isNotEmpty) FilterBar(filters: filters), + if (filters.isNotEmpty) + FilterBar( + filters: filters, + interactive: false, + ), ], ), ), diff --git a/lib/widgets/settings/common/quick_actions/editor_page.dart b/lib/widgets/settings/common/quick_actions/editor_page.dart index 49f0c63af..6d6aa5e74 100644 --- a/lib/widgets/settings/common/quick_actions/editor_page.dart +++ b/lib/widgets/settings/common/quick_actions/editor_page.dart @@ -275,7 +275,7 @@ class _QuickActionEditorBodyState extends State