Add `axis` parameter to `SelectHeaderStyleButton`

pull/1101/head
Adil Hanney 2 years ago
parent d10a98c6e2
commit 31770f51d9
No known key found for this signature in database
GPG Key ID: 27A0885BC5740457
  1. 1
      lib/src/widgets/toolbar.dart
  2. 17
      lib/src/widgets/toolbar/select_header_style_button.dart

@ -376,6 +376,7 @@ class QuillToolbar extends StatelessWidget implements PreferredSizeWidget {
if (showHeaderStyle)
SelectHeaderStyleButton(
controller: controller,
axis: axis,
iconSize: toolbarIconSize,
iconTheme: iconTheme,
afterButtonPressed: afterButtonPressed,

@ -10,6 +10,7 @@ import '../toolbar.dart';
class SelectHeaderStyleButton extends StatefulWidget {
const SelectHeaderStyleButton({
required this.controller,
this.axis = Axis.horizontal,
this.iconSize = kDefaultIconSize,
this.iconTheme,
this.attributes = const [
@ -23,6 +24,7 @@ class SelectHeaderStyleButton extends StatefulWidget {
}) : super(key: key);
final QuillController controller;
final Axis axis;
final double iconSize;
final QuillIconTheme? iconTheme;
final List<Attribute> attributes;
@ -67,9 +69,7 @@ class _SelectHeaderStyleButtonState extends State<SelectHeaderStyleButton> {
fontSize: widget.iconSize * 0.7,
);
return Row(
mainAxisSize: MainAxisSize.min,
children: widget.attributes.map((attribute) {
final children = widget.attributes.map((attribute) {
final isSelected = _selectedAttribute == attribute;
return Padding(
// ignore: prefer_const_constructors
@ -112,7 +112,16 @@ class _SelectHeaderStyleButtonState extends State<SelectHeaderStyleButton> {
),
),
);
}).toList(),
}).toList();
return widget.axis == Axis.horizontal
? Row(
mainAxisSize: MainAxisSize.min,
children: children,
)
: Column(
mainAxisSize: MainAxisSize.min,
children: children,
);
}

Loading…
Cancel
Save