TinyMCE 5.4
Overview
TinyMCE 5.4 was released for TinyMCE Enterprise and Tiny Cloud on Thursday, July 23rd, 2020. It includes TinyMCE 5.4.1 and additional changes to premium plugins. These release notes provide an overview of the changes for TinyMCE 5.4, including:
This is the Tiny Cloud and TinyMCE Enterprise release notes. For information on the latest community version of TinyMCE, see: TinyMCE Changelog. |
TinyMCE 5.4 new features and enhancements
The following new features and enhancements were added for the TinyMCE 5.4 release.
Updates and additions to the Table plugin
The TinyMCE 5.4 release includes the following improvements for the table (table
) plugin:
-
Adds: commands, APIs, and icons for; cut, copy, and paste columns.
-
Adds toolbar button icons for the cut, copy, and paste rows.
-
Adds a new
mceTableApplyCellStyle
command for applying selected styles to table cells. -
Adds a new
table_header_type
option for setting the HTML structure used for table header rows. -
Adds table row, column, and cell type commands and queries.
-
Adds a new
table_sizing_mode
option and a newmceTableSizingMode
command for setting the method for measuring table cell width:fixed
,relative
, orresponsive
. -
Extends the
mceInsertTable
command for adding tables without the dialog.
For information on the table plugin, see: Table plugin.
For a list of:
-
Menu items, including table-related menu items and menu sections, see: Menu Items Available for TinyMCE.
-
Available icons, including table-related icons, see: Available icons.
-
Table plugin APIs, see: Table plugin - APIs.
-
Table plugin commands, see: Table plugin - Commands.
Icon identifiers are now case-insensitive
To simplify creating custom components and plugins, the icon look-up is now case-insensitive. This will assist with adding icons to custom toolbar buttons, menu sections, and menu items.
For list of icons provided with TinyMCE, see: Available icons.
For information on:
-
Creating custom UI components, see: User interface components.
-
Creating and adding a custom icon pack, see: Create an icon pack for TinyMCE.
New option for blocking unsupported files from being drag and dropped into the editor
The block_unsupported_drop
option blocks unsupported images and files from being dropped into the editor. This option is enabled by default. If this option is disabled (false
), users can drop an unsupported file into the editor, which will cause the browser to navigate away from the page containing the editor.
For information on the block_unsupported_drop
option, see: Image & file options - block_unsupported_drop
.
Accompanying Premium Plugin changes
The following premium plugin updates were released alongside TinyMCE 5.4.
Advanced Code Editor 2.1.0
The TinyMCE 5.4 release includes an accompanying release of the Advanced Code Editor premium plugin.
Advanced Code Editor 2.1.0 provides the following improvements:
-
Added search/replace support.
-
Fixed the editor
referrer_policy
option not working when loading additional resources.
For information on the Advanced Code Editor plugin, see: Advanced Code Editor plugin.
PowerPaste 5.3.1
The TinyMCE 5.4 release includes an accompanying release of the PowerPaste premium plugin.
PowerPaste 5.3.1 provides the following improvements:
-
Fixed PowerPaste not able to load the
wordimport.js
resource when bundled. -
Fixed the editor
referrer_policy
option not working when loading additional resources.
For information on the PowerPaste plugin, see: PowerPaste plugin.
Accompanying Premium self-hosted server-side component changes
The TinyMCE 5.4 release includes accompanying changes affecting the TinyMCE self-hosted services for the following plugins:
-
The Enhanced Media Embed plugin (
mediaembed
) -
The Image Tools plugin (
imagetools
) -
The Link Checker plugin (
linkchecker
) -
The Spell Checker Pro plugin (
tinymcespellchecker
)
The Java server-side components (ephox-spelling.war
, ephox-hyperlinking.war
, and ephox-image-proxy.war
) have been updated to version 2.5.0.
This version requires Java 8 or higher. For information on the removal of Java 7 support, see: Removal of Java 7 support for TinyMCE 5.3 and later.
For information on:
-
The Spell Checker Pro plugin, see: Spell Checker Pro plugin.
-
The Link Checker plugin, see: Link Checker plugin.
-
The Image Tools plugin, see: Image Tools plugin.
-
The Enhanced Media Embed plugin, see: Enhanced Media Embed plugin.
-
Deploying the server-side components, see: Server-side component installation.
Security update for self-hosted server-side components
Version 2.5.0 provides security updates for the Java-based server-side components. To deploy the updated version of the server-side components:
-
Update your Java Application Server to the new minimum required version:
-
Eclipse Jetty 9.4 or later
-
Apache Tomcat:
-
9 or later
-
8.5.12+
-
8.0.42+
-
7.0.76+
-
-
-
Replace the existing server-side
.war
files with the version 2.5.0.war
files bundled with TinyMCE 5.4 or later.
For information on:
-
Deploying the server-side components, see: Server-side component installation.
-
Deploying the server-side components using Docker, see: Containerized service deployments.
Minor changes for TinyMCE 5.4
TinyMCE 5.4 introduces the following minor changes:
-
Added keyboard navigation support to menus and toolbars when the editor is in a ShadowRoot.
-
Added the ability for menus to be clicked when the editor is in an open shadow root.
-
Added the
Editor.ui.styleSheetLoader
API for loading stylesheets within the Document or ShadowRoot containing the editor UI. -
Added the
StyleSheetLoader
module to the public API. -
Added Oxide variables for styling the
select
element and headings in dialog content. -
Added font related Oxide variables for secondary buttons, allowing for custom styling.
-
Changed
advlist
toolbar buttons to only show a dropdown list if there is more than one option. -
Changed stylesheet loading, so that UI skin stylesheets can load in a ShadowRoot if required.
-
Changed the DOM location of menus so that they display correctly when the editor is in a ShadowRoot.
-
Changed the table plugin to correctly detect all valid header row structures.
General bug fixes
TinyMCE 5.4 provides fixes for the following bugs:
-
Fixed tables with no defined width being converted to a
fixed
width table when modifying the table. -
Fixed the
autosave
isEmpty
API incorrectly detecting non-empty content as empty. -
Fixed table
Paste row after
andPaste row before
menu items not disabled when nothing was available to paste. -
Fixed a selection performance issue with large tables on Microsoft Internet Explorer and Edge.
-
Fixed filters for screening commands from the undo stack to be case-insensitive.
-
Fixed
fullscreen
plugin now removes all classes when the editor is closed. -
Fixed handling of mixed-case icon identifiers (names) for UI elements.
-
Fixed leading and trailing spaces lost when using
editor.selection.getContent({ format: 'text' })
. -
Fixed an issue where changing the URL with the quicklink toolbar caused unexpected undo behavior.
-
Fixed an issue where removing formatting within a table cell would cause Internet Explorer 11 to scroll to the end of the table.
-
Fixed an issue where the
allow_html_data_urls
setting was not correctly applied. -
Fixed the
autolink
feature so that it no longer treats a string with multiple "@" characters as an email address. -
Fixed an issue where removing the editor would leave unexpected attributes on the target element.
-
Fixed the
link
plugin now suggestmailto:
when the text contains an '@' and no slashes (/
). -
Fixed the
valid_children
check of custom elements now allows a wider range of characters in names. -
Fixed the Search and Replace plugin incorrectly including zero-width caret characters in search results.
-
Fixed dragging and dropping unsupported files navigating the browser away from the editor.
-
Fixed undo levels not created on browser handled drop or paste events.
-
Fixed Oxide checklist styles not showing when printing.
-
Fixed bug with
scope
attribute not being added to the cells of header rows.
Security fixes
TinyMCE 5.4 provides fixes for the following security issues:
-
Fixed content in an iframe element parsing as DOM elements instead of text content.
Deprecated features
The following features have been deprecated with the release of TinyMCE 5.4:
The free TinyMCE Spell Checker plugin
The free TinyMCE Spell Checker plugin (spellchecker
) has been deprecated and will be removed in a future major release of TinyMCE. This includes both the editor plugin and the PHP backend program.
This change does not affect:
To develop and maintain a new spellchecking plugin based on the free TinyMCE Spell Checker plugin:
-
Fork the PHP backend program from the tinymce/tinymce_spellchecker_php GitHub repository.
-
Extract the Spell Checker user interface from the Spellchecker plugin directory in the tinymce/tinymce GitHub repository.
The table_responsive_width
option
The table_responsive_width
option has been deprecated with the release of TinyMCE 5.4. This option has been replaced by table_sizing_mode
.
Known issues
This section describes issues that users of TinyMCE 5.4 may encounter, as well as possible workarounds for these issues.
Outline
Top and bottom editor anchors appear in links autocomplete list when disabled
Issue
This issue affects the following options:
-
anchor_top
-
anchor_bottom
When these options are set to false
, the relevant anchors should not appear as autocomplete options in the link dialog. These anchors will appear in the autocomplete list when these options are set to false
in TinyMCE 5.4.0 and TinyMCE 5.4.1.
For information on:
-
The
anchor_top
option, see: URL handling options -anchor_top
. -
The
anchor_bottom
option, see: URL handling options -anchor_bottom
.
Workaround
To disable all autocomplete/typeahead URLs in the link dialog, set the typeahead_urls
option to false
.
For example:
tinymce.init({
selector: 'textarea',
typeahead_urls: false
});
For information on the typeahead_urls
option, see: Advanced editing behaviors - typeahead_urls
.
Upgrading to the latest version of TinyMCE 5
The procedure for upgrading to the latest version of TinyMCE 5 depends on the deployment type.
Upgrading Tiny Cloud
Tiny Cloud provides the latest enterprise version of TinyMCE. For information on configuring Tiny Cloud, see: the Cloud deployment guide.
Upgrading TinyMCE Self-hosted manually
To upgrade to TinyMCE 5.10 using a manually downloaded package:
-
Backup the
tinymce/
directory so any customizations can be restored after the upgrade.Customizations for TinyMCE are typically stored in the following directories:
tinymce/ ├── icons/ ├── langs/ ├── plugins/ ├── skins/ │ ├── content/ │ └── ui/ └── themes/
-
Download the latest version of TinyMCE.
-
For the TinyMCE Community Version, download
tinymce_<VERSION>.zip
from Get TinyMCE - Self-hosted releases, where<VERSION>
is the latest version of TinyMCE. -
For the TinyMCE Enterprise Version, download the TinyMCE Enterprise Bundle from Tiny Account > Downloads. The downloaded file will be named
enterprise_latest.zip
.
-
-
Extract the downloaded
.zip
file to a temporary location. -
(If required) Install the latest language packs from Get TinyMCE - Language Packages.
-
Copy customizations to the new
tinymce/
directory. Ensure that only custom changes are added the newtinymce/
directory, such as:-
Custom icons packs
-
Custom plugins
-
Custom skins
-
Custom themes
-
-
Delete the existing
tinymce/
directory and replace with the newtinymce/
.
To simplify the upgrade process to future versions of TinyMCE:
|