Release highlights
We are happy to announce the release of CKEditor 5 v35.4.0.
- Allow list indexing to start from
0
. - Added track changes integration for lists, document list properties, and table resize features.
- Introduced the
trackChanges.trackFormatChanges
configuration property which can be used to disable tracking of format changes. - Added an option for dynamic filenames in the editor’s configuration for PDF/Word export.
- More editor packages migrated to TypeScript.
Read about release highlights in a dedicated blog post: https://ckeditor.com/blog/ckeditor-5-v35.4.0-with-track-changes-expansions--and-better-control-over-the-pdf-and-word-converters/
MINOR BREAKING CHANGES ℹ️
- engine:
HtmlDataProcessor
skips HTML comments by default. Set itsskipComments
property tofalse
to retain comments (or use theHtmlComment
plugin).
Features
- image: Upcast the
<img>
element with thedisplay:block
style as a block image. Closes #12811. (commit) - lists: Allow list indexing to start from
0
. Closes #12827. (commit) - track-changes: Added track changes integration for lists, document list properties, and table resize features.
- track-changes: Introduced the
trackChanges.trackFormatChanges
configuration property which can be used to disable tracking of format changes.
Bug fixes
- clipboard: Replace a tab with four spaces when pasting data from clipboard. Closes #12806. (commit)
- comments: It is no longer necessary to make two mouse clicks to move the selection if the annotation in a wide sidebar was focused before.
- comments: Long user names will no longer break annotations styling in inline and narrow sidebar display modes.
- comments: Comment view should not lose focus or hide after clicking the cancel icon in the deletion confirmation box.
- comments: Removing a comment thread imported from a Word file with at least one reply, no longer results in an error where only the first comment was removed instead of the whole thread.
- engine: Fixed a bug which in some scenarios caused rendering with an outdated selection state when the editor was focused (on Chromium browsers). Closes #12967. (commit)
- engine: The
Model#insertObject()
method should not crash when attempting to set a selection after inserting an inline element. Closes #12809. (commit) - html-support: Markers should not be lost while upcasting a plain table (without the
<figure>
element). (commit) - html-support: Basic styles formatting now works well with the remove format feature. Closes #12626. (commit)
- real-time-collaboration: In some scenarios the document content was not updated by remote changes until the editor was focused.
- special-characters: The special character label in dropdown should be updated when navigating with keyboard. Closes #12393. (commit)
- special-characters: Special characters form a header should use a heading markup. Closes #12464. (commit)
- table: The table
width
andheight
attributes should be upcasted from the<figure>
element if it exists. Closes #12812. (commit) - Table: Improved the label positioning in RTL editor mode in the insert table dropdown. Closes #12833. (commit)
- track-changes: Fixed editor crash when the
TrackChangesData
plugin was used with some editor configurations including real-time collaboration plugins. - track-changes: Fixed editor crash when the
TrackChangesData
plugin was used with pagination plugin. - track-changes: Fixed various incorrect scenarios related to the document list integration with track changes.
- track-changes: Use all ranges in the
markMultiRangeFormatBlock
suggestion accept. - track-changes: Fixed the editor crash when the document list properties config is overwritten.
- ui: The keyboard navigation in grid dropdowns should not be reversed in RTL editor. Closes #12871. (commit)
- ui: The split button divider should stretch to the edges of the button. Closes #10936. (commit)
- widget: Screen readers should now read the keyboard shortcuts to type around a widget. Closes #11936. (commit)
Other changes
- engine: The
HtmlDataProcessor
exposes an option toskipComments
. Closes #12813. (commit) - enter: Made the
enterBlock()
helper publicly accessible throughEnterCommand#enterBlock()
. Closes #12885. (commit) - export-pdf: Added support for callbacks in the
fileName
configuration option. - export-word: Added support for callbacks in the
fileName
configuration option. - import-word: Imported comments will keep only basic styling by default. This behavior can be changed using the new
importWord.commentsStyles
config property. - list: Added access to list-related utils functions through the new
ListUtils
plugin to make it possible to use them in other packages. (commit) - list: Added access to list-related utils functions through the new
DocumentListUtils
andDocumentListPropertiesUtils
plugins to make it possible to use them in other packages. (commit) - table:
TableWidthResizeCommand
will now reset the size values if an optional execution parameter is skipped. Closes #12916. (commit) - utils: Removed the
I
generic parameter from theCollection
class. See #12763. (commit) - Several packages have been rewritten to TypeScript:
@ckeditor/ckeditor5-editor-balloon
: closes #12617. (commit)@ckeditor/ckeditor5-editor-classic
: closes #12618. (commit)@ckeditor/ckeditor5-editor-decoupled
: closes #12619. (commit)@ckeditor/ckeditor5-editor-inline
: closes #12620. (commit)@ckeditor/ckeditor5-essentials
: closes #12621. (commit)
- Updated translations. (commit)
Released packages
Check out the Versioning policy guide for more information.
Releases containing new features:
Other releases:
Released packages (summary)