All notable changes to this project will be documented in this file.
- fix: allow all correct URLs to be formatted by @orevial in singerdmx#2328
- fix(macos): Implement actions for ExpandSelectionToDocumentBoundaryIntent and ExpandSelectionToLineBreakIntent to use keyboard shortcuts, unrelated cleanup to the bug fix. by @EchoEllet in singerdmx#2279
- @orevial made their first contribution at singerdmx#2328
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.8.4...v10.8.5
- Fixes an unhandled exception in case
getClipboardFiles()
wasn't supported - Updates min version of internal dependency
quill_native_bridge
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.8.3...v10.8.4
This release is identical to v10.8.3-dev.0, mainly published to bump the minimum version of flutter_quill in flutter_quill_extensions and to publish quill-super-clipboard.
A new identical release 10.9.0
will be published soon with a release description.
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.8.2...v10.8.3
A non-pre-release version with this change will be published soon.
- feat: Use quill_native_bridge as default impl in DefaultClipboardService, fix related bugs in the extensions package by @EchoEllet in singerdmx#2230
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.8.2...v10.8.3-dev.0
- Fixed minor typo in Hungarian (hu) localization by @G-Greg in singerdmx#2307
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.8.1...v10.8.2
-
This release fixes the compilation issue when building the project with Flutter/Wasm target on the web. Also, update the conditional import check to avoid using
dart.library.html
:import 'web/quill_controller_web_stub.dart' if (dart.library.html) 'web/quill_controller_web_real.dart';
To fix critical bugs that prevent using the editor on Wasm.
Flutter/Wasm is stable as of Flutter 3.22 though it's likely that you might experience some issues when using this new target, if you experienced any issues related to Wasm support related to Flutter Quill, feel free to open an issue.
Issue #1889 is fixed by temporarily replacing the plugin flutter_keyboard_visibility with flutter_keyboard_visibility_temp_fork since
flutter_keyboard_visibility
depend ondart:html
. Also updated thecompileSdkVersion
to34
instead of31
as a workaround to Flutter #63533. -
Support for Hungarian (hu) localization was added by @G-Greg in singerdmx#2291.
-
dart_quill_delta has been moved to FlutterQuill/dart-quill-delta (outside of this repo) and they have separated version now.
- @G-Greg made their first contribution at singerdmx#2291
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.8.0...v10.8.1
Caution
This release can be breaking change for flutter_quill_extensions
users as it remove the built-in support for loading YouTube videos
If you're using flutter_quill_extensions then this release, can be a breaking change for you if you load videos in the editor and expect YouTube videos to be supported, youtube_player_flutter and flutter_inappwebview are no longer dependencies of the extensions package, which are used to support loading YouTube Iframe videos on non-web platforms, more details about the discussion and reasons in #2286 and #2284.
We have added an experimental property that gives you more flexibility and control about the implementation you want to use for loading videos.
Warning
It's likely to experience some common issues while implementing this feature, especially on desktop platforms as the support for flutter_inappwebview_windows and flutter_inappwebview_macos before 2 days. Some of the issues are in the Flutter Quill editor.
If you want loading YouTube videos to be a feature again with the latest version of Flutter Quill, you can use an existing plugin or package, or implement your own solution. For example, you might use youtube_video_player
or youtube_player_flutter
, which was previously used in flutter_quill_extensions
.
Here’s an example setup using youtube_player_flutter
:
flutter pub add youtube_player_flutter
Example widget configuration:
import 'package:flutter/material.dart';
import 'package:youtube_player_flutter/youtube_player_flutter.dart';
class YoutubeVideoPlayer extends StatefulWidget {
const YoutubeVideoPlayer({required this.videoUrl, super.key});
final String videoUrl;
@override
State<YoutubeVideoPlayer> createState() => _YoutubeVideoPlayerState();
}
class _YoutubeVideoPlayerState extends State<YoutubeVideoPlayer> {
late final YoutubePlayerController _youtubePlayerController;
@override
void initState() {
super.initState();
_youtubePlayerController = YoutubePlayerController(
initialVideoId: YoutubePlayer.convertUrlToId(widget.videoUrl) ??
(throw StateError('Expect a valid video URL')),
flags: const YoutubePlayerFlags(
autoPlay: true,
mute: true,
),
);
}
@override
Widget build(BuildContext context) {
return YoutubePlayer(
controller: _youtubePlayerController,
showVideoProgressIndicator: true,
);
}
@override
void dispose() {
_youtubePlayerController.dispose();
super.dispose();
}
}
Then, integrate it with QuillEditorVideoEmbedConfigurations
FlutterQuillEmbeds.editorBuilders(
videoEmbedConfigurations: QuillEditorVideoEmbedConfigurations(
customVideoBuilder: (videoUrl, readOnly) {
// Example: Check for YouTube Video URL and return your
// YouTube video widget here.
bool isYouTubeUrl(String videoUrl) {
try {
final uri = Uri.parse(videoUrl);
return uri.host == 'www.youtube.com' ||
uri.host == 'youtube.com' ||
uri.host == 'youtu.be' ||
uri.host == 'www.youtu.be';
} catch (_) {
return false;
}
}
if (isYouTubeUrl(videoUrl)) {
return YoutubeVideoPlayer(
videoUrl: videoUrl,
);
}
// Return null to fallback to the default logic
return null;
},
ignoreYouTubeSupport: true,
),
);
Note
This example illustrates a basic approach, additional adjustments might be necessary to meet your specific needs. YouTube video support is no longer included in this project. Keep in mind that customVideoBuilder
is experimental and can change without being considered as breaking change. More details in breaking changes section.
super_clipboard
will also no longer a dependency of flutter_quill_extensions
once PR #2230 is ready.
We're looking forward to your feedback.
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.7.7...v10.8.0
This version is nearly identical to 10.7.6
with a build failure bug fix in #2283 related to unmerged change in #2230
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.7.6...v10.7.7
- Code Comments Typo fixes by @Luismi74 in singerdmx#2267
- docs: add important note for contributors before introducing new features by @EchoEllet in singerdmx#2269
- docs(readme): add 'Breaking Changes' section by @EchoEllet in singerdmx#2275
- Fix: Resolved issue with broken IME composing rect in Windows desktop(re-implementation) by @agata in singerdmx#2282
- @Luismi74 made their first contribution in singerdmx#2267
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.7.5...v10.7.6
- fix(ci): add flutter pub get step for quill_native_bridge by @EchoEllet in singerdmx#2265
- revert: "Resolved issue with broken IME composing rect in Windows desktop" by @CatHood0 in singerdmx#2266
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.7.4...v10.7.5
- chore: remove pubspec_overrides.yaml and pubspec_overrides.yaml.disabled by @EchoEllet in singerdmx#2262
- ci: remove quill_native_bridge from automated publishing workflow by @EchoEllet in singerdmx#2263
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.7.3...v10.7.4
- Deprecate
FlutterQuillExtensions
influtter_quill_extensions
- Update the minimum version of
flutter_quill
andsuper_clipboard
influtter_quill_extensions
to avoid using deprecated code.
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.7.2...v10.7.3
- chore: deprecate flutter_quill/extensions.dart by @EchoEllet in singerdmx#2258
This is a minor release introduced to upload a new version of flutter_quill
and flutter_quill_extensions
to update the minimum required to avoid using deprecated code in flutter_quill_extensions
.
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.7.1...v10.7.2
- chore: deprecate markdown_quill export, ignore warnings by @EchoEllet in singerdmx#2256
- chore: deprecate spell checker service by @EchoEllet in singerdmx#2255
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.7.0...v10.7.1
- Chore: deprecate embed table feature by @CatHood0 in singerdmx#2254
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.6.6...v10.7.0
- Bug fix: Removing check not allowing spell check on web by @joeserhtf in singerdmx#2252
- @joeserhtf made their first contribution in singerdmx#2252
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.6.5...v10.6.6
- Refine IME composing range styling by applying underline as text style by @agata in singerdmx#2244
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.6.4...v10.6.5
- fix: the composing text did not show an underline during IME conversion by @agata in singerdmx#2242
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.6.3...v10.6.4
- Fix: Resolved issue with broken IME composing rect in Windows desktop by @agata in singerdmx#2239
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.6.2...v10.6.3
- Fix: QuillToolbarToggleStyleButton Switching failure by @AtlasAutocode in singerdmx#2234
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.6.1...v10.6.2
- Chore: update
flutter_quill_delta_from_html
to remove exception calls by @CatHood0 in singerdmx#2232
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.6.0...v10.6.1
- docs: cleanup the docs, remove outdated resources, general changes by @EchoEllet in singerdmx#2227
- Feat: customizable character and space shortcut events by @CatHood0 in singerdmx#2228
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.19...v10.6.0
- fix: properties other than 'style' for custom inline code styles (such as 'backgroundColor') were not being applied correctly by @agata in singerdmx#2226
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.18...v10.5.19
- feat(web): rich text paste from Clipboard using HTML by @EchoEllet in singerdmx#2009
- revert: disable rich text paste feature on web as a workaround by @EchoEllet in singerdmx#2221
- refactor: moved shortcuts and onKeyEvents to its own file by @CatHood0 in singerdmx#2223
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.17...v10.5.18
- feat(l10n): localize all untranslated.json by @erdnx in singerdmx#2217
- Fix: Block Attributes are not displayed if the editor is empty by @CatHood0 in singerdmx#2210
- @erdnx made their first contribution in singerdmx#2217
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.16...v10.5.17
- chore: remove device_info_plus and add quill_native_bridge to access platform specific APIs by @EchoEllet in singerdmx#2194
- Not show/update/hiden mangnifier when manifier config is disbale by @demoYang in singerdmx#2212
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.14...v10.5.16
Introduce quill_native_bridge
which is an internal plugin to use by flutter_quill
to access platform APIs.
For now, the only functionality it supports is to check whatever the iOS app is running on iOS simulator without requiring device_info_plus
as a dependency.
Note
quill_native_bridge
is a plugin for internal use and should not be used in production applications
as breaking changes can happen and can removed at any time.
For more details and discussion see #2194.
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.14...v10.5.15-dev.0
- chore(localization): add Greek language support by @DKalathas in singerdmx#2206
- @DKalathas made their first contribution in singerdmx#2206
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.13...v10.5.14
- Revert "Fix: Allow backspace at start of document to remove block style and header style by @agata in singerdmx#2201
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.12...v10.5.13
- Fix: Backspace remove block attributes at start by @AtlasAutocode in singerdmx#2200
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.11...v10.5.12
- Enhancement: Backspace handling at the start of blocks in delete rules by @agata in singerdmx#2199
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.10...v10.5.11
- Allow backspace at start of document to remove block style and header style by @agata in singerdmx#2198
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.9...v10.5.10
- chore: improve platform check by using constants and defaultTargetPlatform by @EchoEllet in singerdmx#2188
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.8...v10.5.9
- Feat: Add configuration option to always indent on TAB key press by @agata in singerdmx#2187
- @agata made their first contribution in singerdmx#2187
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.7...v10.5.8
- chore(example): downgrade Kotlin from 1.9.24 to 1.7.10 by @EchoEllet in singerdmx#2185
- style: refactor build leading function style, width, and padding parameters for custom node leading builder by @EchoEllet in singerdmx#2182
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.6...v10.5.7
- chore(deps): update super_clipboard to 0.8.20 in flutter_quill_extensions by @EchoEllet in singerdmx#2181
- Update quill_screen.dart, i chaged the logic for showing a lock when … by @rightpossible in singerdmx#2183
- @rightpossible made their first contribution in singerdmx#2183
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.5...v10.5.6
- Fix text selection handles when scroll mobile by @AtlasAutocode in singerdmx#2176
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.4...v10.5.5
- Add Thai (th) localization by @silkyland in singerdmx#2175
- @silkyland made their first contribution in singerdmx#2175
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.3...v10.5.4
- Fix: Assertion Failure in line.dart When Editing Text with Block-Level Attributes by @AtlasAutocode in singerdmx#2174
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.2...v10.5.3
- fix(toolbar): regard showDividers in simple toolbar by @realth000 in singerdmx#2172
- @realth000 made their first contribution in singerdmx#2172
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.1...v10.5.2
- fix drag selection extension (does not start at tap location if you are dragging quickly by @jezell in singerdmx#2170
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.5.0...v10.5.1
- Feat: custom leading builder by @CatHood0 in singerdmx#2146
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.4.9...v10.5.0
- fix floating cursor not disappearing after scroll end by @vishna in singerdmx#2163
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.4.8...v10.4.9
- Fix: direction has no opposite effect if the language is rtl by @CatHood0 in singerdmx#2154
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.4.7...v10.4.8
- Fix: Unable to scroll 2nd editor window by @AtlasAutocode in singerdmx#2152
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.4.6...v10.4.7
- Handle null child query by @jezell in singerdmx#2151
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.4.5...v10.4.6
- chore!: move spell checker to example by @EchoEllet in singerdmx#2145
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.4.4...v10.4.5
- fix custom recognizer builder not being passed to editabletextblock by @jezell in singerdmx#2143
- fix null reference exception when dragging selection on non scrollable selection by @jezell in singerdmx#2144
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.4.3...v10.4.4
- Chore: update simple_spell_checker package by @CatHood0 in singerdmx#2139
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.4.2...v10.4.3
- Revert "fix: Double click to select text sometimes doesn't work. (#2086)
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.4.1...v10.4.2
- Chore: improve Spell checker API to the example by @CatHood0 in singerdmx#2133
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.4.0...v10.4.1
- Copy TapAndPanGestureRecognizer from TextField by @demoYang in singerdmx#2128
- enhance stringToColor with a custom defined palette from
DefaultStyles
by @vishna in singerdmx#2095 - Feat: include spell checker for example app by @CatHood0 in singerdmx#2127
- @vishna made their first contribution in singerdmx#2095
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.3.3...v10.4.0
- Fix: Loss of style when backspace by @AtlasAutocode in singerdmx#2125
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.3.1...v10.3.2
- Chore: Move spellchecker service to extensions by @CatHood0 in singerdmx#2120
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.3.0...v10.3.1
- Feat: Spellchecker for Flutter Quill by @CatHood0 in singerdmx#2118
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.2.1...v10.3.0
- Fix: context menu is visible even when selection is collapsed by @CatHood0 in singerdmx#2116
- Fix: unsafe operation while getting overlayEntry in text_selection by @CatHood0 in singerdmx#2117
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.2.0...v10.2.1
- refactor!: restructure project into modular architecture for flutter_quill_extensions by @EchoEllet in singerdmx#2106
- Fix: Link selection and editing by @AtlasAutocode in singerdmx#2114
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.1.10...v10.2.0
- Fix(example): image_cropper outdated version by @CatHood0 in singerdmx#2100
- Using dart.library.js_interop instead of dart.library.html by @h1376h in singerdmx#2103
- @h1376h made their first contribution in singerdmx#2103
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.1.9...v10.1.10
- restore ability to pass in key to QuillEditor by @mtallenca in singerdmx#2093
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.1.8...v10.1.9
- Enhancement: Search within Embed objects by @AtlasAutocode in singerdmx#2090
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.1.7...v10.1.8
- Feature/allow shortcut override by @InstrinsicAutomations in singerdmx#2089
- @InstrinsicAutomations made their first contribution in singerdmx#2089
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.1.6...v10.1.7
- fixed #1295 Double click to select text sometimes doesn't work. by @li8607 in singerdmx#2086
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.1.5...v10.1.6
- ref: add
VerticalSpacing.zero
andHorizontalSpacing.zero
named constants by @adil192 in singerdmx#2083
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.1.4...v10.1.5
- Fix: collectStyles for lists and alignments by @AtlasAutocode in singerdmx#2082
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.1.3...v10.1.4
- Move Controller outside of configurations data class by @AtlasAutocode in singerdmx#2078
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.1.2...v10.1.3
- Fix Multiline paste with attributes and embeds by @AtlasAutocode in singerdmx#2074
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.1.1...v10.1.2
- Toolbar dividers fixes + Docs updates by @troyanskiy in singerdmx#2071
- @troyanskiy made their first contribution in singerdmx#2071
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.1.0...v10.1.1
- Feat: support for customize copy and cut Embeddables to Clipboard by @CatHood0 in singerdmx#2067
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.0.10...v10.1.0
- fix: Hide selection toolbar if editor loses focus by @huandu in singerdmx#2066
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.0.9...v10.0.10
- Fix: manual checking of directionality by @CatHood0 in singerdmx#2063
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.0.8...v10.0.9
- feat: add callback to handle performAction by @huandu in singerdmx#2061
- fix: Invalid selection when tapping placeholder text by @huandu in singerdmx#2062
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.0.7...v10.0.8
- Fix: RTL issues by @CatHood0 in singerdmx#2060
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.0.6...v10.0.7
- fix: textInputAction is not set when creating QuillRawEditorConfiguration by @huandu in singerdmx#2057
- @huandu made their first contribution in singerdmx#2057
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.0.5...v10.0.6
- Add tests for PreserveInlineStylesRule and fix link editing. Other minor fixes. by @AtlasAutocode in singerdmx#2058
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.0.4...v10.0.5
- Add ability to set up horizontal spacing for block style by @dimkanovikov in singerdmx#2051
- add catalan language by @spilioio in singerdmx#2054
- @dimkanovikov made their first contribution in singerdmx#2051
- @spilioio made their first contribution in singerdmx#2054
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.0.3...v10.0.4
- doc(Delta): more documentation about Delta by @CatHood0 in singerdmx#2042
- doc(attribute): added documentation about Attribute class and how create one by @CatHood0 in singerdmx#2048
- if magnifier removes toolbar, restore it when it is hidden by @mtallenca in singerdmx#2049
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.0.2...v10.0.3
- chore(scripts): migrate the scripts from sh to dart by @EchoEllet in singerdmx#2036
- Have the ability to create custom rules, closes #1162 by @Guillergood in singerdmx#2040
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.0.1...v10.0.2
This release is identical to 10.0.0 with a fix that addresses issue #2034 by requiring 10.0.0
as the minimum version for quill related dependencies.
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v10.0.0...v10.0.1
- refactor: restructure project into modular architecture for flutter_quill by @EchoEllet in singerdmx#2032
- chore: update GitHub PR template by @EchoEllet in singerdmx#2033
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.6.0...v10.0.0
- [feature] : quill add magnifier by @demoYang in singerdmx#2026
- @demoYang made their first contribution in singerdmx#2026
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.23...v9.6.0
- add untranslated Kurdish keys by @Xoshbin in singerdmx#2029
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.22...v9.5.23
- Fix outdated contributor guide link on PR template by @CatHood0 in singerdmx#2027
- Fix(rule): PreserveInlineStyleRule assume the type of the operation data and throw stacktrace by @CatHood0 in singerdmx#2028
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.21...v9.5.22
- Fix: Key actions not being handled by @AtlasAutocode in singerdmx#2025
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.20...v9.5.21
- Remove useless delta_x_test by @CatHood0 in singerdmx#2017
- Update flutter_quill_delta_from_html package on pubspec.yaml by @CatHood0 in singerdmx#2018
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.19...v9.5.20
- fixed #1835 Embed Reloads on Cmd Key Press by @li8607 in singerdmx#2013
- @li8607 made their first contribution in singerdmx#2013
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.18...v9.5.19
- Refactor: Moved core link button functions to link.dart by @Alspb in singerdmx#2008
- doc: more documentation about Rules by @CatHood0 in singerdmx#2014
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.17...v9.5.18
- Feat(config): added option to disable automatic list conversion by @CatHood0 in singerdmx#2011
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.16...v9.5.17
- chore: drop support for HTML, PDF, and Markdown converting functions by @EchoEllet in singerdmx#1997
- docs(readme): update the extensions package to document the Rich Text Paste feature on web by @EchoEllet in singerdmx#2001
- Fix(test): delta_x tests fail by wrong expected Delta for video embed by @CatHood0 in singerdmx#2010
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.15...v9.5.16
- Update delta_from_html to fix nested lists issues and more by @CatHood0 in singerdmx#2000
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.14...v9.5.15
- docs(readme): update 'Conversion to HTML' section to include more details by @EchoEllet in singerdmx#1996
- Update flutter_quill_delta_from_html on pubspec.yaml to fix current issues by @CatHood0 in singerdmx#1999
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.13...v9.5.14
- Added new default ConverterOptions configurations by @CatHood0 in singerdmx#1990
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.12...v9.5.13
- fix: Fixed passing textStyle to formula embed by @shubham030 in singerdmx#1989
- @shubham030 made their first contribution in singerdmx#1989
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.11...v9.5.12
- Update flutter_quill_delta_from_html in pubspec.yaml by @CatHood0 in singerdmx#1988
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.10...v9.5.11
- chore: remove dependency html converter by @ellet0 in singerdmx#1987
- Fix: LineHeight button to use MenuAnchor by @AtlasAutocode in singerdmx#1986
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.9...v9.5.10
- Update pubspec.yaml to remove html2md by @singerdmx in singerdmx#1985
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.8...v9.5.9
- fix(typo): fix typo ClipboardServiceProvider.instacne by @ellet0 in singerdmx#1983
- Feat: New way to get Delta from HTML inputs by @CatHood0 in singerdmx#1984
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.7...v9.5.8
- refactor: context menu function, add test code by @n7484443 in singerdmx#1979
- Fix: PreserveInlineStylesRule by @AtlasAutocode in singerdmx#1980
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.6...v9.5.7
- fix: common link is detected as a video link by @CatHood0 in singerdmx#1978
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.5...v9.5.6
- fix: context menu behavior in mouse, desktop env by @n7484443 in singerdmx#1976
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.4...v9.5.5
- Feat: Line height support by @CatHood0 in singerdmx#1972
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.3...v9.5.4
- Perf: Performance optimization by @Alspb in singerdmx#1964
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.2...v9.5.3
- Fix style settings by @AtlasAutocode in singerdmx#1962
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.1...v9.5.2
- feat(extensions): Youtube Video Player Support Mode by @ellet0 in singerdmx#1916
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.5.0...v9.5.1
- Partial support for table embed by @CatHood0 in singerdmx#1960
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.4.9...v9.5.0
- Upgrade photo_view to 0.15.0 for flutter_quill_extensions by @singerdmx in singerdmx#1958
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.4.8...v9.4.9
- Add support for html underline and videos by @CatHood0 in singerdmx#1955
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.4.7...v9.4.8
- fixed #1953 italic detection error by @CatHood0 in singerdmx#1954
- @CatHood0 made their first contribution in singerdmx#1954
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.4.6...v9.4.7
- fix: search dialog throw an exception due to missing FlutterQuillLocalizations.delegate in the editor by @ellet0 in singerdmx#1938
- fix(editor): implement editor shortcut action for home and end keys to fix exception about unimplemented ScrollToDocumentBoundaryIntent by @ellet0 in singerdmx#1937
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.4.5...v9.4.6
- fix: color picker hex unfocus on web by @geronimol in singerdmx#1934
- @geronimol made their first contribution in singerdmx#1934
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.4.4...v9.4.5
- fix: Enabled link regex to be overridden by @JoepHeijnen in singerdmx#1931
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.4.3...v9.4.4
- Fix: setState() called after dispose(): QuillToolbarClipboardButtonState #1895 by @windows7lake in singerdmx#1926
- @windows7lake made their first contribution in singerdmx#1926
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.4.2...v9.4.3
- Respect autofocus, closes #1923 by @Guillergood in singerdmx#1924
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.4.1...v9.4.2
- replace base64 regex string by @salba360496 in singerdmx#1919
- @salba360496 made their first contribution in singerdmx#1919
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.4.0...v9.4.1
This release can be used without changing anything, although it can break the behavior a little, we provided a way to use the old behavior in 9.3.x
-
Thanks to @Alspb, the search bar/dialog has been reworked for improved UI that fits Material 3 look and feel, the search happens on the fly, and other minor changes, if you want the old search bar, you can restore it with one line if you're using
QuillSimpleToolbar
:QuillToolbar.simple( configurations: QuillSimpleToolbarConfigurations( searchButtonType: SearchButtonType.legacy, ), )
While the changes are mostly to the
QuillToolbarSearchDialog
and it seems this should besearchDialogType
, we provided the old button with the old dialog in case we update the button in the future.If you're using
QuillToolbarSearchButton
in a custom Toolbar, you don't need anything to get the new button. if you want the old button, use theQuillToolbarLegacySearchButton
widgetConsider using the improved button with the improved dialog as the legacy button might removed in future releases (for now, it's not deprecated)
For the detailed changes, see #1904
-
Korean translations by @leegh519 in singerdmx#1911
-
The usage of
super_clipboard
plugin influtter_quill
has been moved to theflutter_quill_extensions
package, this will restore the old behavior in8.x.x
though it will break theonImagePaste
,onGifPaste
and rich text pasting from HTML or Markdown, most of those features are available insuper_clipboard
plugin exceptonImagePaste
which was available as we were using pasteboard, Unfortunately, it's no longer supported on recent versions of Flutter, and some functionalities such as an image from Clipboard and Html paste are not supported on some platforms such as Android, your project will continue to work, calls ofonImagePaste
andonGifPaste
will be ignored unless you include flutter_quill_extensions package in your project and call:FlutterQuillExtensions.useSuperClipboardPlugin();
Before using any
flutter_quill
widgets, this will restore the old behavior in9.x.x
We initially wanted to publish
flutter_quill_super_clipboard
to allow:- Using
super_clipboard
withoutflutter_quill_extensions
packages and plugins - Using
flutter_quill_extensions
with optionalsuper_clipboard
To simplify the usage, we moved it to
flutter_quill_extensions
, let us know if you want any of the use cases above.Overall
super_clipboard
is a Comprehensive clipboard plugin with a lot of features, the only thing that developers didn't want is Rust installation even though it's automated. - Using
The main goal of ClipboardService
is to make super_clipboard
optional, you can use your own implementation, and create a class that implements ClipboardService
, which you can get by:
// ignore: implementation_imports
import 'package:flutter_quill/src/services/clipboard/clipboard_service.dart';
Then you can call:
// ignore: implementation_imports
import 'package:flutter_quill/src/services/clipboard/clipboard_service_provider.dart';
ClipboardServiceProvider.setInstance(YourClipboardService());
The interface could change at any time and will be updated internally for flutter_quill
and flutter_quill_extensions
, we didn't export those two classes by default to avoid breaking changes in case you use them as we might change them in the future.
If you use the above imports, you might get breaking changes in non-breaking change releases.
-
Subscript and Superscript should now work for all languages and characters
The previous implementation required the Apple 'SF-Pro-Display-Regular.otf' font which is only licensed/permitted for use on Apple devices. We have removed the Apple font from the example
-
Allow pasting Markdown and HTML file content from the system to the editor
Before
9.4.x
if you try to copy an HTML or Markdown file, and paste it into the editor, you will get the file name in the editor Copying an HTML file, or HTML content from apps and websites is different than copying plain text.This is why this change requires
super_clipboard
implementation as this is platform-dependent:FlutterQuillExtensions.useSuperClipboardPlugin();
as mentioned above.
The following example for copying a Markdown file:
Markdown File Content
**Note**: This package supports converting from HTML back to Quill delta but it's experimental and used internally when pasting HTML content from the clipboard to the Quill Editor You have two options: 1. Using [quill_html_converter](./quill_html_converter/) to convert to HTML, the package can convert the Quill delta to HTML well (it uses [vsc_quill_delta_to_html](https://pub.dev/packages/vsc_quill_delta_to_html)), it is just a handy extension to do it more quickly 1. Another option is to use [vsc_quill_delta_to_html](https://pub.dev/packages/vsc_quill_delta_to_html) to convert your document to HTML. This package has full support for all Quill operations—including images, videos, formulas, tables, and mentions. Conversion can be performed in vanilla Dart (i.e., server-side or CLI) or in Flutter. It is a complete Dart part of the popular and mature [quill-delta-to-html](https://www.npmjs.com/package/quill-delta-to-html) Typescript/Javascript package. this package doesn't convert the HTML back to Quill Delta as far as we know
Markdown, and HTML converting from and to Delta are currently far from perfect, the current implementation could improved a lot however it will likely not work like expected, due to differences between HTML and Delta, see this comment for more info.
For more details see #1915
Using or converting to HTML or Markdown is highly experimental and shouldn't be used for production applications.
We use it internally as it is more suitable for our specific use case., copying content from external websites and pasting it into the editor previously breaks the styles, while the current implementation is not ready, it provides a better user experience and doesn't have many downsides.
Feel free to report any bugs or feature requests at Issues or drop any suggestions and questions at Discussions
- @leegh519 made their first contribution in singerdmx#1911
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.3.21...v9.4.0
- fix: assertion failure for swipe typing and undo on Android by @crasowas in singerdmx#1898
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.3.20...v9.3.21
- Fix: Issue 1887 by @AtlasAutocode in singerdmx#1892
- fix: toolbar style change will be invalid when inputting more than 2 characters at a time by @crasowas in singerdmx#1890
- @crasowas made their first contribution in singerdmx#1890
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.3.19...v9.3.20
- Fix reported issues by @AtlasAutocode in singerdmx#1886
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.3.18...v9.3.19
- Fix: Undo/redo cursor position fixed by @Alspb in singerdmx#1885
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.3.17...v9.3.18
- Update super_clipboard plugin to 0.8.15 to address #1882
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.3.16...v9.3.17
- Update
lint
dev package to 4.0.0 - Require at least version 0.8.13 of the plugin
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.3.15...v9.3.16
- Ci/automate updating the files by @ellet0 in singerdmx#1879
- Updating outdated README.md and adding a few guidelines for CONTRIBUTING.md
Full Changelog: https://github.com/singerdmx/flutter-quill/compare/v9.3.14...v9.3.15
- Chore/use original color picker package in #1877
- fix:
readOnlyMouseCursor
losing in construction function - Fix block multi-line selection style
- Add
readOnlyMouseCursor
to config mouse cursor type
- Fix typo in QuillHtmlConverter
- Fix re-create checkbox
- Support clipboard actions from the toolbar
- fix: MD Parsing for multi space
- fix: FontFamily and FontSize toolbars track the text selected in the editor
- feat: Add checkBoxReadOnly property which can override readOnly for checkbox
- fix: removed misleading parameters
- fix: added missed translations for ru, es, de
- added translations for Nepali Locale('ne', 'NP')
- Fix for keyboard jumping when switching focus from a TextField
- Toolbar button styling to reflect cursor position when running on desktops with keyboard to move care
- Add SK and update CS locales #1796
- Fixes:
- Update the minimum version for the packages to support
device_info_plus
version 10.0.0 #1783 - Update the minimum version for
youtube_player_flutter
to new major version 9.0.0 in theflutter_quill_extensions
- fix: multiline styling stuck/not working properly #1782
- Update
quill_html_converter
versions
- Fix dispose of text painter #1774
- Require Flutter 3.19.0 as minimum version
- Breaking change:
Document.fromHtml(html)
is now returnsDocument
instead ofDelta
, useDeltaX.fromHtml
to returnDelta
- Update old deprecated api from Flutter 3.19
- Scribble scroll fix by @mtallenca in singerdmx#1745
- feat: move cursor after inserting video/image
- Apple pencil
- Fix crash with inserting text from contextMenuButtonItems
- Fix incorrect behaviour of context menu
- fix: selection handles behaviour and unnessesary style assert
- Update quill_fr.arb
- Fix safari clipboard bug
- Add the option to disable clipboard functionality
- Fix a bug where it has problems with pasting text into the editor when the clipboard has styled text
- Update example screenshots
- Refactor
Container
toQuillContainer
with backward compatibility - A workaround fix in history feature
- Refactor the type of
Delta().toJson()
to be more clear type
- feat: Export Container node as QuillContainer
- fix web cursor position / height (don't use iOS logic)
- Added Swedish translation
- fix selection.affinity always downstream after updateEditingValue
- Bumb version of
super_clipboard
- Bumb version of
super_clipboard
- Use fixed version of intl
- remove unncessary column in Flutter quill video embed block
- Fix bug #1627
- Fix bug with font size button
- Added ro RO translations
- 📖 Update zh, zh_CN translations
- Require minimum version
6.0.0
offlutter_keyboard_visibility
to fix some build issues with Android Gradle Plugin 8.2.0 - Add on image clicked in
flutter_quill_extensions
callback - Deprecate
globalIconSize
andglobalIconButtonFactor
, useiconSize
andiconButtonFactor
instead - Fix the
QuillToolbarSelectAlignmentButtons
- Require
super_clipboard
minimum version0.8.1
to fix some bug with Linux build failure
- Fix bug #1636
- Fix a where you paste styled content (HTML) it always insert a new line at first even if the document is empty
- Fix the font size button and migrate to
MenuAnchor
- The
defaultDisplayText
is no longer required in the font size and header dropdown buttons - Add pdf converter in a new package (
quill_pdf_converter
)
- Fix the simple toolbar by add properties of
IconButton
and fix some buttons
- Fix the history buttons
- Bug fixes in the simple toolbar buttons
- Breaking Change: in the
QuillSimpleToolbar
Fix theQuillIconTheme
by replacing all the properties with two properties of typeButtonStyle
, useIconButton.styleFrom()
- Fix bug in QuillToolbarSelectAlignmentButtons
- You can now use most of the buttons without internal provider
- Feature: #1611
- Export missing widgets
- Flutter Quill Extensions:
- Fix file image support for web image emebed builder
- Remove unused properties in the
QuillToolbarSelectHeaderStyleDropdownButton
- Fix the
QuillSimpleToolbar
whenuseMaterial3
is false, please upgrade to the latest version of flutter for better support
- Export
QuillSingleChildScrollView
- Add the new translations for ru, uk arb files by #1575
- Add a new dropdown button by #1575
- Update the default style values by #1575
- Fix bug #1562
- Fix the second bug of #1480
- Add configurations for the new dropdown
QuillToolbarSelectHeaderStyleButton
, you can use the orignal one or this - Fix the issue when enter is pressed, all font settings is lost
- Breaking change Remove the spacer widget, removed the controller option for each button
- Add
toolbarRunSpacing
property to the simple toolbar
- Fix default icon size
- This version is quite stable but it's not how we wanted to be, because the lack of time and there are not too many maintainers active, we decided to publish it, we might make a new breaking changes verion
- Flutter Quill Extensions:
- Update
QuillImageUtilities
and fixining some bugs
- Update
- Test new GitHub workflows
- Fix a bug of the improved pasting HTML contents contents into the editor
- Improves the new logic of pasting HTML contents into the Editor
- Update
README.md
and the doc - Dispose the
QuillToolbarSelectHeaderStyleButton
state listener indispose
- Upgrade the font family button to material 3
- Rework the font family and font size functionalities to change the font once and type all over the editor
- Better support for pasting HTML contents from external websites to the editor
- The experimental support of converting the HTML from
quill_html_converter
is now built-in in theflutter_quill
and removed from there (Breaking change forquill_html_converter
)
- Fix a bug in chaning the background/font color of ol/ul list
- Flutter Quill Extensions:
- Fix link bug in the video url
- Fix patterns
- Move the
child
fromQuillToolbarConfigurations
intoQuillToolbar
directly - Bug fixes
- Add the ability to change the background and font color of the ol/ul elements dots and numbers
- Flutter Quill Extensions:
- Breaking Change: The
imageProviderBuilder
is now providing the context and image url
- Breaking Change: The
- The
QuillToolbar
is now accepting onlychild
with no configurations so you can customize everything you wants, theQuillToolbar.simple()
orQuillSimpleToolbar
implements a simple toolbar that is based onQuillToolbar
, you are free to use it but it just an example and not standard - Flutter Quill Extensions:
- Improve the camera button
- The options parameter in all of the buttons is no longer required which can be useful to create custom toolbar with minimal efforts
- Toolbar buttons fixes in both
flutter_quill
andflutter_quill_extensions
- The
QuillProvider
has been dropped and no longer used, the providers will be used only internally from now on and we will not using them as much as possible
- Breaking Changes:
- Rename
QuillToolbar
toQuillSimpleToolbar
- Rename
QuillBaseToolbar
toQuillToolbar
- Replace
pasteboard
withrich_cliboard
- Rename
- Fix a bug in the example when inserting an image from url
- Flutter Quill Extensions:
- Add support for copying the image to the system cliboard
- An attemp to fix CI automated publishing
- An attemp to fix CI automated publishing
- Major Breaking change: The
QuillProvider
is now optional, thecontroller
parameter has been moved to theQuillEditor
andQuillToolbar
once again. - Flutter Quill Extensions;
- Breaking Change: Completly change the way how the source code structured to more basic and simple way, organize folders and file names, if you use the library
from
flutter_quill_extensions.dart
then there is nothing you need to do, but if you are using any other import then you need to re-imports embed, this won't affect how quill js work - Improvemenets to the image embed
- Add support for
margin
for web - Add untranslated strings to the
quill_en.arb
- Breaking Change: Completly change the way how the source code structured to more basic and simple way, organize folders and file names, if you use the library
from
- The default value of
keyboardAppearance
for the iOS will be the one from the App/System theme mode instead of always using theBrightness.light
- Fix typos in
README.md
- Update the minimum flutter version to
3.16.0
- Restore use of alternative QuillToolbarLinkStyleButton2 widget
- Temporary revert style bug fix
- Breaking Change Support Flutter 3.16, please upgrade to the latest stable version of flutter to use this update
- Breaking Change: Remove Deprecated Fields
- Breaking Change: Extract the shared things between
QuillToolbarConfigurations
andQuillBaseToolbarConfigurations
- Breaking Change: You no longer need to use
QuillToolbarProvider
when using custom toolbar buttons, the example has been updated - Bug fixes
- Now when opening dialogs by
QuillToolbar
you will not get an exception when you don't useFlutterQuillLocalizations.delegate
in yourWidgetsApp
,MaterialApp
, orCupertinoApp
. The fix is for theQuillToolbarSearchButton
,QuillToolbarLinkStyleButton
, andQuillToolbarColorButton
buttons
- The
mobileWidth
,mobileHeight
,mobileMargin
, andmobileAlignment
is now deprecated influtter_quill
, they are now defined influtter_quill_extensions
- Deprecate
replaceStyleStringWithSize
function which is instring.dart
- Deprecate
alignment
, andmargin
as they don't conform to official Quill JS
- Update doc
- Update
README.md
andCHANGELOG.md
- Fix typos
- Use
immutable
when possible - Update
.pubignore
- Updated
README.md
. - Feature: Added the ability to include a custom callback when the
QuillToolbarColorButton
is pressed. - The
QuillToolbar
now implementsPreferredSizeWidget
, enabling usage in the AppBar, similar toQuillBaseToolbar
.
- Updated
README.md
.
- Migrated to
flutter_localizations
for translations. - Fixed: Translated all previously untranslated localizations.
- Fixed: Added translations for missing items.
- Fixed: Introduced default Chinese fallback translation.
- Removed: Unused parameters
items
inQuillToolbarFontFamilyButtonOptions
andQuillToolbarFontSizeButtonOptions
. - Updated: Documentation.
- Updated
.pubignore
to ignore unnecessary files and folders.
- Updated
CHANGELOG.md
.
- Breaking change: Configuration for
QuillRawEditor
has been moved to a separate class. Additionally,readOnly
has been renamed toisReadOnly
. If usingQuillEditor
, no action is required. - Introduced the ability for developers to override
TextInputAction
in bothQuillRawEditor
andQuillEditor
. - Enabled using
QuillRawEditor
withoutQuillEditorProvider
. - Bug fixes.
- Added image cropping implementation in the example.
- Added
copyWith
inOptionalSize
class.
- Breaking change: Updated
QuillCustomButton
to useQuillCustomButtonOptions
. Moved all properties fromQuillCustomButton
toQuillCustomButtonOptions
, replacingiconData
withicon
widget for increased customization. - Breaking change:
customButtons
inQuillToolbarConfigurations
is now of typeList<QuillToolbarCustomButtonOptions>
. - Bug fixes following the
8.0.0
update. - Updated
README.md
. - Improved platform checking.
- Added
iconButtonFactor
property toQuillToolbarBaseButtonOptions
for customizing button size relative to its icon size (defaults tokIconButtonFactor
, consistent with previous releases).
- Organized
QuillRawEditor
code.
- Added
builder
property inQuillEditorConfigurations
.
- Adhered to Flutter best practices.
- Fixed auto-focus bug.
- Updated
README.md
.
- Moved
flutter_quill_test
to a separate package: flutter_quill_test.
- Updated
README.md
.
- Added the option to add configurations for
flutter_quill_extensions
usingextraConfigurations
.
- Followed Dart best practices by using
lints
and removedpedantic
andplatform
since they are not used. - Fixed text direction bug.
- Updated
README.md
.
- Secret for automated publishing to pub.dev.
- Fixed automated publishing to pub.dev.
- Fixed automated publishing to pub.dev.
- Automated publishing to pub.dev.
- Fixed compatibility with
integration_test
by downgrading the minimum version of the platform package to 3.1.0.
- Reversed background/font color toolbar button icons.
- Reversed background/font color toolbar button tooltips.
- Moved images to screenshots instead of
README.md
.
- Fixed a bug related to the regexp of the insert link dialog.
- Required Dart 3 as the minimum version.
- Code cleanup.
- Added a spacer widget between each button in the
QuillToolbar
.
- Fixed null error in line.dart #1487(https://github.com/singerdmx/flutter*quill/issues/1487).
- Fixed a word typo of
mirgration
tomigration
in the readme & migration document. - Updated migration guide.
- Removed property
enableUnfocusOnTapOutside
inQuillEditor
configurations and addedisOnTapOutsideEnabled
instead. - Added a new callback called
onTapOutside
in theQuillEditorConfigurations
to perform actions when tapping outside the editor. - Fixed a bug that caused the web platform to not unfocus the editor when tapping outside of it. To override this, please pass a value to the
onTapOutside
callback. - Removed the old property of
iconTheme
. Instead, passiconTheme
in the button options; you will find thebase
property inside it withiconTheme
.
- If you have migrated recently, don't be alarmed by this update; it adds documentation, a migration guide, and marks the version as a more stable release. Although there are breaking changes (as reported by some developers), the major version was not changed due to time constraints during development. A single property was also renamed from
code
tocodeBlock
in theelements
of the newQuillEditorConfigurations
class. - Updated the README for better readability.
- Removed line numbers from code blocks by default. You can still enable this feature thanks to the new configurations in the
QuillEditor
. Find theelementOptions
property and enableenableLineNumbers
.
- Fixed issues and utilized the new parameters.
- No longer need to use
MaterialApp
for most toolbar button child builders. - Compatibility with fresh_quill_extensions, a temporary alternative to flutter_quill_extensions.
- Updated most of the documentation in
README.md
.
- Breaking change:
QuillToolbar.basic()
can be accessed directly fromQuillToolbar()
, and the oldQuillToolbar
can be accessed fromQuillBaseToolbar
. - Refactored Quill editor and toolbar configurations into a single class each.
- After changing checkbox list values, the controller will not request keyboard focus by default.
- Moved toolbar and editor configurations directly into the widget but still use inherited widgets internally.
- Fixes to some code after the refactoring.
- Buttons Improvemenets
- Refactor all the button configurations that used in
QuillToolbar.basic()
but there are still few lefts - Breaking change: Remove some configurations from the QuillToolbar and move them to the new
QuillProvider
, please notice this is a development version and this might be changed in the next few days, the stable release will be ready in less than 3 weeks - Update
flutter_quill_extensions
and it will be published into pub.dev soon. - Allow you to customize the search dialog by custom callback with child builder
- Important note: this is not test release yet, it works but need more test and changes and breaking changes, we don't have development version and it will help us if you try the latest version and report the issues in Github but if you want a stable version please use
7.4.16
. this refactoring process will not take long and should be done less than three weeks with the testing. - We managed to refactor most of the buttons configurations and customizations in the
QuillProvider
, only three lefts then will start on refactoring the toolbar configurations - Code improvemenets
- Breaking change: We have mirgrated more buttons in the toolbar configurations, you can do change them in the
QuillProvider
- Important bug fixes
- Bug fixes
- Breaking change: To customize the buttons in the toolbar, you can do that in the
QuillProvider
- Breaking change: The widgets
QuillEditor
andQuillToolbar
are no longer have controller parameter, instead you need to make sure in the widget tree you have wrapped them withQuillProvider
widget and provide the controller and the require configurations
- Update documentation and README.md
- Custom style attrbuites for platforms other than mobile (alignment, margin, width, height)
- Bug fixes and other improvemenets
- Improve performance by reducing the number of widgets rebuilt by listening to media query for only the needed things, for example instead of using
MediaQuery.of(context).size
, now we are usingMediaQuery.sizeOf(context)
- Add MediaButton for picking the images only since the video one is not ready
- A new feature which allows customizing the text selection in quill editor which is useful for custom theme design system for custom app widget
- Fixed tab editing when in readOnly mode.
- Update the minimum version of device_info_plus to 9.1.0.
- Add sw locale.
- Update translations.
- Style recognition fixes.
- Upgrade dependencies.
- Add Vietnamese and German translations.
- Fix null error in Container.insert ##1392.
- Fix extra padding on checklists ##1131.
- Fixed a space input error on iPad.
- Fix bug with keepStyleOnNewLine for link.
- Fix toolbar dividers condition.
- Support Flutter version 3.13.0.
- Updated Dependencies conflicting.
- Added builder for custom button in _LinkDialog.
- Added case sensitive and whole word search parameters.
- Added wrap around.
- Moved search dialog to the bottom in order not to override the editor and the text found.
- Other minor search dialog enhancements.
- Add default attributes to basic factory.
- Feat/link regexp.
- Fix paste block text in words apply same style.
- Fix paste text mess up style.
- Add support copy/cut block text.
- Allow for custom context menu.
- Add flutter_quill.delta library which only exposes Delta datatype.
- Fix errors when the editor is used in the
screenshot
package.
- Fix around image can't delete line break.
- Add support for copy/cut select image and text together.
- Add affinity for localPosition.
- LINE._getPlainText queryChild inclusive=false.
- Add toPlainText method to
EmbedBuilder
.
- Add custom button widget in toolbar.
- Fix language code of Japan.
- Style custom toolbar buttons like builtins.
- Always use text cursor for editor on desktop.
- Fixed keepStyleOnNewLine.
- Get pixel ratio from view.
- Prevent operations on stale editor state.
- Add support for android keyboard content insertion.
- Enhance color picker, enter hex color and color palette option.
- Checkboxes, bullet points, and number points are now scaled based on the default paragraph font size.
- Pass linestyle to embedded block.
- Fix Rtl leading alignment problem.
- Support flutter latest version.
- Updates
device_info_plus
to version 9.0.0 to benefit from AGP 8 (see changelog##900).
- Fixed subscript key from 'sup' to 'sub'.
- Fixed a bug introduced in 7.1.7 where each section in
QuillToolbar
was displayed on its own line.
- Add indents change for multiline selection.
- Add custom recognizer.
- Add superscript and subscript styles.
- Add inserting indents for lines of list if text is selected.
- Image embedding tweaks
- Add MediaButton which is intened to superseed the ImageButton and VideoButton. Only image selection is working.
- Implement image insert for web (image as base64)
- Editor tweaks PR from bambinoua(https://github.com/bambinoua).
- Shortcuts now working in Mac OS
- QuillDialogTheme is extended with new properties buttonStyle, linkDialogConstraints, imageDialogConstraints, isWrappable, runSpacing,
- Added LinkStyleButton2 with new LinkStyleDialog (similar to Quill implementation
- Conditinally use Row or Wrap for dialog's children.
- Update minimum Dart SDK version to 2.17.0 to use enum extensions.
- Use merging shortcuts and actions correclty (if the key combination is the same)
- Dropdown tweaks
- Add itemHeight, itemPadding, defaultItemColor for customization of dropdown items.
- Remove alignment property as useless.
- Fix bugs with max width when width property is null.
- Toolbar tweaks.
- Implement tooltips for embed CameraButton, VideoButton, FormulaButton, ImageButton.
- Extends customization for SelectAlignmentButton, QuillFontFamilyButton, QuillFontSizeButton adding padding, text style, alignment, width.
- Add renderFontFamilies to QuillFontFamilyButton to show font faces in dropdown.
- Add AxisDivider and its named constructors for for use in parent project.
- Export ToolbarButtons enum to allow specify tooltips for SelectAlignmentButton.
- Export QuillFontFamilyButton, SearchButton as they were not exported before.
- Deprecate items property in QuillFontFamilyButton, QuillFontSizeButton as the it can be built usinr rawItemsMap.
- Make onSelection QuillFontFamilyButton, QuillFontSizeButton omittable as no need to execute callback outside if controller is passed to widget.
Now the package is more friendly for web projects.
- Add enableUnfocusOnTapOutside field to RawEditor and Editor widgets.
- Add tooltips for toolbar buttons.
- Fix inserting tab character in lists.
- Fix ios cursor bug when word.length==1.
- Fix non scrollable editor exception, when tapped under content.
- customLinkPrefixes parameter * makes possible to open links with custom protoco.
- Fix ordered list numeration with several lists in document.
- Use const constructor for EmbedBuilder.
- Fix IME position bug with scroller.
- Add TextFieldTapRegion for contextMenu.
- Fix line style loss on new line from non string.
- Fix IME position bug for Mac and Windows.
- Unfocus when tap outside editor. fix the bug that cant refocus in afterButtonPressed after click ToggleStyleButton on Mac.
- Have text selection span full line height for uneven sized text.
- Fix ordered list numeration for lists with more than one level of list.
- Allow widgets to override widget span properties.
- Update i18n_extension dependency to version 8.0.0.
- Breaking change: Tuples are no longer used. They have been replaced with a number of data classes.
- Increased compatibility with Flutter widget tests.
- Update dependencies (collection: 1.17.0, flutter_keyboard_visibility: 5.4.0, quiver: 3.2.1, tuple: 2.0.1, url_launcher: 6.1.9, characters: 1.2.1, i18n_extension: 7.0.0, device_info_plus: 8.1.0)
- Replace
buildToolbar
withcontextMenuBuilder
.
- Control the detect word boundary behaviour.
- Use
axis
to make the toolbar vertical. - Use
toolbarIconCrossAlignment
to align the toolbar icons on the cross axis. - Breaking change:
QuillToolbar
's parametertoolbarHeight
was renamed totoolbarSize
.
- Ability to add custom shortcuts.
- Update clipboard status prior to showing selected text overlay.
- Fixed handling of mac intents.
- Added
unknownEmbedBuilder
to QuillEditor. - Fix error style when input chinese japanese or korean.
- Add color property to the basic factory function.
- Support Flutter 3.7.
- Fix: nextLine getter null where no assertion.
- Revert "Align numerical and bullet lists along with text content".
- Align numerical and bullet lists along with text content.
- Apply i18n for default font dropdown option labels corresponding to 'Clear'.
- Remove iOS hack for delaying focus calculation.
- Delay focus calculation for iOS.
- Bump keyboard show up wait to 1 sec.
- Recalculate focus when showing keyboard.
- Add czech localizations.
- Upgrade i18n_extension to 6.0.0.
- Fix formatting exception.
- Add double quotes validation.
- Revert "fix order list numbering (##988)".
- Add typing shortcuts.
- Fix order list numbering.
- Add keyboard shortcuts for editor actions.
- Upgrade device info plus to ^7.0.0.
- Don't throw showAutocorrectionPromptRect not implemented. The function is called with every keystroke as a user is typing.
- Fixes null pointer when setting documents.
- Make QuillController.document mutable.
- Allow disabling of selection toolbar.
- Revert 6.0.6.
- Fix wrong custom embed key.
- Fixes toolbar buttons stealing focus from editor.
- Bug fix for Type 'Uint8List' not found.
- Add ability to paste images.
- Address Dart Analysis issues.
- Changed translation country code (zh_HK -> zh_hk) to lower case, which is required for i18n_extension used in flutter_quill.
- Add localization in example's main to demonstrate translation.
- Issue Windows selection's copy / paste tool bar not shown ##861: add selection's copy / paste toolbar, escape to hide toolbar, mouse right click to show toolbar, ctrl-Y / ctrl-Z to undo / redo.
- Image and video displayed in Windows platform caused screen flickering while selecting text, a sample_data_nomedia.json asset is added for Desktop to demonstrate the added features.
- Known issue: keyboard action sometimes causes exception mentioned in Flutter's issue ##106475 (Windows Keyboard shortcuts stop working after modifier key repeat flutter/flutter##106475).
- Know issue: user needs to click the editor to get focus before toolbar is able to display.
- Removed embed (image, video & formula) blocks from the package to reduce app size.
These blocks have been moved to the package flutter_quill_extensions
, migrate by filling the embedBuilders
and embedButtons
parameters as follows:
import 'package:flutter_quill_extensions/flutter_quill_extensions.dart';
QuillEditor.basic(
controller: controller,
embedBuilders: FlutterQuillEmbeds.builders(),
);
QuillToolbar.basic(
controller: controller,
embedButtons: FlutterQuillEmbeds.buttons(),
);
- Upgrade i18n_extension.
- Update German Translation.
- Added Formula Button (for maths support).
- Add more font family.
- Enable search when text is not empty.
- Added search function.
- Remove default small color.
- Don't wrap the QuillEditor's child in the EditorTextSelectionGestureDetector if selection is disabled.
- Added option to modify SelectHeaderStyleButton options.
- Added option to click again on h1, h2, h3 button to go back to normal.
- Remove tooltip for LinkStyleButton.
- Make link match regex case insensitive.
- Add locale to QuillEditor.basic.
- Fix keyboard pops up when resizing the image.
- Upgrade youtube_player_flutter_quill to 8.2.2.
- Upgrade youtube_player_flutter_quill to 8.2.1.
- Flutter Quill Doesn't Work On iOS 16 or Xcode 14 Betas (Stored properties cannot be marked potentially unavailable with '@available').
- Fix Web Unsupported operation: Platform._operatingSystem error.
- Rename QuillCustomIcon to QuillCustomButton.
- Support font family selection.
- Update README.
- Added CustomBlockEmbed and customElementsEmbedBuilder.
- Upgrade device_info_plus to 4.0.0.
- Added onVideoInit callback for video documents.
- Update dependencies.
- Keep cursor position on checkbox tap.
- Fix static analysis errors.
- Flutter 3.0.0 support.
- Ignore color:inherit and convert double to int for level.
- Add clear option to font size dropdown.
- Refactor font size dropdown.
- Ensure selectionOverlay is available for showToolbar.
- Using properly iconTheme colors.
- Update font size dropdown.
- Convert FontSize to a Map to allow for named Font Size.
- Update quill_dropdown_button.dart.
- Add Font Size dropdown to the toolbar.
- New borderRadius for iconTheme.
- Fix selection handles show/hide after paste, backspace, copy.
- Add full support for hardware keyboards (Chromebook, Android tablets, etc) that don't alter screen UI.
- Added textSelectionControls field in QuillEditor.
- Added Node to linkActionPickerDelegate.
- Add Persian(fa) language.
- Fix cut selection error in multi-node line.
- Fix vertical caret position bug.
- Request keyboard focus when no child is found.
- Fix blank lines do not display when **web*renderer=html.
- Refactor getPlainText (better handling of blank lines and lines with multiple markups.
- Bug fix for copying text with new lines.
- Fixed casting null to Tuple2 when link dialog is dismissed without any input (e.g. barrier dismissed).
- Bug fix for text direction rtl.
- Support text direction rtl.
- Clear toggled style on selection change.
- Fix copy/cut/paste/selectAll not working.
- Upgrade for Flutter 2.10.
- Added Indonesian translation.
- Fix for undoing a modification ending with an indented line.
- iOS: Save image whose filename does not end with image file extension.
- Added Urdu translation.
- Fix for clicking on the Link button without any text on a new line crashes.
- Apply locale to QuillEditor(contents).
- Fix image pasting.
- Hiding dialog after selecting action for image.
- Update ImageResizer for Android.
- Copy image with its style.
- Support resizing image.
- Image menu options for copy/remove.
- Update set textEditingValue.
- Fix checkbox not toggled correctly in toolbar button.
- Fix cursor position changes when checking/unchecking the checkbox.
- Fix _handleDragUpdate in _TextSelectionHandleOverlayState.
- Fix link dialog layout.
- Fix for errors on a non scrollable editor.
- Fix certain keys not working on web when editor is a child of a scroll view.
- Refactor _QuillEditorState to QuillEditorState.
- Support pasting with format.
- Fix selection overlay for collapsed selection.
- Reverted Embed toPlainText change.
- Change Embed toPlainText to be empty string.
- Replace Toolbar showHistory group with individual showRedo and showUndo.
- Update Link dialogue for image/video.
- Link dialogue TextInputType.multiline.
- Bug fix for link button text selection.
- Improve link button.
- Remove SnackBar 'What is entered is not a link'.
- Allow link button to enter text.
- Change link button behavior.
- Bug fix for embed.
- Bug fix for platform util.
- Removed redundant classes.
- Add more translations.
- Preset link from attributes.
- Fix launch link edit mode.
- Placeholder effective in scrollable.
- Option to save image in read-only mode.
- Pass any specified key in QuillEditor constructor to super.
- Fixed Style toggle issue.
- Added new translations.
- Support multiple links insertion on the go.
- Add selection completed callback.
- Fixed image ontap functionality.
- Add maxContentWidth constraint to editor.
- Do not show caret on screen when the editor is not focused.
- Fix launch link for read-only mode.
- Handle null value of Attribute.link.
- Launch link improvements.
- Removed QuillSimpleViewer.
- Skip image when pasting.
- Bug fix for Desktop
Shift
+Click
support.
- Update checkbox list.
- Desktop selection improvements.
- Improve inline code style.
- Improves selection rects to have consistent height regardless of individual segment text styles.
- Allow disabling floating cursor.
- Preserve last newline character on delete.
- Massive changes to support flutter 2.8.
- iOS - floating cursor.
- Bug fix for imports supporting flutter 2.8.
- Support flutter 2.8.
- Add methods of clearing editor and moving cursor.
- Add delete handler.
- Support custom replaceText handler.
- Fix attribute compare and fix font size parsing.
- Handle click on embed object.
- Improved UX/UI of Image widget.
- When uploading a video, applying indicator.
- Make toolbar dividers optional.
- Allow alignment of the toolbar icons to match WrapAlignment.
- Add hide / show alignment buttons.
- Implement change cursor to SystemMouseCursors.click when hovering a link styled text.
- Enable customize the checkbox widget using DefaultListBlockStyle style.
- Improve the scrolling performance by reducing the repaint areas.
- Fix the selection effect can't be seen as the textLine with background color.
- Fix visibility of text selection handlers on scroll.
- cursorConnt.color notify the text_line to repaint if it was disposed.
- Improve UX when trying to add a link.
- Adding translations to the toolbar.
- Added theming options for toolbar icons and LinkDialog.
- Avoid runtime error when placed inside TabBarView.
- Support inline code formatting.
- Enable history shortcuts for desktop.
- Fix cursor when line contains image.
- Address KeyboardListener class name conflict.
- Upgrade flutter_colorpicker to 0.5.0.
- Text Alignment functions + Block Format standards.
- Support putting QuillEditor inside a Scrollable view.
- Skip image when pasting.
- Bug fix for cursor position when tapping at the end of line with image(s).
- Bug fix when line only contains one image.
- Support for building custom inline styles.
- Cursor jumps to the most appropriate offset to display selection.
- Support inline image.
- Updated quill_delta.
- Support mobile image alignment.
- Support mobile custom size image.
- Support entering link for image/video.
- Bumps photo_view version.
- Fix static analysis error.
- Support Youtube video.
- Support video.
- Bug fix for clear format button.
- Fixed dragging right handle scrolling issue.
- Fixed the position of the selection status drag handle.
- Upgrade image_picker and flutter_colorpicker.
- Support Multi Row Toolbar.
- Remove file_picker dependency.
- Remove filesystem_picker dependency.
- Remove path_provider dependency.
- Add option to paintCursorAboveText.
- Upgrade file_picker version.
- Fix copy/paste bug.
- New logo.
- Support flutter 2.2.0.
- Checkbox supports tapping.
- Indented position not holding while editing.
- Fix image button cancel causes crash.
- Fix height of empty line bug.
- Fix text selection in read-only mode.
- Remove universal_html dependency.
- Enable "Select", "Select All" and "Copy" in read-only mode.
- Fix text selection issue.
- Update example folder.
- Add pedantic.
- Base64 image support.
- Support null safety.
- Web support for raw editor and keyboard listener.
- Support token attribute.
- Fix crash on web (dart:io).
- Add desktop support WINDOWS, MACOS and LINUX.
- Bug fix: Can not insert newline when Bold is toggled ON.
- Upgrade photo_view to ^0.11.0.
- Fix issue that text is not displayed while typing WEB.
- Update toolbar in sample home page.
- Fix static analysis errors.
- Support flutter 2.0.
- Improve link handling for tel, mailto and etc.
- Upgrade prerelease SDK & Bump for master.
- Fix for cursor focus issues when keyboard is on.
- Improve link handling for tel, mailto and etc.
- More fix on cursor focus issue when keyboard is on.
- Fix cursor focus issue when keyboard is on.
- cursor focus when keyboard is on.
- Line Height calculated based on font size.
- Support placeholder.
- Fix static analysis error.
- Update TextInputConfiguration autocorrect to true in stable branch.
- Update TextInputConfiguration autocorrect to true.
- Support display local image besides network image in stable branch.
- Support display local image besides network image.
- Fix cursor after pasting.
- Toggle text/background color button in toolbar.
- Support the use of custom icon size in toolbar.
- Support custom styles and image on local device storage without uploading.
- Update git repo.
- Fix static analysis error.
- Add checked/unchecked list button in toolbar.
- Support font and size attributes.
- Support checked/unchecked list.
- Fix getExtentEndpointForSelection.
- Support text alignment.
- Handle url with trailing spaces.
- Handle cursor position change when undo/redo.
- Handle more text colors.
- Fix cursor issue when undo.
- Fix insert image.
- Handle rgba color.
- Fix launching url.
- Handle multiple image inserts.
- More toolbar functionality.
- Update example.
- Update example.
- Update home page meta data.
- Support image upload and launch url in read-only mode.
- Rich text editor based on Quill Delta.