- #2721, #487: Fixed: The order of sublist items is reversed when a higher level list item is removed.
- #2527: Fixed: Emoji autocomplete order does not prioritize emojis with the name starting from the used string.
- #2572: Fixed: Icons in the Emoji dropdown navigation groups are not centered.
- #1191: Fixed: Items in the elements path are draggable.
- #2292: Fixed: Dropping a list with a link on the editor's margin causes a console error and removes the dragged text from editor.
- #2756: Fixed: The Auto Link plugin causes an error when typing in the source editing mode.
#1986: Fixed: The Cell Properties dialog from the Table Tools plugin shows styles that are not allowed through
- #2565: [IE, Edge] Fixed: Buttons in the editor toolbar are activated by clicking them with the right mouse button.
- #2792: Fixed: A bug in the Copy Formatting plugin that caused the following issues:
- #2403: Fixed: Styling inline editor initialized inside a table with the Table Selection plugin is causing style leaks.
- #2514: Fixed: Pasting table data into inline editor initialized inside a table with the Table Selection plugin inserts pasted content into the wrapping table.
- #2451: Fixed: The Remove Format plugin changes selection.
- #2546: Fixed: The separator in the toolbar moves when buttons are focused.
#2506: Fixed: Enhanced Image throws a type error when an empty
<figure>tag with an
imageclass is upcasted.
#2650: Fixed: Table dialog validator fails when the
getValue()function is defined in the global scope.
- #2690: Fixed: Decimal characters are removed from the inside of numbered lists when pasting content using the Paste from Word plugin.
- #2205: Fixed: It is not possible to add new list items under an item containing a block element.
- #2411, #2438 Fixed: Apply numbered list option throws a console error for a specific markup.
- #2430 Fixed: Color Button and List Block items are draggable.
Fixed XSS vulnerability in the HTML parser reported by maxarr.
Issue summary: It was possible to execute XSS inside CKEditor after persuading the victim to: (i) switch CKEditor to source mode, then (ii) paste a specially crafted HTML code, prepared by the attacker, into the opened CKEditor source area, and (iii) switch back to WYSIWYG mode.
An upgrade is highly recommended!
- #2062: Added the emoji dropdown that allows the user to choose the emoji from the toolbar and search for them using keywords.
- #2154: The Link plugin now supports phone number links.
- #1815: The Auto Link plugin supports typing link completion.
- #2478: Link can be inserted using the Ctrl/Cmd + K keystroke.
- #651: Text pasted using the Paste from Word plugin preserves indentation in paragraphs.
- #2248: Added support for justification in the BBCode plugin. Thanks to Matěj Kmínek!
- #706: Added a different cursor style when selecting cells for the Table Selection plugin.
#2072: The UI Button plugin supports custom
aria-haspopupproperty values. The Menu Button
aria-haspopupvalue is now
menu, the Panel Button and Rich Combo
aria-haspopupvalue is now
- #1176: The Balloon Panel can now be attached to a selection instead of an element.
#2202: Added the
contextmenu_contentsCssconfiguration option to allow adding custom CSS to the Context Menu.
- #1477: Fixed: On destroy, Balloon Toolbar does not destroy its content.
- #2394: Fixed: Emoji dropdown does not show up with repeated symbols in a single line.
- #1181: [Chrome] Fixed: Opening the context menu in a read-only editor results in an error.
- #2276: [iOS] Fixed: Button state does not refresh properly.
- #1489: Fixed: Table contents can be removed in read-only mode when the Table Selection plugin is used.
- #1264 Fixed: Right-click does not clear the selection created with the Table Selection plugin.
#586 Fixed: The
requiredattribute is not correctly recognized by the Form Elements plugin dialog. Thanks to Roli Züger!
- #2380 Fixed: Styling HTML comments in a top-level element results in extra paragraphs.
- #2294 Fixed: Pasting content from Microsoft Outlook and then bolding it results in an error.
#2035 [Edge] Fixed:
Permission deniedis thrown when opening a Panel instance.
#965 Fixed: The
config.forceSimpleAmpersandoption does not work. Thanks to Alex Maris!
#2448: Fixed: The [
Escape HTML Entities] plugin with custom additional entities configuration breaks HTML escaping.
- #898: Fixed: Enhanced Image long alternative text protrudes into the editor when the image is selected.
- #1113: [Firefox] Fixed: Nested contenteditable elements path is not updated on focus with the Div Editing Area plugin.
- #1682 Fixed: Hovering the Balloon Toolbar panel changes its size, causing flickering.
#421 Fixed: Expandable Button puts the
(Selected)text at the end of the label when clicked.
#1454: Fixed: The
onAbortmethod of the Upload Widget is not called when the loader is aborted.
- #1451: Fixed: The context menu is incorrectly positioned when opened with Shift+F10.
CKEDITOR.filter.instancesis causing memory leaks.
- #2491: Fixed: The Mentions plugin is not matching diacritic characters.
- #2519: Fixed: The Accessibility Help dialog should display all available keystrokes for a single command.
CKEDITOR.ui.panel.block.getItemsmethod now also returns
inputelements in addition to links.
CKEDITOR.tools.convertToPxfunction now converts negative values.
#2253: The widget definition
insertmethod now passes
commandData. Thanks to marcparmet!
tools.throttlefunctions logic into a separate namespace.
CKEDITOR.filterconstructor accepts an additional
rulesparameter allowing to bind the editor and filter together.
editor.getCommandKeystrokemethod accepts an additional
allparameter allowing to retrieve an array of all command keystrokes.
#2483: Button's DOM element created with the
hasArrowdefinition option can by identified by the
#2114: Fixed: Autocomplete cannot be initialized before
- #2107: Fixed: Holding and releasing the mouse button is not inserting an autocomplete suggestion.
- #2167: Fixed: Matching in Emoji plugin is not case insensitive.
- #2195: Fixed: Emoji shows the suggestion box when the colon is preceded with other characters than white space.
- #2169: [Edge] Fixed: Error thrown when pasting into the editor.
- #1084 Fixed: Using the "Automatic" option with Color Button on a text with the color already defined sets an invalid color value.
- #2271: Fixed: Custom color name not used as a label in the Color Button plugin. Thanks to Eric Geloen!
- #2296: Fixed: Color Button throws an error when activated on a content containing HTML comments.
#966: Fixed: Executing
editor.destroy()during the file upload throws an error. Thanks to Maksim Makarevich!
- #1719: Fixed: Ctrl/Cmd + A inadvertently focuses inline editor if it is starting and ending with a list. Thanks to theNailz!
#1046: Fixed: Subsequent new links do not include the
idattribute. Thanks to Nathan Samson!
- #1348: Fixed: Enhanced Image plugin aspect ratio locking uses an old width and height on image URL change.
- #1791: Fixed: Image and Enhanced Image plugins can be enabled when Easy Image is present.
- #2254: Fixed: Image ratio locking is too precise for resized images. Thanks to Jonathan Gilbert!
- #1184: [IE8-11] Fixed: Copying and pasting data in read-only mode throws an error.
- #1916: [IE9-11] Fixed: Pressing the Delete key in read-only mode throws an error.
- #2003: [Firefox] Fixed: Right-clicking multiple selected table cells containing empty paragraphs removes the selection.
- #1816: Fixed: Table breaks when Enter is pressed over the Table Selection plugin.
#1115: Fixed: The
<font>tag is not preserved when proper configuration is provided and a style is applied by the Font plugin.
- #727: Fixed: Custom styles may be invisible in the Styles Combo plugin.
#988: Fixed: ACF-enabled custom elements prefixed with
paramare removed from the editor content.