From d50833cdcf7e172d9a707d844cf426dbe898432c Mon Sep 17 00:00:00 2001 From: mark8044 <87546778+mark8044@users.noreply.github.com> Date: Wed, 4 May 2022 22:08:01 -0700 Subject: [PATCH] New borderRadius for iconTheme (#788) * Update quill_icon_theme.dart * Update quill_icon_theme.dart * Update select_alignment_button.dart * Update quill_dropdown_button.dart * Update quill_dropdown_button.dart * Update quill_icon_button.dart * Update quill_icon_button.dart * Update select_header_style_button.dart * Update quill_icon_button.dart * Update quill_icon_button.dart * Update toggle_style_button.dart * Update video_button.dart * Update link_style_button.dart * Update indent_button.dart * Update image_button.dart * Update history_button.dart * Update color_button.dart * Update clear_format_button.dart * Update camera_button.dart --- lib/src/models/themes/quill_icon_theme.dart | 4 ++++ lib/src/widgets/toolbar/camera_button.dart | 1 + lib/src/widgets/toolbar/clear_format_button.dart | 1 + lib/src/widgets/toolbar/color_button.dart | 1 + lib/src/widgets/toolbar/history_button.dart | 1 + lib/src/widgets/toolbar/image_button.dart | 1 + lib/src/widgets/toolbar/indent_button.dart | 1 + lib/src/widgets/toolbar/link_style_button.dart | 1 + lib/src/widgets/toolbar/quill_dropdown_button.dart | 5 ++++- lib/src/widgets/toolbar/quill_icon_button.dart | 4 +++- lib/src/widgets/toolbar/select_alignment_button.dart | 2 +- lib/src/widgets/toolbar/select_header_style_button.dart | 2 +- lib/src/widgets/toolbar/toggle_style_button.dart | 1 + lib/src/widgets/toolbar/video_button.dart | 1 + 14 files changed, 22 insertions(+), 4 deletions(-) diff --git a/lib/src/models/themes/quill_icon_theme.dart b/lib/src/models/themes/quill_icon_theme.dart index 58f5998b..f5c3c0a3 100644 --- a/lib/src/models/themes/quill_icon_theme.dart +++ b/lib/src/models/themes/quill_icon_theme.dart @@ -8,6 +8,7 @@ class QuillIconTheme { this.iconUnselectedFillColor, this.disabledIconColor, this.disabledIconFillColor, + this.borderRadius }); ///The color to use for selected icons in the toolbar @@ -27,4 +28,7 @@ class QuillIconTheme { ///The fill color to use for disabled icons in the toolbar final Color? disabledIconFillColor; + + ///The borderRadius for icons + final double? borderRadius; } diff --git a/lib/src/widgets/toolbar/camera_button.dart b/lib/src/widgets/toolbar/camera_button.dart index 3d4993f5..184200c9 100644 --- a/lib/src/widgets/toolbar/camera_button.dart +++ b/lib/src/widgets/toolbar/camera_button.dart @@ -53,6 +53,7 @@ class CameraButton extends StatelessWidget { hoverElevation: 0, size: iconSize * 1.77, fillColor: iconFillColor, + borderRadius: iconTheme?.borderRadius ?? 2, onPressed: () => _handleCameraButtonTap(context, controller, onImagePickCallback: onImagePickCallback, onVideoPickCallback: onVideoPickCallback, diff --git a/lib/src/widgets/toolbar/clear_format_button.dart b/lib/src/widgets/toolbar/clear_format_button.dart index 652b783f..4364e2a1 100644 --- a/lib/src/widgets/toolbar/clear_format_button.dart +++ b/lib/src/widgets/toolbar/clear_format_button.dart @@ -36,6 +36,7 @@ class _ClearFormatButtonState extends State { size: widget.iconSize * kIconButtonFactor, icon: Icon(widget.icon, size: widget.iconSize, color: iconColor), fillColor: fillColor, + borderRadius: widget.iconTheme?.borderRadius ?? 2, onPressed: () { final attrs = {}; for (final style in widget.controller.getAllSelectionStyles()) { diff --git a/lib/src/widgets/toolbar/color_button.dart b/lib/src/widgets/toolbar/color_button.dart index 2485c302..a8129640 100644 --- a/lib/src/widgets/toolbar/color_button.dart +++ b/lib/src/widgets/toolbar/color_button.dart @@ -124,6 +124,7 @@ class _ColorButtonState extends State { size: widget.iconSize, color: widget.background ? iconColorBackground : iconColor), fillColor: widget.background ? fillColorBackground : fillColor, + borderRadius: widget.iconTheme?.borderRadius ?? 2, onPressed: _showColorPicker, ); } diff --git a/lib/src/widgets/toolbar/history_button.dart b/lib/src/widgets/toolbar/history_button.dart index a245c2e8..10ba28d7 100644 --- a/lib/src/widgets/toolbar/history_button.dart +++ b/lib/src/widgets/toolbar/history_button.dart @@ -42,6 +42,7 @@ class _HistoryButtonState extends State { size: widget.iconSize * 1.77, icon: Icon(widget.icon, size: widget.iconSize, color: _iconColor), fillColor: fillColor, + borderRadius: widget.iconTheme?.borderRadius ?? 2, onPressed: _changeHistory, ); } diff --git a/lib/src/widgets/toolbar/image_button.dart b/lib/src/widgets/toolbar/image_button.dart index 581dde77..2a2fb827 100644 --- a/lib/src/widgets/toolbar/image_button.dart +++ b/lib/src/widgets/toolbar/image_button.dart @@ -55,6 +55,7 @@ class ImageButton extends StatelessWidget { hoverElevation: 0, size: iconSize * 1.77, fillColor: iconFillColor, + borderRadius: iconTheme?.borderRadius ?? 2, onPressed: () => _onPressedHandler(context), ); } diff --git a/lib/src/widgets/toolbar/indent_button.dart b/lib/src/widgets/toolbar/indent_button.dart index 476ebc46..2fc5ce6e 100644 --- a/lib/src/widgets/toolbar/indent_button.dart +++ b/lib/src/widgets/toolbar/indent_button.dart @@ -38,6 +38,7 @@ class _IndentButtonState extends State { size: widget.iconSize * 1.77, icon: Icon(widget.icon, size: widget.iconSize, color: iconColor), fillColor: iconFillColor, + borderRadius: widget.iconTheme?.borderRadius ?? 2, onPressed: () { final indent = widget.controller .getSelectionStyle() diff --git a/lib/src/widgets/toolbar/link_style_button.dart b/lib/src/widgets/toolbar/link_style_button.dart index 9ca83fb6..98ff1cc6 100644 --- a/lib/src/widgets/toolbar/link_style_button.dart +++ b/lib/src/widgets/toolbar/link_style_button.dart @@ -91,6 +91,7 @@ class _LinkStyleButtonState extends State { ), fillColor: widget.iconTheme?.iconUnselectedFillColor ?? theme.canvasColor, + borderRadius: widget.iconTheme?.borderRadius ?? 2, onPressed: pressedHandler, ), ), diff --git a/lib/src/widgets/toolbar/quill_dropdown_button.dart b/lib/src/widgets/toolbar/quill_dropdown_button.dart index e29b29fb..f1aae14a 100644 --- a/lib/src/widgets/toolbar/quill_dropdown_button.dart +++ b/lib/src/widgets/toolbar/quill_dropdown_button.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart'; +import '../../models/themes/quill_icon_theme.dart'; @Deprecated('Not being used') class QuillDropdownButton extends StatefulWidget { @@ -11,6 +12,7 @@ class QuillDropdownButton extends StatefulWidget { this.fillColor, this.hoverElevation = 1, this.highlightElevation = 1, + this.iconTheme, Key? key, }) : super(key: key); @@ -22,6 +24,7 @@ class QuillDropdownButton extends StatefulWidget { final T initialValue; final List> items; final ValueChanged onSelected; + final QuillIconTheme? iconTheme; @override _QuillDropdownButtonState createState() => _QuillDropdownButtonState(); @@ -35,7 +38,7 @@ class _QuillDropdownButtonState extends State> { constraints: BoxConstraints.tightFor(height: widget.height), child: RawMaterialButton( visualDensity: VisualDensity.compact, - shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(2)), + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(widget.iconTheme?.borderRadius ?? 2)), fillColor: widget.fillColor, elevation: 0, hoverElevation: widget.hoverElevation, diff --git a/lib/src/widgets/toolbar/quill_icon_button.dart b/lib/src/widgets/toolbar/quill_icon_button.dart index 0ffd3ef7..b0c69a7f 100644 --- a/lib/src/widgets/toolbar/quill_icon_button.dart +++ b/lib/src/widgets/toolbar/quill_icon_button.dart @@ -8,6 +8,7 @@ class QuillIconButton extends StatelessWidget { this.fillColor, this.hoverElevation = 1, this.highlightElevation = 1, + this.borderRadius = 2, Key? key, }) : super(key: key); @@ -17,6 +18,7 @@ class QuillIconButton extends StatelessWidget { final Color? fillColor; final double hoverElevation; final double highlightElevation; + final double borderRadius; @override Widget build(BuildContext context) { @@ -24,7 +26,7 @@ class QuillIconButton extends StatelessWidget { constraints: BoxConstraints.tightFor(width: size, height: size), child: RawMaterialButton( visualDensity: VisualDensity.compact, - shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(2)), + shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(borderRadius)), fillColor: fillColor, elevation: 0, hoverElevation: hoverElevation, diff --git a/lib/src/widgets/toolbar/select_alignment_button.dart b/lib/src/widgets/toolbar/select_alignment_button.dart index ccfe16a1..e3d755bb 100644 --- a/lib/src/widgets/toolbar/select_alignment_button.dart +++ b/lib/src/widgets/toolbar/select_alignment_button.dart @@ -97,7 +97,7 @@ class _SelectAlignmentButtonState extends State { elevation: 0, visualDensity: VisualDensity.compact, shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(2)), + borderRadius: BorderRadius.circular(widget.iconTheme?.borderRadius ?? 2)), fillColor: _valueToText[_value] == _valueString[index] ? (widget.iconTheme?.iconSelectedFillColor ?? theme.toggleableActiveColor) diff --git a/lib/src/widgets/toolbar/select_header_style_button.dart b/lib/src/widgets/toolbar/select_header_style_button.dart index 4b482cea..e3c5d222 100644 --- a/lib/src/widgets/toolbar/select_header_style_button.dart +++ b/lib/src/widgets/toolbar/select_header_style_button.dart @@ -79,7 +79,7 @@ class _SelectHeaderStyleButtonState extends State { elevation: 0, visualDensity: VisualDensity.compact, shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(2)), + borderRadius: BorderRadius.circular(widget.iconTheme?.borderRadius ?? 2)), fillColor: _valueToText[_value] == _valueString[index] ? (widget.iconTheme?.iconSelectedFillColor ?? theme.toggleableActiveColor) diff --git a/lib/src/widgets/toolbar/toggle_style_button.dart b/lib/src/widgets/toolbar/toggle_style_button.dart index e4a680fe..0b654deb 100644 --- a/lib/src/widgets/toolbar/toggle_style_button.dart +++ b/lib/src/widgets/toolbar/toggle_style_button.dart @@ -145,5 +145,6 @@ Widget defaultToggleStyleButtonBuilder( icon: Icon(icon, size: iconSize, color: iconColor), fillColor: fill, onPressed: onPressed, + borderRadius: iconTheme?.borderRadius ?? 2, ); } diff --git a/lib/src/widgets/toolbar/video_button.dart b/lib/src/widgets/toolbar/video_button.dart index 6b7f0e75..17e7f1a6 100644 --- a/lib/src/widgets/toolbar/video_button.dart +++ b/lib/src/widgets/toolbar/video_button.dart @@ -55,6 +55,7 @@ class VideoButton extends StatelessWidget { hoverElevation: 0, size: iconSize * 1.77, fillColor: iconFillColor, + borderRadius: iconTheme?.borderRadius ?? 2, onPressed: () => _onPressedHandler(context), ); }