Update the example + Few more changes

pull/1517/head
Ellet 1 year ago
parent 00d0d650c1
commit b61c4353ce
No known key found for this signature in database
GPG Key ID: C488CC70BBCEF0D1
  1. 8
      example/lib/pages/home_page.dart
  2. 2
      lib/src/models/config/toolbar/base_configurations.dart
  3. 6
      lib/src/models/config/toolbar/configurations.dart
  4. 1
      lib/src/widgets/toolbar/buttons/custom_button.dart
  5. 5
      lib/src/widgets/toolbar/toolbar.dart
  6. 10
      test/bug_fix_test.dart

@ -457,9 +457,15 @@ class _HomePageState extends State<HomePage> {
}
QuillToolbar get quillToolbar {
final customButtons = [
const QuillToolbarCustomButtonOptions(
icon: Icon(Icons.add),
),
];
if (kIsWeb) {
return QuillToolbar(
configurations: QuillToolbarConfigurations(
customButtons: customButtons,
embedButtons: FlutterQuillEmbeds.toolbarButtons(
imageButtonOptions: QuillToolbarImageButtonOptions(
imageButtonConfigurations: QuillToolbarImageConfigurations(
@ -482,6 +488,7 @@ class _HomePageState extends State<HomePage> {
if (isDesktop()) {
return QuillToolbar(
configurations: QuillToolbarConfigurations(
customButtons: customButtons,
embedButtons: FlutterQuillEmbeds.toolbarButtons(
imageButtonOptions: QuillToolbarImageButtonOptions(
imageButtonConfigurations: QuillToolbarImageConfigurations(
@ -502,6 +509,7 @@ class _HomePageState extends State<HomePage> {
}
return QuillToolbar(
configurations: QuillToolbarConfigurations(
customButtons: customButtons,
embedButtons: FlutterQuillEmbeds.toolbarButtons(
videoButtonOptions: QuillToolbarVideoButtonOptions(
videoConfigurations: QuillToolbarVideoConfigurations(

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

@ -2,9 +2,8 @@ import 'package:equatable/equatable.dart';
import 'package:flutter/foundation.dart' show immutable;
import 'package:flutter/widgets.dart'
show Axis, Color, Decoration, Widget, WrapAlignment, WrapCrossAlignment;
import '../../../widgets/embeds.dart';
import '../../../widgets/toolbar/buttons/custom_button.dart';
import '../../../widgets/embeds.dart';
import '../../structs/link_dialog_action.dart';
import '../../themes/quill_dialog_theme.dart';
import '../../themes/quill_icon_theme.dart';
@ -27,6 +26,7 @@ export './../../../widgets/toolbar/buttons/search/search_dialog.dart';
export './buttons/base.dart';
export './buttons/clear_format.dart';
export './buttons/color.dart';
export './buttons/custom_button.dart';
export './buttons/font_family.dart';
export './buttons/font_size.dart';
export './buttons/history.dart';
@ -212,7 +212,7 @@ class QuillToolbarConfigurations extends Equatable {
final bool showSearchButton;
final bool showSubscript;
final bool showSuperscript;
final List<QuillToolbarCustomButton> customButtons;
final List<QuillToolbarCustomButtonOptions> customButtons;
/// The decoration to use for the toolbar.
final Decoration? decoration;

@ -1,6 +1,5 @@
import 'package:flutter/material.dart';
import '../../../models/config/toolbar/buttons/custom_button.dart';
import '../../../models/themes/quill_icon_theme.dart';
import '../../../utils/extensions/build_context.dart';
import '../../controller.dart';

@ -411,7 +411,10 @@ class QuillToolbar extends StatelessWidget {
space: configurations.sectionDividerSpace,
),
for (final customButton in configurations.customButtons)
customButton,
QuillToolbarCustomButton(
options: customButton,
controller: customButton.controller ?? globalController,
),
// if (customButton.child != null) ...[
// InkWell(
// onTap: customButton.onTap,

@ -1,6 +1,5 @@
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';
@ -21,16 +20,13 @@ void main() {
configurations: QuillConfigurations(
controller: controller,
),
child: QuillToolbar(
child: const QuillToolbar(
configurations: QuillToolbarConfigurations(
showRedo: false,
customButtons: [
QuillToolbarCustomButton(
options: const QuillToolbarCustomButtonOptions(
QuillToolbarCustomButtonOptions(
tooltip: tooltip,
),
controller: controller,
),
)
],
),
),

Loading…
Cancel
Save