Fix test failures + New adjustments

pull/1517/head
Ellet 1 year ago
parent ad642da044
commit ce97e29091
No known key found for this signature in database
GPG Key ID: C488CC70BBCEF0D1
  1. 2
      lib/src/models/config/toolbar/base_configurations.dart
  2. 4
      lib/src/models/config/toolbar/configurations.dart
  3. 34
      lib/src/models/themes/quill_custom_button.dart
  4. 29
      lib/src/widgets/toolbar/toolbar.dart
  5. 14
      test/bug_fix_test.dart

@ -41,7 +41,7 @@ class QuillBaseToolbarConfigurations extends Equatable {
final Color? color;
/// List of custom buttons
final List<QuillCustomButton> customButtons;
final List<QuillToolbarCustomButton> customButtons;
/// The color to use when painting the toolbar section divider.
///

@ -4,8 +4,8 @@ import 'package:flutter/widgets.dart'
show Axis, Color, Decoration, Widget, WrapAlignment, WrapCrossAlignment;
import '../../../widgets/embeds.dart';
import '../../../widgets/toolbar/buttons/custom_button.dart';
import '../../structs/link_dialog_action.dart';
import '../../themes/quill_custom_button.dart';
import '../../themes/quill_dialog_theme.dart';
import '../../themes/quill_icon_theme.dart';
import 'buttons/base.dart';
@ -212,7 +212,7 @@ class QuillToolbarConfigurations extends Equatable {
final bool showSearchButton;
final bool showSubscript;
final bool showSuperscript;
final List<QuillCustomButton> customButtons;
final List<QuillToolbarCustomButton> customButtons;
/// The decoration to use for the toolbar.
final Decoration? decoration;

@ -1,22 +1,22 @@
import 'package:flutter/material.dart';
// import 'package:flutter/material.dart';
import '../../widgets/toolbar/base_toolbar.dart';
// import '../../widgets/toolbar/base_toolbar.dart';
class QuillCustomButton extends QuillToolbarBaseButtonOptions {
const QuillCustomButton({
this.icon,
this.onTap,
super.tooltip,
this.child,
super.iconTheme,
});
// class QuillCustomButton extends QuillToolbarBaseButtonOptions {
// const QuillCustomButton({
// this.icon,
// this.onTap,
// super.tooltip,
// this.child,
// super.iconTheme,
// });
/// The icon widget
final Widget? icon;
// /// The icon widget
// final Widget? icon;
/// The function when the icon is tapped
final VoidCallback? onTap;
// /// The function when the icon is tapped
// final VoidCallback? onTap;
/// The customButton placeholder
final Widget? child;
}
// /// The customButton placeholder
// final Widget? child;
// }

@ -411,20 +411,21 @@ class QuillToolbar extends StatelessWidget {
space: configurations.sectionDividerSpace,
),
for (final customButton in configurations.customButtons)
if (customButton.child != null) ...[
InkWell(
onTap: customButton.onTap,
child: customButton.child,
),
] else ...[
QuillToolbarCustomButton(
options:
toolbarConfigurations.buttonOptions.customButtons,
controller: toolbarConfigurations
.buttonOptions.customButtons.controller ??
globalController,
),
],
customButton,
// if (customButton.child != null) ...[
// InkWell(
// onTap: customButton.onTap,
// child: customButton.child,
// ),
// ] else ...[
// QuillToolbarCustomButton(
// options:
// toolbarConfigurations.buttonOptions.customButtons,
// controller: toolbarConfigurations
// .buttonOptions.customButtons.controller ??
// globalController,
// ),
// ],
spacerWidget,
],
];

@ -1,5 +1,6 @@
import 'package:flutter/material.dart';
import 'package:flutter_quill/flutter_quill.dart';
import 'package:flutter_quill/src/models/config/toolbar/buttons/custom_button.dart';
import 'package:flutter_quill_test/flutter_quill_test.dart';
import 'package:flutter_test/flutter_test.dart';
@ -12,17 +13,24 @@ void main() {
(tester) async {
const tooltip = 'custom button';
final controller = QuillController.basic();
await tester.pumpWidget(
MaterialApp(
home: QuillProvider(
configurations: QuillConfigurations(
controller: QuillController.basic(),
controller: controller,
),
child: const QuillToolbar(
child: QuillToolbar(
configurations: QuillToolbarConfigurations(
showRedo: false,
customButtons: [
QuillCustomButton(tooltip: tooltip),
QuillToolbarCustomButton(
options: const QuillToolbarCustomButtonOptions(
tooltip: tooltip,
),
controller: controller,
),
],
),
),

Loading…
Cancel
Save