Skip to content

Commit

Permalink
Fix bug
Browse files Browse the repository at this point in the history
  • Loading branch information
Ellet committed Nov 15, 2023
1 parent bd78a9b commit d806340
Show file tree
Hide file tree
Showing 5 changed files with 41 additions and 17 deletions.
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,9 @@

All notable changes to this project will be documented in this file.

## 8.5.5
* Now you when opening dialogs by `QuillToolbar` you will not get an exception when you don't use `FlutterQuillLocalizations.delegate` in your `WidgetsApp`, `MaterialApp` or `CupertinoApp`. The fix is for `QuillToolbarSearchButton`, `QuillToolbarLinkStyleButton` and `QuillToolbarColorButton` buttons

## 8.5.4
* The `mobileWidth`, `mobileHeight`, `mobileMargin` and `mobileAlignment` is now deprecated in `flutter_quill`, they are are now defined in `flutter_quill_extensions`
* Deprecate `replaceStyleStringWithSize` function which is in `string.dart`
Expand Down
2 changes: 1 addition & 1 deletion example/lib/main.dart
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ class MyApp extends StatelessWidget {
GlobalMaterialLocalizations.delegate,
GlobalWidgetsLocalizations.delegate,
GlobalCupertinoLocalizations.delegate,
FlutterQuillLocalizations.delegate,
// FlutterQuillLocalizations.delegate,
],
supportedLocales: FlutterQuillLocalizations.supportedLocales,
routes: {
Expand Down
17 changes: 12 additions & 5 deletions lib/src/widgets/toolbar/buttons/color/color.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,13 @@ import 'package:flutter/material.dart';

import '../../../../extensions/quill_provider.dart';
import '../../../../l10n/extensions/localizations.dart';
import '../../../../l10n/widgets/localizations.dart';
import '../../../../models/documents/attribute.dart';
import '../../../../models/documents/style.dart';
import '../../../../models/themes/quill_icon_theme.dart';
import '../../../../utils/color.dart';
import '../../../controller.dart';
import '../../../utils/provider.dart';
import '../../base_toolbar.dart';
import 'dialog.dart';

Expand Down Expand Up @@ -225,11 +227,16 @@ class QuillToolbarColorButtonState extends State<QuillToolbarColorButton> {
context: context,
barrierColor: options.dialogBarrierColor ??
context.requireQuillSharedConfigurations.dialogBarrierColor,
builder: (context) => ColorPickerDialog(
isBackground: widget.isBackground,
onRequestChangeColor: _changeColor,
isToggledColor: _isToggledColor,
selectionStyle: _selectionStyle,
builder: (_) => QuillProvider.value(
value: context.requireQuillProvider,
child: FlutterQuillLocalizationsWidget(
child: ColorPickerDialog(
isBackground: widget.isBackground,
onRequestChangeColor: _changeColor,
isToggledColor: _isToggledColor,
selectionStyle: _selectionStyle,
),
),
),
);
}
Expand Down
21 changes: 14 additions & 7 deletions lib/src/widgets/toolbar/buttons/link_style.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,15 @@ import 'package:flutter/material.dart';

import '../../../extensions/quill_provider.dart';
import '../../../l10n/extensions/localizations.dart';
import '../../../l10n/widgets/localizations.dart';
import '../../../models/documents/attribute.dart';
import '../../../models/rules/insert.dart';
import '../../../models/structs/link_dialog_action.dart';
import '../../../models/themes/quill_dialog_theme.dart';
import '../../../models/themes/quill_icon_theme.dart';
import '../../controller.dart';
import '../../link.dart';
import '../../utils/provider.dart';
import '../base_toolbar.dart';

class QuillToolbarLinkStyleButton extends StatefulWidget {
Expand Down Expand Up @@ -164,7 +166,7 @@ class QuillToolbarLinkStyleButtonState
final value = await showDialog<_TextLink>(
context: context,
barrierColor: dialogBarrierColor,
builder: (ctx) {
builder: (_) {
final link = _getLinkAttributeValue();
final index = controller.selection.start;

Expand All @@ -179,12 +181,17 @@ class QuillToolbarLinkStyleButtonState

final len = controller.selection.end - index;
text ??= len == 0 ? '' : controller.document.getPlainText(index, len);
return _LinkDialog(
dialogTheme: options.dialogTheme,
link: link,
text: text,
linkRegExp: linkRegExp,
action: options.linkDialogAction,
return QuillProvider.value(
value: context.requireQuillProvider,
child: FlutterQuillLocalizationsWidget(
child: _LinkDialog(
dialogTheme: options.dialogTheme,
link: link,
text: text,
linkRegExp: linkRegExp,
action: options.linkDialogAction,
),
),
);
},
);
Expand Down
15 changes: 11 additions & 4 deletions lib/src/widgets/toolbar/buttons/search/search.dart
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,11 @@ import 'package:flutter/material.dart';

import '../../../../extensions/quill_provider.dart';
import '../../../../l10n/extensions/localizations.dart';
import '../../../../l10n/widgets/localizations.dart';
import '../../../../models/themes/quill_dialog_theme.dart';
import '../../../../models/themes/quill_icon_theme.dart';
import '../../../controller.dart';
import '../../../utils/provider.dart';
import '../../base_toolbar.dart';

class QuillToolbarSearchButton extends StatelessWidget {
Expand Down Expand Up @@ -140,10 +142,15 @@ class QuillToolbarSearchButton extends StatelessWidget {
await showDialog<String>(
barrierColor: _dialogBarrierColor(context),
context: context,
builder: (_) => QuillToolbarSearchDialog(
controller: controller,
dialogTheme: _dialogTheme(context),
text: '',
builder: (_) => QuillProvider.value(
value: context.requireQuillProvider,
child: FlutterQuillLocalizationsWidget(
child: QuillToolbarSearchDialog(
controller: controller,
dialogTheme: _dialogTheme(context),
text: '',
),
),
),
);
}
Expand Down

0 comments on commit d806340

Please sign in to comment.