Restore old `QuillToolbarFontFamilyButton` build

pull/1621/head
Aleksei 1 year ago
parent afcd30d12b
commit 61fd031c0a
  1. 17
      lib/src/models/config/toolbar/buttons/font_family_configurations.dart
  2. 13
      lib/src/widgets/toolbar/buttons/font_family_button.dart

@ -49,11 +49,18 @@ class QuillToolbarFontFamilyButtonOptions extends QuillToolbarBaseButtonOptions<
this.itemPadding, this.itemPadding,
this.defaultItemColor = Colors.red, this.defaultItemColor = Colors.red,
this.renderFontFamilies = true, this.renderFontFamilies = true,
this.highlightElevation = 1,
this.hoverElevation = 1,
this.fillColor,
this.iconSize, this.iconSize,
this.iconButtonFactor, this.iconButtonFactor,
}); });
/// By default it will be [fontFamilyValues] from [QuillSimpleToolbarConfigurations] final Color? fillColor;
final double hoverElevation;
final double highlightElevation;
/// By default it will be [fontFamilyValues] from [QuillToolbarConfigurations]
/// You can override this if you want /// You can override this if you want
final Map<String, String>? rawItemsMap; final Map<String, String>? rawItemsMap;
final ValueChanged<String>? onSelected; final ValueChanged<String>? onSelected;
@ -75,6 +82,9 @@ class QuillToolbarFontFamilyButtonOptions extends QuillToolbarBaseButtonOptions<
final double? iconButtonFactor; final double? iconButtonFactor;
QuillToolbarFontFamilyButtonOptions copyWith({ QuillToolbarFontFamilyButtonOptions copyWith({
Color? fillColor,
double? hoverElevation,
double? highlightElevation,
List<PopupMenuEntry<String>>? items, List<PopupMenuEntry<String>>? items,
Map<String, String>? rawItemsMap, Map<String, String>? rawItemsMap,
ValueChanged<String>? onSelected, ValueChanged<String>? onSelected,
@ -91,6 +101,8 @@ class QuillToolbarFontFamilyButtonOptions extends QuillToolbarBaseButtonOptions<
Color? defaultItemColor, Color? defaultItemColor,
double? iconSize, double? iconSize,
double? iconButtonFactor, double? iconButtonFactor,
// Add properties to override inherited properties
QuillController? controller,
IconData? iconData, IconData? iconData,
VoidCallback? afterButtonPressed, VoidCallback? afterButtonPressed,
String? tooltip, String? tooltip,
@ -117,6 +129,9 @@ class QuillToolbarFontFamilyButtonOptions extends QuillToolbarBaseButtonOptions<
defaultItemColor: defaultItemColor ?? this.defaultItemColor, defaultItemColor: defaultItemColor ?? this.defaultItemColor,
iconSize: iconSize ?? this.iconSize, iconSize: iconSize ?? this.iconSize,
iconButtonFactor: iconButtonFactor ?? this.iconButtonFactor, iconButtonFactor: iconButtonFactor ?? this.iconButtonFactor,
fillColor: fillColor ?? this.fillColor,
hoverElevation: hoverElevation ?? this.hoverElevation,
highlightElevation: highlightElevation ?? this.highlightElevation,
); );
} }
} }

@ -188,6 +188,15 @@ class QuillToolbarFontFamilyButtonState
final isMaterial3 = Theme.of(context).useMaterial3; final isMaterial3 = Theme.of(context).useMaterial3;
if (!isMaterial3) { if (!isMaterial3) {
return RawMaterialButton( return RawMaterialButton(
visualDensity: VisualDensity.compact,
shape: RoundedRectangleBorder(
borderRadius:
BorderRadius.circular(iconTheme?.borderRadius ?? 2),
),
fillColor: options.fillColor,
elevation: 0,
hoverElevation: options.hoverElevation,
highlightElevation: options.hoverElevation,
onPressed: _onPressed, onPressed: _onPressed,
child: _buildContent(context), child: _buildContent(context),
); );
@ -198,8 +207,8 @@ class QuillToolbarFontFamilyButtonState
style: IconButton.styleFrom( style: IconButton.styleFrom(
shape: iconTheme?.borderRadius != null shape: iconTheme?.borderRadius != null
? RoundedRectangleBorder( ? RoundedRectangleBorder(
borderRadius: BorderRadius.circular( borderRadius:
iconTheme?.borderRadius ?? -1), BorderRadius.circular(iconTheme?.borderRadius ?? 2),
) )
: null, : null,
), ),

Loading…
Cancel
Save