Release highlights
We are happy to announce the release of CKEditor 5 v27.0.0.
Starting from this version, collaboration features release notes will be included in the CKEditor 5 changelog. Changes for the previous releases are available on https://ckeditor.com/collaboration/changelog/.
This release introduces some new features:
- The new text part language feature allows you to define the language for each passage of content written in multiple languages. This helps satisfy the WCAG Success Criterion 3.1.2 Language of Parts.
- Support for drag and dropping of textual content and block objects (like images and tables) within the editor.
- Support for dropping HTML content from outside of the editor into the editor.
- Alignment can now be set using classes.
- Typing
[x]will now insert a checked to-do list item. - Support for bubbling of
view.Documentevents.
MAJOR BREAKING CHANGES ℹ️
Note: Check out the Migration to CKEditor 5 v27.0.0 guide for more detailed information on how to upgrade to this version.
- clipboard: The
inputTransformationevent is no longer fired by theClipboardplugin. Now theClipboardPipelineplugin is responsible for firing this event (see #9128). - clipboard: The
clipboardInputandinputTransformationevents should not be fired or stopped in the feature code. Thedata.contentproperty should be assigned to override the default content instead. You can stop this event only if you want to completely disable pasting or dropping of some content. Read more about the clipboard pipeline in the migration to v27.0.0 guide. See #9128. - Introduced bubbling of the
view.Documentevents, similar to how bubbling works in the DOM. This allowed us to re-prioritize many listeners that previously had to rely on thepriorityproperty. However, it means that existing listeners that use priorities may now be executed at a wrong time. The listeners to such events should be reviewed in terms of when they should be executed (in what context/element/phase). Read more about event bubbling in the migration to v27.0.0 guide. See #8640.
Features
- alignment: Introduced an option to use classes instead of inline styles. Closes #8516. (commit)
- autoformat: Typing
[x]will insert a checked to-do list item. Closes #8877. (commit) - clipboard: Implemented basic support for content drag and drop. Closes #9128. (commit)
- clipboard: The
contentInsertionevent is fired fromClipboardPipelineto enable customization of content insertion (see #9128). (commit) - core: Created the universal caption icon. Closes #9196. (commit)
- engine: Introduced bubbling of the
view.Documentevents, similar to how bubbling works in the DOM. Bubbling allows listening on a view event on a specific kind of element, hence simplifying code that needs to handle a specific event for only that element (e.g.enterinblockquoteelements only). Read more in the Event system deep-dive guide. Closes #8640. (commit) - engine: Introduced
ArrowKeysObserver. See #8640. (commit) - language: Added support for setting the text part language. Closes #8989.
Bug fixes
- engine:
DataController#toView()should have a default value for theoptionsparameter. Closes #9293. (commit) - highlight The remove highlight button now also gets disabled along with the main highlight command. Closes #9174. (commit)
- utils: The
EmitterMixin#listenTo()method is split into listener and emitter parts. TheObservableMixindecorated methods reverted to the original method while destroying an observable. (commit)
Other changes
- clipboard: The paste as plain text feature was extracted to the dedicated
PastePlainTextplugin (see #9128). (commit) - engine: The
mouseupevent is fired by theMouseObserver(see #9128). (commit) - table: The
mouseupevent is no longer fired by theMouseEventsObserverfrom the@ckeditor/ckeditor5-tablepackage (now handled byMouseObserver) (see #9128). (commit) - typing: The
TwoStepCaretMovementfeature is now using bubbling events. Closes #7437. (commit) - utils: Added the
language.getLanguageDirectionhelper function allowing to determine the text direction based on the language code. (commit) - Optimized icons. (commit)
- Updated English translations for the text part language feature. (commit)
Released packages
Check out the Versioning policy guide for more information.
New packages:
Major releases (contain major breaking changes):
Releases containing new features:
Other releases:
Released packages (summary)