Changelog
This is the TinyMCE Community version changelog. For information about the latest Tiny Cloud or TinyMCE Enterprise Release, see: TinyMCE Release Notes. |
6.4.2 - 2023-04-26
Fixed
-
The editor displayed a notification error when it failed to retrieve a blob image uri.
-
Tab navigation no longer incorrectly stops at menu buttons within toolbar groups.
-
The
urlinput
dialog component would not open the type-ahead dropdown when the input value was reset to an empty string. -
Redial would, in some circumstances, cause elements to not have an initial value selected when they should have.
-
When hovering over tree dialog components the mouse pointer rendered incorrectly.
-
The
tox-button
andtox-button-secondary
buttons now support thehover
,active
,focus
, anddisabled
states. -
Setting an invalid unit in the
fontsizeinput
changed it to the default value instead of reverting it to the previous, and valid, value. -
Selection was not correctly scrolled horizontally into view when using the
selection.scrollIntoView
API. -
The contextual toolbar displayed the status of Advanced List Premium plugin icons incorrectly.
-
The
quickimage
toolbar button failed to insert images selected from the local computer when running on Google Chrome for macOS.
6.4.1 - 2023-03-29
Fixed
-
The
fontsizeinput
increase and decrease size buttons now work on TinyMCE mobile. -
The TinyMCE editor toolbar is now accessible for all screen widths; it no longer collapses into an inaccessible vertical line when the screen is scrolled horizontally.
-
Reverted the changes made, in TinyMCE 6.4.0, to UI button colors in focus, active, and enabled states.
6.4.0 - 2023-03-16
Added
-
New
tree
component that can be used in dialog body panel. -
renderUI
property in theTheme
type can now return aPromise<RenderResult>
instead ofRenderResult
. -
New
editor.selection.isEditable
API method that returns whether the current selection is editable. -
New
editor.dom.isEditable
API method that returns whether the specified node is editable. -
New
setText
andsetIcon
methods added to menu button and toolbar button APIs. -
New
highlight_on_focus
option which enables highlighting the content area on focus. -
New
fontsizeinput
toolbar item which allows the user to set the size via input and also increase and decrease it with+
and-
buttons. -
Added
skip_focus
check to the ToggleToolbarDrawer command. -
New
font_size_input_default_unit
option allows to use of numbers without a unit infontsizeinput
and have them parsed with the default unit, if it is not defined the default ispt
. -
New
group
andtogglebutton
in view. -
New
togglebutton
in dialog footer buttons. -
Added
toggleFullscreen
to dialog API. -
New
text-size-increase
andtext-size-decrease
icons. -
New
xss_sanitization
option to allow disabling of XSS sanitization. -
Added the top right close button of modal dialogs to the tabbing order. The 'x' button in these dialogs can now be accessed using keyboard navigation.
-
New
ui_mode
option for editor in scrollable containers support. -
The sidebar element now has the accessibility role
region
when visible and the accessibility rolepresentation
when hidden. -
The
tox-custom-editor
class now has a border highlight when it is selected. -
An element could be dropped onto the decendants of an element with a
contenteditable="false"
attribute. -
Checkmark did not show in menu color swatches.
-
Add support for navigating inside the tree component using arrow keys and shift key.
Improved
-
Direct invalid child text nodes of list elements are now wrapped in list item elements.
-
Templates are now be parsed before preview and insertion to make preview consistent with inserted template content and prevent XSS.
-
Pressing backspace on an empty line now preserves formatting on the previous empty line.
-
Pressing enter inside the
fontsizeinput
input would not move the focus back into the editor content. -
Drag and drop events for elements with a
contenteditable="false"
attribute now includes target element details. -
Updated focus, active, and enabled colors of UI buttons for improved contrast against the UI color.
Changed
-
The Link plugin’s context menu items will no longer appear for
contenteditable="false"
links. -
The formatting of elements with a
contenteditable="false"
attribute are no longer cloned to new cells when new table rows are created. -
Changed the color of
@dialog-table-border-color
, and added right padding to the first cell of dialog table.
Fixed
-
Sometimes the editor would finish initializing before the theme would have finished loading.
-
The
searchreplace
modal closed incorrectly when clicking outside of the alert that pops up when no match is found. -
The text color or background color picker toolbar buttons did not update when the text color or background color was changed using the equivalent commands in the Format menu.
-
The
onSetup
api function would not run when defining custom group toolbar button. -
The foreground and background menu icons would not properly update to display the last used color.
-
Added new
setIconFill
function toeditor.ui.addNestedMenuItem
. -
Pasting links to text would sometimes not generate the correct undo stack on Safari.
-
Toolbar split buttons in Advanced List plugin to show the correct state when the cursor is in a checklist.
-
Dragging transparent elements into transparent block elements could produce invalid nesting of transparents.
-
The
editor.insertContent
API would insert contents inside elements with acontenteditable="false"
attribute if the selection was inside the element. -
Closing a dialog would scroll down the document in Safari.
-
Inline headers would not work in some situations when the editor was moved too far right horizontally.
-
Quick toolbars were incorrectly rendered during the dragging of elements with a
contenteditable="false"
attribute. -
Selection of images, horizontal rules, tables or elements with a
contenteditable="false"
attribute was possible if they were within an element with acontenteditable="false"
attribute. -
Ranged deletion of formatted text using selection or keyboard shortcut would sometimes cause Blink and Webkit browsers to recreate tags upon typing, which may result in inconsistent tags.
-
Visual characters were rendered inside elements with a
contenteditable="false"
attribute. -
Lists with an element with a
contenteditable="false"
attribute as their root were incorrectly editable using list API commands, toolbar buttons and menu items. -
Color picker dialog would not update the preview color if the hex input value was prefixed with the
#
character. -
Table cell selection was possible even if the element being selected was within an element with a
contenteditable="false"
attribute. -
Table commands were modifying tables that were within an element with a
contenteditable="false"
attribute. -
Fake carets were rendered for elements with a
contenteditable="false"
attribute and for tables within an element with acontenteditable="false"
attribute. -
Textareas with scrollbars in dialogs would not render rounded corners correctly on some browsers.
-
It was possible to open links inside the editor if the editor root was an element with a
contenteditable="false"
attribute. -
Inline boundary was rendered for boundary elements that had a
contenteditable="false"
attribute. -
Clicking on a disabled split button would call the
onAction
callback. -
The Edit Link dialog incorrectly retrieved the URL value when opened immediately after the link insertion.
-
The
ForwardDelete
andDelete
editor commands were deleting content within elements with acontenteditable="false"
attribute. -
The Backspace and Forward Delete keys were deleting content within elements with a
contenteditable="false"
attribute. -
Inserting newlines inside an editable element that was inside an element with a
contenteditable="false"
attribute root would sometimes try to split the editable element. -
Creating a list in a table cell when the caret is in front of an anchor element would not properly include the anchor in the list.
-
Dragging and dropping elements with a
contenteditable="false"
attribute on table borders would remove the element on drop. -
Elements with a
contenteditable="false"
attribute would be removed when dragged and dropped within a root element with acontenteditable="false"
attribute. -
Formatting could be applied or removed to list items with a
contenteditable="false"
attribute that were inside an element with acontenteditable="false"
attribute. -
Annotation were not removed if the annotation was deleted immediately after being created.
-
Inserting a link for a selection from quickbars did not preserve formatting.
-
Inline dialog position was not correct when the editor was not inline and was contained in a
fixed
orabsolute
positioned element. -
Sticky toolbars did not fade transition when undocking in classic iframe mode.
-
Inserting elements that were not valid within the closest editing host would incorrectly split the editing host.
-
The
color_cols
option was not respected in theforecolor
orbackcolor
color swatches. -
Drag and dropping the last element with a
contenteditable="false"
attribute out of its parent block would not properly pad the parent block element. -
Applying heading formats from
text_patterns
produced an invisible space before a word. -
Opening color swatches caused the browser tab to crash when
color_cols
or other column option was set to 0. -
Opening a menu button in the footer of a dialog after a redial threw an error.
-
After closing a view, the
more…
toolbar button disappeared if the editor hadtoolbar_mode: 'sliding'
and the toolbar was opened. -
Inline dialogs would open partially off screen when the toolbar had a small width.
-
The
autoresize
plugin would cause infinite resizing whencontent_css
was set todocument
.
6.3.0 - 2022-11-23
Added
-
New
expand
function added totinymce.selection
which expands the selection around the nearest word. -
New
expand
function added totinymce.dom.RangeUtils
to return a new range expanded around the nearest word. -
New
color_map_background
andcolor_map_foreground
options which set the base colors used in thebackcolor
andforecolor
toolbar buttons and menu items. -
Added optional
storageKey
property tocolorinput
component andcolorswatch
fancy menu item. -
New
addView
function added toeditor.ui.registry
which makes it possible to register custom editor views. -
New
ToggleView
command which makes it possible to hide or show registered custom views. -
New
color_default_foreground
andcolor_default_background
options to set the initial default color for theforecolor
andbackcolor
toolbar buttons and menu items. -
New
getTransparentElements
function added totinymce.html.Schema
to return a map object of transparent HTML elements. -
Added
ToggleToolbarDrawer
event to subscribe to toolbar’s opening and closing.
Improved
-
Transparent elements, like anchors, can now contain block elements.
-
Colorswatch now displays a checkmark for selected color.
-
Color picker dialog now starts on the appropriate color for the cursor position.
Changed
-
Transparent elements, like anchors, are now allowed in the root of the editor body if they contain blocks.
-
Colorswatch keyboard navigation now starts on currently selected color if present in the colorswatch.
-
setContent
is now allowed to accept any custom keys and values as a second options argument.
Fixed
-
Parsing media content would cause a memory leak, which for example occurred when using the
getContent
API. -
Dragging a noneditable element toward the bottom edge would cause the page to scroll up.
-
Range expanding capabilities would behave inconsistently depending on where the cursor was placed.
-
Compilation errors were thrown when using TypeScript 4.8.
-
Line separator scrolling in floating toolbars.
-
A double bottom border appeared on inline mode editor for the
tinymce-5
skin. -
The editor header showed up even with no menubar and toolbar configured.
-
Inline text pattern no longer triggers if it matches only the end but not the start.
-
Matches of inline text patterns that are similar are now managed correctly.
-
Using
editor.selection.getContent({ format: 'text' })
oreditor.getContent({ format: 'text' })
would sometimes deselect selected radio buttons. -
The context toolbar prevented the user from placing the cursor at the edges of the editor.
-
The Quick Insert context toolbar provided by the
quickbars
plugin showed when the cursor was in a fake block caret. -
The
editor.selection.getRng()
API was not returning a proper range on hidden editors in Firefox. -
The
editor.selection.getBookmark()
API was not returning a proper bookmark on hidden editors in Firefox. -
Dragging a noneditable element before or after another noneditable element now works correctly.
-
The restored selection after a redo or undo action was not scrolled into view.
-
A newline could not be inserted when the selection was restored from a bookmark after an inline element with a
contenteditable="false"
attribute. -
The global
tinymce.dom.styleSheetLoader
was not affected by thecontent_css_cors
option. -
The caret was moved to the previous line when a text pattern executed a
mceInsertContent
command on Enter key when running on Firefox.
6.2.0 - 2022-09-08
Added
-
New
text_patterns_lookup
option to provide additional text patterns dynamically. -
New promotion element has been added to the default UI. It can be disabled using the new
promotion
option. -
New
format_noneditable_selector
option to specify thecontenteditable="false"
elements that can be wrapped in a format. -
Added
allow
as a valid attribute for theiframe
element in the editor schema. -
New
search
field in theMenuButton
that shows a search field at the top of the menu, and refetches items when the search field updates.
Improved
-
The formatter can now apply a format to a
contenteditable="false"
element by wrapping it. Configurable using theformat_noneditable_selector
option. -
The autocompleter now supports a multiple character trigger using the new
trigger
configuration. -
The formatter now applies some inline formats, such as color and font size, to list item elements when the entire item content is selected.
-
The installed and available plugin lists in the Help dialog are now sorted alphabetically.
-
Alignment can now be applied to more types of embedded media elements.
Changed
-
The
@menubar-row-separator-color
oxide variable no longer affects the divider between the Menubar and Toolbar. It only controls the color of the separator lines drawn in multiline Menubars. -
The
@toolbar-separator-color
oxide variable now affects the color of the separator between the Menubar and Toolbar only. -
Available Premium plugins, which are listed by name in the Help dialog, are no longer translated.
Fixed
-
The Autolink plugin did not work when text nodes in the content were fragmented.
-
Fixed multiple incorrect types on public APIs found while enabling TypeScript strict mode.
-
The number of blank lines returned from
editor.getContent({format: 'text'})
differed between browsers. -
The editor focused via the
auto_focus
option was not scrolled into the viewport. -
Adding spaces immediately after a
contenteditable="false"
block did not work properly in some circumstances. -
Elements with only
data-*
custom attributes were sometimes removed when they should not be removed. -
Selecting a figure with
class="image"
incorrectly highlighted the link toolbar button. -
Specifying a single, non-default list style for the
advlist_bullet_styles
andadvlist_number_styles
options was not respected. -
Fixed multiple issues that occurred when formatting
contenteditable
elements. -
Spaces could be incorrectly added to
urlinput
dialog components (commonly but not exclusively presented in the Insert/Edit Link dialog) in certain cases. -
The text patterns logic threw an error when there were fragmented text nodes in a paragraph.
-
Dragging a
contentEditable=false
element towards a document’s edge did not cause scrolling. -
Parsing large documents no longer throws a
Maximum call stack size exceeded
exception. -
DomParser filter matching was not checked between filters, which could lead to an exception in the parser.
-
contenteditable="false"
lists can no longer be toggled; andcontenteditable="true"
list elements within these lists can no longer be indented, split into another list element, or appended to the previous list element by deletion. -
Removed extra bottom padding in the context toolbar of the
tinymce-5
skin. -
Fixed a regression where pressing Enter added or deleted content outside the selection.
-
Fixed a bug where pressing Enter deleted selected
contenteditable="false"
<pre>
elements. -
The
editor.insertContent()
API did not respect theno_events
argument.
6.1.1 - 2022-07-27
Fixed
-
Invalid special elements were not cleaned up correctly during sanitization.
-
An exception was thrown when deleting all content if the start or end of the document had a
contenteditable="false"
element. -
When a sidebar was opened using the
sidebar_show
option, its associated toolbar button was not highlighted. -
When converting a URL to a link, the
autolink
plugin did not fire anExecCommand
event, nor did it create an undo level. -
Worked around a Firefox bug which resulted in cookies not being available inside the editor content.
-
<pre>
content pasted into a<pre>
block that had inline styles or wasnoneditable
now merges correctly with the surrounding content. -
After a
codesample
was pasted, the insertion point was placed incorrectly.
6.1.0 - 2022-06-29
Added
-
New
sidebar_show
option to show the specified sidebar on initialization. -
New
newline_behavior
option controls what happens when the Return or Enter key is pressed or themceInsertNewLine
command is used. -
New
iframe_template_callback
option in the Media plugin. Patch provided by Namstel. -
New
transparent
property foriframe
dialog component. -
New
removeAttributeFilter
andremoveNodeFilter
functions added to the DomParser and DOM Serializer APIs. -
New
dispatchChange
function added to the UndoManager API to fire the change with current editor status as level and current undoManager layer as lastLevel.
Improved
-
Clearer focus states for buttons while navigating with a keyboard.
-
Support annotating certain block elements directly when using the editor’s Annotation API.
-
The
mceLink
command can now take the value{ dialog: true }
to always open the link dialog. -
All help dialog links to
https://www.tiny.cloud
now includerel="noopener"
to avoid potential security issues.
Changed
-
The
end_container_on_empty_block
option can now take a string of blocks, allowing the exiting of a blockquote element by pressing Enter or Return twice. -
The default value for
end_container_on_empty_block
option has been changed to'blockquote'
. -
Link menu and toolbar buttons now always execute the
mceLink
command. -
Toggling fullscreen mode when using the Fullscreen plugin now also fires the
ResizeEditor
event. -
Getting the editor’s text content now returns newlines instead of an empty string if more than one empty paragraph exists.
-
Custom elements are now treated as non-empty elements by the schema.
-
The autocompleter’s menu HTML element is now positioned instead of the wrapper.
-
Choice menu items will now use the
'menuitemradio'
aria role to better reflect that only a single item can be active.
Fixed
-
Some Template plugin option values were not escaped properly when doing replacement lookups with Regular Expressions.
-
Copy events were not dispatched in readonly mode.
-
<pre>
tags were not preserved when copying and pasting. -
The URL detection used for autolink and smart paste did not work if a path segment contained valid characters such as
!
and:
. -
In some cases pressing the Backspace or Delete key would incorrectly step into tables rather than remain outside.
-
Links opened when Alt+Enter or Option+Return was typed even when
preventDefault()
was called on the keydown event. -
Inconsistent visual behavior between choosing Edit → Select All and typing Ctrl+A or Cmd+A when a document contained an image.
-
Ctrl+Shift+Home/End or Cmd+Shift+Up-arrow/Down-arrow did not expand the selection to a
contenteditable="false"
element if the element was at the beginning or end of a document. -
Triple-clicking did not select a paragraph in Google Chrome in some circumstances.
-
Images were not showing as selected when selected along with other content.
-
Selection direction was not stored or restored when getting or setting selection bookmarks.
-
When text within an inline boundary element was selected and the right-arrow key was pressed, the insertion point incorrectly moved to the left.
-
In some versions of Safari, the
editor.selection.isForward()
API could throw an exception due to an invalid selection. -
The selection is no longer incorrectly moved inside a comment by the
editor.selection.normalize()
API. -
The
InsertParagraph
ormceInsertNewLine
commands did not delete the current selection like the native command does. -
The
InsertLineBreak
command did not replace selected content. -
If selected content straddled a parent and nested list, cutting the selection did not always set the list style to
'none'
on the parent list. -
Delete operations could behave incorrectly if the selection contains a
contenteditable="false"
element located at the edge of content. -
Spaces were not added correctly on some browsers when the insertion point was immediately before or after a
contenteditable="false"
block element. -
Images that used a Data URI were corrupted when the data wasn’t base64 encoded.
-
uploadImages
no longer triggers two change events if there is a removal of images on upload. -
Preview and Insert Template dialogs now display the correct content background color when using dark skins.
-
Dialogs no longer exceed window height on smaller screens.
-
UI components, such as dialogs, would in some cases cause the Esc keyup event to incorrectly trigger inside the editor.
-
Fixed incorrect word breaks in menus when the menu presented with a scrollbar.
-
Notifications did not properly reposition when toggling fullscreen mode.
-
Text alignments, such as flush left and centered, could not be applied to
<pre>
elements. -
Indenting or outdenting list items inside a block element that was inside another list item did not work.
-
Changing the list type of a list within another block element altered the parent element that contained that list.
-
Pasting columns in tables could, in some circumstances, result in an invalid table.
-
Copying columns in tables could sometimes result in an invalid copy.
-
Changing table properties with the
table_style_by_css
option set tofalse
would sometimes reset the table width. -
Custom elements added to otherwise blank lines were removed during serialization.
-
The editor’s autocompleter was not triggered at the start of nested list items.
-
Some function types in the TreeWalker API missed that it could return
undefined
. -
Nuget packages for .NET and .NET Core are now configured to copy TinyMCE into
/wwwroot/lib/
when TinyMCE is installed into a project.
6.0.3 - 2022-05-25
Fixed
-
Could not remove values when multiple cells were selected with the cell properties dialog.
-
Could not remove values when multiple rows were selected with the row properties dialog.
-
Empty lines that were formatted in a ranged selection using the
format_empty_lines
option were not kept in the serialized content. -
The
s
element was missing from the default schema text inline elements. -
Some text inline elements specified via the schema were not removed when empty by default.
6.0.2 - 2022-04-27
Fixed
-
Some media elements wouldn’t update when changing the source URL.
-
Inline toolbars flickered when switching between editors.
-
Multiple inline toolbars were shown if focused too quickly.
-
Added background and additional spacing for the text labeled buttons in the toolbar to improve visual clarity.
-
Toolbar split buttons with text used an incorrect width on touch devices.
6.0.1 - 2022-03-23
Fixed
-
Fixed the dev ZIP missing the required
bin
scripts to build from the source. -
Fixed a regression whereby text patterns couldn’t be updated at runtime.
-
Fixed an issue where tables with colgroups could be copied incorrectly in some cases.
-
Naked buttons better adapt to various background colors, improved text contrast in notifications.
-
The autocompleter would not fire the
AutocompleterStart
event nor close the menu in some cases. -
It wasn’t possible to select text right after an inline noneditable element.
-
Fixed a double border showing for the
tinymce-5
skin when usingtoolbar_location: 'bottom'
. -
Clipboard content was not generated correctly when cutting and copying
contenteditable="false"
elements. -
Fixed the box-shadow getting clipped in autocompletor popups.
-
The
buttonType
property did not work for dialog footer buttons. -
Fix contrast ratio for error messages.
6.0.0 - 2022-03-03
Added
-
New
editor.options
API to replace the oldeditor.settings
andeditor.getParam
APIs. -
New
editor.annotator.removeAll
API to remove all annotations by name. -
New
Resource.unload
API to make it possible to unload resources. -
New
FakeClipboard
API on thetinymce
global. -
New
dispatch()
function to replace the now deprecatedfire()
function in various APIs. -
New
AutocompleterStart
,AutocompleterUpdate
andAutocompleterEnd
events. -
New
mceAutocompleterClose
,mceAutocompleterReload
commands. -
New
mceInsertTableDialog
command to open the insert table dialog. -
New
slider
dialog component. -
New
imagepreview
dialog component, allowing preview and zoom of any image URL. -
New
buttonType
property on dialog button components, supportingtoolbar
style in addition toprimary
andsecondary
. -
The
tabindex
attribute is now copied from the target element to the iframe.
Improved
-
New default theme styling for TinyMCE 6 facelift with old skin available as
tinymce-5
andtinymce-5-dark
. -
The default height of editor has been increased from
200px
to400px
to improve the usability of the editor. -
The upload results returned from the
editor.uploadImages()
API now includes aremoved
flag, reflecting if the image was removed after a failed upload. -
The
ScriptLoader
,StyleSheetLoader
,AddOnManager
,PluginManager
andThemeManager
APIs will now return aPromise
when loading resources instead of using callbacks. -
A
ThemeLoadError
event is now fired if the theme fails to load. -
The
BeforeSetContent
event will now include the actual serialized content when passing in anAstNode
to theeditor.setContent
API. -
Improved support for placing the caret before or after noneditable elements within the editor.
-
Calls to
editor.selection.setRng
now update the caret position bookmark used when focus is returned to the editor. -
The
emoticon
plugin dialog, toolbar and menu item has been updated to use the more accurateEmojis
term. -
The dialog
redial
API will now only rerender the changed components instead of the whole dialog. -
The dialog API
setData
method now uses a deep merge algorithm to support partial nested objects. -
The dialog spec
initialData
type is nowPartial<T>
to match the underlying implementation details. -
Notifications no longer require a timeout to disable the close button.
-
The editor theme is now fetched in parallel with the icons, language pack and plugins.
Changed
-
TinyMCE is now MIT licensed.
-
Moved the
paste
plugin’s functionality to TinyMCE core. -
The
paste_data_images
option now defaults totrue
. -
Moved the
noneditable
plugin to TinyMCE core. -
Renamed the
noneditable_noneditable_class
option tononeditable_class
. -
Renamed the
noneditable_editable_class
option toeditable_class
. -
Moved the
textpattern
plugin to TinyMCE core. -
Renamed the
textpattern_patterns
option totext_patterns
. -
Moved the
hr
plugin’s functionality to TinyMCE core. -
Moved the
print
plugin’s functionality to TinyMCE core. -
Moved non-UI table functionality to core.
-
The
DomParser
API no longer uses a custom parser internally and instead uses the nativeDOMParser
API. -
The
editor.getContent()
API can provide custom content by preventing and overridingcontent
in theBeforeGetContent
event. This makes it consistent with theeditor.selection.getContent()
API. -
The
editor.setContent()
API can now be prevented using theBeforeSetContent
event. This makes it consistent with theeditor.selection.setContent()
API. -
Add-ons such as plugins and themes are no longer constructed using the
new
operator. -
A number of APIs that were not proper classes, are no longer constructed using the
new
operator. -
The Editor commands APIs will no longer fallback to executing the browsers native command functionality.
-
The Editor query command APIs will now return
false
or an empty string on removed editors. -
The
mceAddEditor
andmceToggleEditor
commands now take an object as their value to specify the id and editor options. -
The
mceInsertTable
command can no longer open the insert table dialog. Use themceInsertTableDialog
command instead. -
The
plugins
option now returns astring
array instead of a space separated string. -
The
media
plugin no longer treatsiframe
,video
,audio
orobject
elements as "special" and will validate the contents against the schema. -
The
images_upload_handler
option is no longer passed asuccess
orfailure
callback and instead requires aPromise
to be returned with the upload result. -
The
tinymce.settings
global property is no longer set upon initialization. -
The
change
event is no longer fired on first modification. -
The
GetContent
event will now always pass astring
for thecontent
property. -
Changed the default tag for the strikethrough format to the
s
tag when using a html 5 schema. -
The
strike
tag is automatically converted to thes
tag when using a html 5 schema. -
Aligning a table to the left or right will now use margin styling instead of float styling.
-
The
:
control character has been changed to~
for the schemavalid_elements
andextended_valid_elements
options. -
The
primary
property on dialog buttons has been deprecated. Use the newbuttonType
property instead. -
Changed the default statusbar element path delimiter from
»
to›
. -
Replaced the
Powered by Tiny
branding text with the Tiny logo. -
The default minimum height of editor has been changed to 100px to prevent the UI disappearing while resizing.
-
RGB colors are no longer converted to hex values when parsing or serializing content.
-
Replaced the
isDisabled()
function with anisEnabled()
function for various APIs. -
Replaced the
enable()
anddisable()
functions with asetEnabled(state)
function in various APIs. -
Replaced the
disabled
property with anenabled
property in various APIs. -
Replaced the
disable(name)
andenable(name)
functions with asetEnabled(name, state)
function in the Dialog APIs. -
Renamed the
tinymce.Env.os.isOSX
API totinymce.Env.os.isMacOS
. -
Renamed the
tinymce.Env.browser.isChrome
API totinymce.Env.browser.isChromium
to better reflect its functionality. -
Renamed the
getShortEndedElements
Schema API togetVoidElements
. -
Renamed the
font_formats
option tofont_family_formats
. -
Renamed the
fontselect
toolbar button andfontformats
menu item tofontfamily
. -
Renamed the
fontsize_formats
option tofont_size_formats
. -
Renamed the
fontsizeselect
toolbar button andfontsizes
menu item tofontsize
. -
Renamed the
formatselect
toolbar button andblockformats
menu item toblocks
. -
Renamed the
styleselect
toolbar button andformats
menu item tostyles
. -
Renamed the
lineheight_formats
option toline_height_formats
. -
Renamed the
getWhiteSpaceElements()
function togetWhitespaceElements()
in theSchema
API. -
Renamed the
mceInsertClipboardContent
commandcontent
property tohtml
to better reflect what data is passed. -
Renamed the
default_link_target
option tolink_default_target
for bothlink
andautolink
plugins. -
Renamed the
rel_list
option tolink_rel_list
for thelink
plugin. -
Renamed the
target_list
option tolink_target_list
for thelink
plugin. -
The default value for the
link_default_protocol
option has been changed tohttps
instead ofhttp
. -
The default value for the
element_format
option has been changed tohtml
. -
The default value for the
schema
option has been changed tohtml5
. -
The default value for the
table_style_by_css
option has been changed totrue
. -
The default value for the
table_use_colgroups
option has been changed totrue
.
Fixed
-
The object returned from the
editor.fire()
API was incorrect if the editor had been removed. -
The
editor.selection.getContent()
API did not respect theno_events
argument. -
The
editor.annotator.remove
API did not keep selection when removing the annotation. -
The
GetContent
event was not fired when gettingtree
ortext
formats using theeditor.selection.getContent()
API. -
The
beforeinput
andinput
events would sometimes not fire as expected when deleting content. -
The
table
plugin would sometimes not correctly handle headers in thetfoot
section. -
The
silver
theme UI was incorrectly rendered before plugins had initialized. -
The aria labels for the color picker dialog were not translated.
-
Fixed sub-menu items not read by screen readers. Patch contributed by westonkd.
-
Dialog labels and other text-based UI properties did not escape HTML markup.
-
Anchor elements would render incorrectly when using the
allow_html_in_named_anchor
option. -
The
AstNode
HTML serializer did not serializepre
ortextarea
elements correctly when they contained newlines. -
The Home or End keys would move out of a editable element contained within a noneditable element.
-
Dialogs could not be opened in inline mode before the editor had been rendered.
-
Clicking on menu items could cause an unexpected console warning if the
onAction
function caused the menu to close. -
Fixed various color and contrast issues for the dark skins.
Deprecated
-
The dialog button component’s
primary
property has been deprecated and will be removed in the next major release. Use the newbuttonType
property instead. -
The
fire()
function oftinymce.Editor
,tinymce.dom.EventUtils
,tinymce.dom.DOMUtils
,tinymce.util.Observable
andtinymce.util.EventDispatcher
has been deprecated and will be removed in the next major release. Use thedispatch()
function instead. -
The
content
property on theSetContent
event has been deprecated and will be removed in the next major release. -
The return value of the
editor.setContent
API has been deprecated and will be removed in the next major release.
Removed
-
Removed support for Microsoft Internet Explorer 11.
-
Removed support for Microsoft Word from the opensource paste functionality.
-
Removed support for the
plugins
option allowing a mixture of a string array and of space separated strings. -
Removed support for the deprecated
false
value for theforced_root_block
option. -
Removed the jQuery integration.
-
Removed the
imagetools
plugin, which is now classified as a Premium plugin. -
Removed the
imagetools
dialog component. -
Removed the
toc
plugin, which is now classified as a Premium plugin. -
Removed the
tabfocus
plugin. -
Removed the
textpattern
plugin’s API as part of moving it to core. -
Removed the
table
plugin’s API. -
Removed the callback for the
EditorUpload
API. -
Removed the legacy browser detection properties from the
Env
API. -
Removed the
filterNode
method from theDomParser
API. -
Removed the
SaxParser
API. -
Removed the
tinymce.utils.Promise
API. -
Removed the
toHex
function for theDOMUtils
andStyles
APIs. -
Removed the
execCommand
handler function from the plugin and theme interfaces. -
Removed the
editor.settings
property as it has been replaced by the new Options API. -
Removed the
shortEnded
andfixed
properties ontinymce.html.Node
class. -
Removed the
mceInsertRawHTML
command. -
Removed the style field from the
image
plugin dialog advanced tab. -
Removed the
paste_filter_drop
option as native drag and drop handling is no longer supported. -
Removed the legacy
mobile
theme. -
Removed the deprecated
$
,Class
,DomQuery
andSizzle
APIs. -
Removed the deprecated
Color
,JSON
,JSONP
andJSONRequest
. -
Removed the deprecated
XHR
API. -
Removed the deprecated
setIconStroke
Split Toolbar Button API. -
Removed the deprecated
editors
property fromEditorManager
. -
Removed the deprecated
execCallback
andsetMode
APIs fromEditor
. -
Removed the deprecated
addComponents
anddependencies
APIs fromAddOnManager
. -
Removed the deprecated
clearInterval
,clearTimeout
,debounce
,requestAnimationFrame
,setInterval
,setTimeout
andthrottle
APIs fromDelay
. -
Removed the deprecated
Schema
options. -
Removed the deprecated
file_browser_callback_types
,force_hex_style_colors
andimages_dataimg_filter
options. -
Removed the deprecated
filepicker_validator_handler
,force_p_newlines
,gecko_spellcheck
,tab_focus
,table_responsive_width
andtoolbar_drawer
options. -
Removed the deprecated
media_scripts
option in themedia
plugin. -
Removed the deprecated
editor_deselector
,editor_selector
,elements
,mode
andtypes
legacy TinyMCE init options. -
Removed the deprecated
content_editable_state
andpadd_empty_with_br
options. -
Removed the deprecated
autoresize_on_init
option from theautoresize
plugin. -
Removed the deprecated
fullpage
,spellchecker
,bbcode
,legacyoutput
,colorpicker
,contextmenu
andtextcolor
plugins. -
Removed the undocumented
editor.editorCommands.hasCustomCommand
API. -
Removed the undocumented
mceResetDesignMode
,mceRepaint
andmceBeginUndoLevel
commands.