1.2.6 • Published 1 year ago

@tjdata/s-editor v1.2.6

Weekly downloads
-
License
ISC
Repository
-
Last release
1 year ago

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Unreleased

6.3.1 - 2022-12-06

Fixed

  • HTML in messages for the WindowManager.alert and WindowManager.confirm APIs were not properly sanitized. #TINY-3548

6.3.0 - 2022-11-23

Added

  • New expand function added to tinymce.selection which expands the selection around the nearest word. #TINY-9001
  • New expand function added to tinymce.dom.RangeUtils to return a new range expanded around the nearest word. #TINY-9001
  • New color_map_background and color_map_foreground options which set the base colors used in the backcolor and forecolor toolbar buttons and menu items. #TINY-9184
  • Added optional storageKey property to colorinput component and colorswatch fancy menu item. #TINY-9184
  • New addView function added to editor.ui.registry which makes it possible to register custom editor views. #TINY-9210
  • New ToggleView command which makes it possible to hide or show registered custom views. #TINY-9210
  • New color_default_foreground and color_default_background options to set the initial default color for the forecolor and backcolor toolbar buttons and menu items. #TINY-9183
  • New getTransparentElements function added to tinymce.html.Schema to return a map object of transparent HTML elements. #TINY-9172
  • Added ToggleToolbarDrawer event to subscribe to toolbar’s opening and closing. #TINY-9271

Changed

  • Transparent elements, like anchors, are now allowed in the root of the editor body if they contain blocks. #TINY-9172
  • Colorswatch keyboard navigation now starts on currently selected color if present in the colorswatch. #TINY-9283
  • setContent is now allowed to accept any custom keys and values as a second options argument. #TINY-9143

Improved

  • Transparent elements, like anchors, can now contain block elements. #TINY-9172
  • Colorswatch now displays a checkmark for selected color. #TINY-9283
  • Color picker dialog now starts on the appropriate color for the cursor position. #TINY-9213

Fixed

  • Parsing media content would cause a memory leak, which for example occurred when using the getContent API. #TINY-9186
  • Dragging a noneditable element toward the bottom edge would cause the page to scroll up. #TINY-9025
  • Range expanding capabilities would behave inconsistently depending on where the cursor was placed. #TINY-9029
  • Compilation errors were thrown when using TypeScript 4.8. #TINY-9161
  • Line separator scrolling in floating toolbars. #TINY-8948
  • A double bottom border appeared on inline mode editor for the tinymce-5 skin. #TINY-9108
  • The editor header showed up even with no menubar and toolbar configured. #TINY-8819
  • Inline text pattern no longer triggers if it matches only the end but not the start. #TINY-8947
  • Matches of inline text patterns that are similar are now managed correctly. #TINY-8949
  • Using editor.selection.getContent({ format: 'text' }) or editor.getContent({ format: 'text' }) would sometimes deselect selected radio buttons. #TINY-9213
  • The context toolbar prevented the user from placing the cursor at the edges of the editor. #TINY-8890
  • The Quick Insert context toolbar provided by the quickbars plugin showed when the cursor was in a fake block caret. #TINY-9190
  • The editor.selection.getRng() API was not returning a proper range on hidden editors in Firefox. #TINY-9259
  • The editor.selection.getBookmark() API was not returning a proper bookmark on hidden editors in Firefox. #TINY-9259
  • Dragging a noneditable element before or after another noneditable element now works correctly. #TINY-9253
  • The restored selection after a redo or undo action was not scrolled into view. #TINY-9222
  • A newline could not be inserted when the selection was restored from a bookmark after an inline element with a contenteditable="false" attribute. #TINY-9194
  • The global tinymce.dom.styleSheetLoader was not affected by the content_css_cors option. #TINY-6037
  • The caret was moved to the previous line when a text pattern executed a mceInsertContent command on Enter key when running on Firefox. #TINY-9193

6.2.0 - 2022-09-08

Added

  • New text_patterns_lookup option to provide additional text patterns dynamically. #TINY-8778
  • New promotion element has been added to the default UI. It can be disabled using the new promotion option. #TINY-8840
  • New format_noneditable_selector option to specify the contenteditable="false" elements that can be wrapped in a format. #TINY-8905
  • Added allow as a valid attribute for the iframe element in the editor schema. #TINY-8939
  • New search field in the MenuButton that shows a search field at the top of the menu, and refetches items when the search field updates. #TINY-8952

Improved

  • The formatter can now apply a format to a contenteditable="false" element by wrapping it. Configurable using the format_noneditable_selector option. #TINY-8905
  • The autocompleter now supports a multiple character trigger using the new trigger configuration. #TINY-8887
  • The formatter now applies some inline formats, such as color and font size, to list item elements when the entire item content is selected. #TINY-8961
  • The installed and available plugin lists in the Help dialog are now sorted alphabetically. #TINY-9019
  • Alignment can now be applied to more types of embedded media elements. #TINY-8687

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. #TINY-8632
  • The @toolbar-separator-color oxide variable now affects the color of the separator between the Menubar and Toolbar only. #TINY-8632
  • Available Premium plugins, which are listed by name in the Help dialog, are no longer translated. #TINY-9019

Fixed

  • The Autolink plugin did not work when text nodes in the content were fragmented. #TINY-3723
  • Fixed multiple incorrect types on public APIs found while enabling TypeScript strict mode. #TINY-8806
  • The number of blank lines returned from editor.getContent({format: 'text'}) differed between browsers. #TINY-8579
  • The editor focused via the auto_focus option was not scrolled into the viewport. #TINY-8785
  • Adding spaces immediately after a contenteditable="false" block did not work properly in some circumstances. #TINY-8814
  • Elements with only data-* custom attributes were sometimes removed when they should not be removed. #TINY-8755
  • Selecting a figure with class="image" incorrectly highlighted the link toolbar button. #TINY-8832
  • Specifying a single, non-default list style for the advlist_bullet_styles and advlist_number_styles options was not respected. #TINY-8721
  • Fixed multiple issues that occurred when formatting contenteditable elements. #TINY-8905
  • Spaces could be incorrectly added to urlinput dialog components (commonly but not exclusively presented in the Insert/Edit Link dialog) in certain cases. #TINY-8775
  • The text patterns logic threw an error when there were fragmented text nodes in a paragraph. #TINY-8779
  • Dragging a contentEditable=false element towards a document’s edge did not cause scrolling. #TINY-8874
  • Parsing large documents no longer throws a Maximum call stack size exceeded exception. #TINY-6945
  • DomParser filter matching was not checked between filters, which could lead to an exception in the parser. #TINY-8888
  • contenteditable="false" lists can no longer be toggled; and contenteditable="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. #TINY-8920
  • Removed extra bottom padding in the context toolbar of the tinymce-5 skin. #TINY-8980
  • Fixed a regression where pressing Enter added or deleted content outside the selection. #TINY-9101
  • Fixed a bug where pressing Enter deleted selected contenteditable="false" <pre> elements. #TINY-9101
  • The editor.insertContent() API did not respect the no_events argument. #TINY-9140

Deprecated

  • The autocompleter configuration property, ch, has been deprecated. It will be removed in the next major release. Use the trigger property instead. #TINY-8887

6.1.2 - 2022-07-29

Fixed

  • Reverted the undo level fix in the autolink plugin as it caused duplicated content in some edge cases. #TINY-8936

6.1.1 - 2022-07-27

Fixed

  • Invalid special elements were not cleaned up correctly during sanitization. #TINY-8780
  • An exception was thrown when deleting all content if the start or end of the document had a contenteditable="false" element. #TINY-8877
  • When a sidebar was opened using the sidebar_show option, its associated toolbar button was not highlighted. #TINY-8873
  • When converting a URL to a link, the autolink plugin did not fire an ExecCommand event, nor did it create an undo level. #TINY-8896
  • Worked around a Firefox bug which resulted in cookies not being available inside the editor content. #TINY-8916
  • <pre> content pasted into a <pre> block that had inline styles or was noneditable now merges correctly with the surrounding content. #TINY-8860
  • After a codesample was pasted, the insertion point was placed incorrectly. #TINY-8861

6.1.0 - 2022-06-29

Added

  • New sidebar_show option to show the specified sidebar on initialization. #TINY-8710
  • New newline_behavior option controls what happens when the Return or Enter key is pressed or the mceInsertNewLine command is used. #TINY-8458
  • New iframe_template_callback option in the Media plugin. Patch provided by Namstel. #TINY-8684
  • New transparent property for iframe dialog component. #TINY-8534
  • New removeAttributeFilter and removeNodeFilter functions added to the DomParser and DOM Serializer APIs. #TINY-7847
  • New dispatchChange function added to the UndoManager API to fire the change with current editor status as level and current undoManager layer as lastLevel. #TINY-8641

Improved

  • Clearer focus states for buttons while navigating with a keyboard. #TINY-8557
  • Support annotating certain block elements directly when using the editor's Annotation API. #TINY-8698
  • The mceLink command can now take the value { dialog: true } to always open the link dialog. #TINY-8057
  • All help dialog links to https://www.tiny.cloud now include rel="noopener" to avoid potential security issues. #TINY-8834

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. #TINY-6559
  • The default value for end_container_on_empty_block option has been changed to 'blockquote'. #TINY-6559
  • Link menu and toolbar buttons now always execute the mceLink command. #TINY-8057
  • Toggling fullscreen mode when using the Fullscreen plugin now also fires the ResizeEditor event. #TINY-8701
  • Getting the editor's text content now returns newlines instead of an empty string if more than one empty paragraph exists. #TINY-8578
  • Custom elements are now treated as non-empty elements by the schema. #TINY-4784
  • The autocompleter's menu HTML element is now positioned instead of the wrapper. #TINY-6476
  • Choice menu items will now use the 'menuitemradio' aria role to better reflect that only a single item can be active. #TINY-8602

Fixed

  • Some Template plugin option values were not escaped properly when doing replacement lookups with Regular Expressions. #TINY-7433
  • Copy events were not dispatched in readonly mode. #TINY-6800
  • <pre> tags were not preserved when copying and pasting. #TINY-7719
  • The URL detection used for autolink and smart paste did not work if a path segment contained valid characters such as ! and :. #TINY-8069
  • In some cases pressing the Backspace or Delete key would incorrectly step into tables rather than remain outside. #TINY-8592
  • Links opened when Alt+Enter or Option+Return was typed even when preventDefault() was called on the keydown event. #TINY-8661
  • Inconsistent visual behavior between choosing Edit -> Select All and typing Ctrl+A or Cmd+A when a document contained an image. #TINY-4550
  • 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. #TINY-7795
  • Triple-clicking did not select a paragraph in Google Chrome in some circumstances. #TINY-8215
  • Images were not showing as selected when selected along with other content. #TINY-5947
  • Selection direction was not stored or restored when getting or setting selection bookmarks. #TINY-8599
  • When text within an inline boundary element was selected and the right-arrow key was pressed, the insertion point incorrectly moved to the left. #TINY-8601
  • In some versions of Safari, the editor.selection.isForward() API could throw an exception due to an invalid selection. #TINY-8686
  • The selection is no longer incorrectly moved inside a comment by the editor.selection.normalize() API. #TINY-7817
  • The InsertParagraph or mceInsertNewLine commands did not delete the current selection like the native command does. #TINY-8606
  • The InsertLineBreak command did not replace selected content. #TINY-8458
  • 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. #TINY-8078
  • Delete operations could behave incorrectly if the selection contains a contenteditable="false" element located at the edge of content. #TINY-8729
  • Spaces were not added correctly on some browsers when the insertion point was immediately before or after a contenteditable="false" block element. #TINY-8588
  • Images that used a Data URI were corrupted when the data wasn't base64 encoded. #TINY-8337
  • uploadImages no longer triggers two change events if there is a removal of images on upload. #TINY-8641
  • Preview and Insert Template dialogs now display the correct content background color when using dark skins. #TINY-8534
  • Dialogs no longer exceed window height on smaller screens. #TINY-8146
  • UI components, such as dialogs, would in some cases cause the Esc keyup event to incorrectly trigger inside the editor. #TINY-7005
  • Fixed incorrect word breaks in menus when the menu presented with a scrollbar. #TINY-8572
  • Notifications did not properly reposition when toggling fullscreen mode. #TINY-8701
  • Text alignments, such as flush left and centered, could not be applied to <pre> elements. #TINY-7715
  • Indenting or outdenting list items inside a block element that was inside another list item did not work. #TINY-7209
  • Changing the list type of a list within another block element altered the parent element that contained that list. #TINY-8068
  • Pasting columns in tables could, in some circumstances, result in an invalid table. #TINY-8040
  • Copying columns in tables could sometimes result in an invalid copy. #TINY-8040
  • Changing table properties with the table_style_by_css option set to false would sometimes reset the table width. #TINY-8758
  • Custom elements added to otherwise blank lines were removed during serialization. #TINY-4784
  • The editor's autocompleter was not triggered at the start of nested list items. #TINY-8759
  • Some function types in the TreeWalker API missed that it could return undefined. #TINY-8592
  • Nuget packages for .NET and .NET Core are now configured to copy TinyMCE into /wwwroot/lib/ when TinyMCE is installed into a project. #TINY-8611

6.0.3 - 2022-05-25

Fixed

  • Could not remove values when multiple cells were selected with the cell properties dialog. #TINY-8625
  • Could not remove values when multiple rows were selected with the row properties dialog. #TINY-8625
  • Empty lines that were formatted in a ranged selection using the format_empty_lines option were not kept in the serialized content. #TINY-8639
  • The s element was missing from the default schema text inline elements. #TINY-8639
  • Some text inline elements specified via the schema were not removed when empty by default. #TINY-8639

6.0.2 - 2022-04-27

Fixed

  • Some media elements wouldn't update when changing the source URL. #TINY-8660
  • Inline toolbars flickered when switching between editors. #TINY-8594
  • Multiple inline toolbars were shown if focused too quickly. #TINY-8503
  • Added background and additional spacing for the text labeled buttons in the toolbar to improve visual clarity. #TINY-8617
  • Toolbar split buttons with text used an incorrect width on touch devices. #TINY-8647

6.0.1 - 2022-03-23

Fixed

  • Fixed the dev ZIP missing the required bin scripts to build from the source. #TINY-8542
  • Fixed a regression whereby text patterns couldn't be updated at runtime. #TINY-8540
  • Fixed an issue where tables with colgroups could be copied incorrectly in some cases. #TINY-8568
  • Naked buttons better adapt to various background colors, improved text contrast in notifications. #TINY-8533
  • The autocompleter would not fire the AutocompleterStart event nor close the menu in some cases. #TINY-8552
  • It wasn't possible to select text right after an inline noneditable element. #TINY-8567
  • Fixed a double border showing for the tinymce-5 skin when using toolbar_location: 'bottom'. #TINY-8564
  • Clipboard content was not generated correctly when cutting and copying contenteditable="false" elements. #TINY-8563
  • Fixed the box-shadow getting clipped in autocompletor popups. #TINY-8573
  • The buttonType property did not work for dialog footer buttons. #TINY-8582
  • Fix contrast ratio for error messages. #TINY-8586

6.0.0 - 2022-03-03

Added

  • New editor.options API to replace the old editor.settings and editor.getParam APIs. #TINY-8206
  • New editor.annotator.removeAll API to remove all annotations by name. #TINY-8195
  • New Resource.unload API to make it possible to unload resources. #TINY-8431
  • New FakeClipboard API on the tinymce global. #TINY-8353
  • New dispatch() function to replace the now deprecated fire() function in various APIs. #TINY-8102
  • New AutocompleterStart, AutocompleterUpdate and AutocompleterEnd events. #TINY-8279
  • New mceAutocompleterClose, mceAutocompleterReload commands. #TINY-8279
  • New mceInsertTableDialog command to open the insert table dialog. #TINY-8273
  • New slider dialog component. #TINY-8304
  • New imagepreview dialog component, allowing preview and zoom of any image URL. #TINY-8333
  • New buttonType property on dialog button components, supporting toolbar style in addition to primary and secondary. #TINY-8304
  • The tabindex attribute is now copied from the target element to the iframe. #TINY-8315

Improved

  • New default theme styling for TinyMCE 6 facelift with old skin available as tinymce-5 and tinymce-5-dark. #TINY-8373
  • The default height of editor has been increased from 200px to 400px to improve the usability of the editor. #TINY-6860
  • The upload results returned from the editor.uploadImages() API now includes a removed flag, reflecting if the image was removed after a failed upload. #TINY-7735
  • The ScriptLoader, StyleSheetLoader, AddOnManager, PluginManager and ThemeManager APIs will now return a Promise when loading resources instead of using callbacks. #TINY-8325
  • A ThemeLoadError event is now fired if the theme fails to load. #TINY-8325
  • The BeforeSetContent event will now include the actual serialized content when passing in an AstNode to the editor.setContent API. #TINY-7996
  • Improved support for placing the caret before or after noneditable elements within the editor. #TINY-8169
  • Calls to editor.selection.setRng now update the caret position bookmark used when focus is returned to the editor. #TINY-8450
  • The emoticon plugin dialog, toolbar and menu item has been updated to use the more accurate Emojis term. #TINY-7631
  • The dialog redial API will now only rerender the changed components instead of the whole dialog. #TINY-8334
  • The dialog API setData method now uses a deep merge algorithm to support partial nested objects. #TINY-8333
  • The dialog spec initialData type is now Partial<T> to match the underlying implementation details. #TINY-8334
  • Notifications no longer require a timeout to disable the close button. #TINY-6679
  • The editor theme is now fetched in parallel with the icons, language pack and plugins. #TINY-8453

Changed

  • TinyMCE is now MIT licensed. #TINY-2316
  • Moved the paste plugin's functionality to TinyMCE core. #TINY-8310
  • The paste_data_images option now defaults to true. #TINY-8310
  • Moved the noneditable plugin to TinyMCE core. #TINY-8311
  • Renamed the noneditable_noneditable_class option to noneditable_class. #TINY-8311
  • Renamed the noneditable_editable_class option to editable_class. #TINY-8311
  • Moved the textpattern plugin to TinyMCE core. #TINY-8312
  • Renamed the textpattern_patterns option to text_patterns. #TINY-8312
  • Moved the hr plugin's functionality to TinyMCE core. #TINY-8313
  • Moved the print plugin's functionality to TinyMCE core. #TINY-8314
  • Moved non-UI table functionality to core. #TINY-8273
  • The DomParser API no longer uses a custom parser internally and instead uses the native DOMParser API. #TINY-4627
  • The editor.getContent() API can provide custom content by preventing and overriding content in the BeforeGetContent event. This makes it consistent with the editor.selection.getContent() API. #TINY-8018
  • The editor.setContent() API can now be prevented using the BeforeSetContent event. This makes it consistent with the editor.selection.setContent() API. #TINY-8018
  • Add-ons such as plugins and themes are no longer constructed using the new operator. #TINY-8256
  • A number of APIs that were not proper classes, are no longer constructed using the new operator. #TINY-8322
  • The Editor commands APIs will no longer fallback to executing the browsers native command functionality. #TINY-7829
  • The Editor query command APIs will now return false or an empty string on removed editors. #TINY-7829
  • The mceAddEditor and mceToggleEditor commands now take an object as their value to specify the id and editor options. #TINY-8138
  • The mceInsertTable command can no longer open the insert table dialog. Use the mceInsertTableDialog command instead. #TINY-8273
  • The plugins option now returns a string array instead of a space separated string. #TINY-8455
  • The media plugin no longer treats iframe, video, audio or object elements as "special" and will validate the contents against the schema. #TINY-8382
  • The images_upload_handler option is no longer passed a success or failure callback and instead requires a Promise to be returned with the upload result. #TINY-8325
  • The tinymce.settings global property is no longer set upon initialization. #TINY-7359
  • The change event is no longer fired on first modification. #TINY-6920
  • The GetContent event will now always pass a string for the content property. #TINY-7996
  • Changed the default tag for the strikethrough format to the s tag when using a html 5 schema. #TINY-8262
  • The strike tag is automatically converted to the s tag when using a html 5 schema. #TINY-8262
  • Aligning a table to the left or right will now use margin styling instead of float styling. #TINY-6558
  • The : control character has been changed to ~ for the schema valid_elements and extended_valid_elements options. #TINY-6726
  • The primary property on dialog buttons has been deprecated. Use the new buttonType property instead. #TINY-8304
  • Changed the default statusbar element path delimiter from » to . #TINY-8372
  • Replaced the Powered by Tiny branding text with the Tiny logo. #TINY-8371
  • The default minimum height of editor has been changed to 100px to prevent the UI disappearing while resizing. #TINY-6860
  • RGB colors are no longer converted to hex values when parsing or serializing content. #TINY-8163
  • Replaced the isDisabled() function with an isEnabled() function for various APIs. #TINY-8101
  • Replaced the enable() and disable() functions with a setEnabled(state) function in various APIs. #TINY-8101
  • Replaced the disabled property with an enabled property in various APIs. #TINY-8101
  • Replaced the disable(name) and enable(name) functions with a setEnabled(name, state) function in the Dialog APIs. #TINY-8101
  • Renamed the tinymce.Env.os.isOSX API to tinymce.Env.os.isMacOS. #TINY-8175
  • Renamed the tinymce.Env.browser.isChrome API to tinymce.Env.browser.isChromium to better reflect its functionality. #TINY-8300
  • Renamed the getShortEndedElements Schema API to getVoidElements. #TINY-8344
  • Renamed the font_formats option to font_family_formats. #TINY-8328
  • Renamed the fontselect toolbar button and fontformats menu item to fontfamily. #TINY-8328
  • Renamed the fontsize_formats option to font_size_formats. #TINY-8328
  • Renamed the fontsizeselect toolbar button and fontsizes menu item to fontsize. #TINY-8328
  • Renamed the formatselect toolbar button and blockformats menu item to blocks. #TINY-8328
  • Renamed the styleselect toolbar button and formats menu item to styles. #TINY-8328
  • Renamed the lineheight_formats option to line_height_formats. #TINY-8328
  • Renamed the getWhiteSpaceElements() function to getWhitespaceElements() in the Schema API. #TINY-8102
  • Renamed the mceInsertClipboardContent command content property to html to better reflect what data is passed. #TINY-8310
  • Renamed the default_link_target option to link_default_target for both link and autolink plugins. #TINY-4603
  • Renamed the rel_list option to link_rel_list for the link plugin. #TINY-4603
  • Renamed the target_list option to link_target_list for the link plugin. #TINY-4603
  • The default value for the link_default_protocol option has been changed to https instead of http. #TINY-7824
  • The default value for the element_format option has been changed to html. #TINY-8263
  • The default value for the schema option has been changed to html5. #TINY-8261
  • The default value for the table_style_by_css option has been changed to true. #TINY-8259
  • The default value for the table_use_colgroups option has been changed to true. #TINY-8259

Fixed

  • The object returned from the editor.fire() API was incorrect if the editor had been removed. #TINY-8018
  • The editor.selection.getContent() API did not respect the no_events argument. #TINY-8018
  • The editor.annotator.remove API did not keep selection when removing the annotation. #TINY-8195
  • The GetContent event was not fired when getting tree or text formats using the editor.selection.getContent() API. #TINY-8018
  • The beforeinput and input events would sometimes not fire as expected when deleting content. #TINY-8168 #TINY-8329
  • The table plugin would sometimes not correctly handle headers in the tfoot section. #TINY-8104
  • The silver theme UI was incorrectly rendered before plugins had initialized. #TINY-8288
  • The aria labels for the color picker dialog were not translated. #TINY-8381
  • Fixed sub-menu items not read by screen readers. Patch contributed by westonkd. #TINY-8417
  • Dialog labels and other text-based UI properties did not escape HTML markup. #TINY-7524
  • Anchor elements would render incorrectly when using the allow_html_in_named_anchor option. #TINY-3799
  • The AstNode HTML serializer did not serialize pre or textarea elements correctly when they contained newlines. #TINY-8446
  • Fixed sub-menu items not read by screen readers. Patch contributed by westonkd. #TINY-8417
  • The Home or End keys would move out of a editable element contained within a noneditable element. #TINY-8201
  • Dialogs could not be opened in inline mode before the editor had been rendered. #TINY-8397
  • Clicking on menu items could cause an unexpected console warning if the onAction function caused the menu to close. #TINY-8513
  • Fixed various color and contrast issues for the dark skins. #TINY-8527

Removed

  • Removed support for Microsoft Internet Explorer 11. #TINY-8194 #TINY-8241
  • Removed support for Microsoft Word from the opensource paste functionality. #TINY-7493
  • Removed support for the plugins option allowing a mixture of a string array and of space separated strings. #TINY-8399
  • Removed support for the deprecated false value for the forced_root_block option. #TINY-8260
  • Removed the jQuery integration. #TINY-4519
  • Removed the imagetools plugin, which is now classified as a Premium plugin. #TINY-8209
  • Removed the imagetools dialog component. #TINY-8333
  • Removed the toc plugin, which is now classified as a Premium plugin. #TINY-8250
  • Removed the tabfocus plugin. #TINY-8315
  • Removed the textpattern plugin's API as part of moving it to core. #TINY-8312
  • Removed the table plugin's API. #TINY-8273
  • Removed the callback for the EditorUpload API. #TINY-8325
  • Removed the legacy browser detection properties from the Env API. #TINY-8162
  • Removed the filterNode method from the DomParser API. #TINY-8249
  • Removed the SaxParser API. #TINY-8218
  • Removed the tinymce.utils.Promise API. #TINY-8241
  • Removed the toHex function for the DOMUtils and Styles APIs. #TINY-8163
  • Removed the execCommand handler function from the plugin and theme interfaces. #TINY-7829
  • Removed the editor.settings property as it has been replaced by the new Options API. #TINY-8236
  • Removed the shortEnded and fixed properties on tinymce.html.Node class. #TINY-8205
  • Removed the mceInsertRawHTML command. #TINY-8214
  • Removed the style field from the image plugin dialog advanced tab. #TINY-3422
  • Removed the paste_filter_drop option as native drag and drop handling is no longer supported. #TINY-8511
  • Removed the legacy mobile theme. #TINY-7832
  • Removed the deprecated $, Class, DomQuery and Sizzle APIs. #TINY-4520 #TINY-8326
  • Removed the deprecated Color, JSON, JSONP and JSONRequest. #TINY-8162
  • Removed the deprecated XHR API. #TINY-8164
  • Removed the deprecated setIconStroke Split Toolbar Button API. #TINY-8162
  • Removed the deprecated editors property from EditorManager. #TINY-8162
  • Removed the deprecated execCallback and setMode APIs from Editor. #TINY-8162
  • Removed the deprecated addComponents and dependencies APIs from AddOnManager. #TINY-8162
  • Removed the deprecated clearInterval, clearTimeout, debounce, requestAnimationFrame, setInterval, setTimeout and throttle APIs from Delay. #TINY-8162
  • Removed the deprecated Schema options. #TINY-7821
  • Removed the deprecated file_browser_callback_types, force_hex_style_colors and images_dataimg_filter options. #TINY-7823
  • Removed the deprecated filepicker_validator_handler, force_p_newlines, gecko_spellcheck, tab_focus, table_responsive_width and toolbar_drawer options. #TINY-7820
  • Removed the deprecated media_scripts option in the media plugin. #TINY-8421
  • Removed the deprecated editor_deselector, editor_selector, elements, mode and types legacy TinyMCE init options. #TINY-7822
  • Removed the deprecated content_editable_state and padd_empty_with_br options. #TINY-8400
  • Removed the deprecated autoresize_on_init option from the autoresize plugin. #TINY-8400
  • Removed the deprecated fullpage, spellchecker, bbcode, legacyoutput, colorpicker, contextmenu and textcolor plugins. #TINY-8192
  • Removed the undocumented editor.editorCommands.hasCustomCommand API. #TINY-7829
  • Removed the undocumented mceResetDesignMode, mceRepaint and mceBeginUndoLevel commands. #TINY-7829

Deprecated

  • The dialog button component's primary property has been deprecated and will be removed in the next major release. Use the new buttonType property instead. #TINY-8304
  • The fire() function of tinymce.Editor, tinymce.dom.EventUtils, tinymce.dom.DOMUtils, tinymce.util.Observable and tinymce.util.EventDispatcher has been deprecated and will be removed in the next major release. Use the dispatch() function instead. #TINY-8102
  • The content property on the SetContent event has been deprecated and will be removed in the next major release. #TINY-8457
  • The return value of the editor.setContent API has been deprecated and will be removed in the next major release. #TINY-8457

5.10.3 - 2022-02-09

Fixed

  • Alignment would sometimes be removed on parent elements when changing alignment on certain inline nodes, such as images. #TINY-8308
  • The fullscreen plugin would reset the scroll position when exiting fullscreen mode. #TINY-8418

5.10.2 - 2021-11-17

Fixed

  • Internal selectors were appearing in the style list when using the importcss plugin. #TINY-8238

5.10.1 - 2021-11-03

Fixed

  • The iframe aria help text was not read by some screen readers. #TINY-8171
  • Clicking the forecolor or backcolor toolbar buttons would do nothing until selecting a color. #TINY-7836
  • Crop functionality did not work in the imagetools plugin when the editor was rendered in a shadow root. #TINY-6387
  • Fixed an exception thrown on Safari when closing the searchreplace plugin dialog. #TINY-8166
  • The autolink plugin did not convert URLs to links when starting with a bracket. #TINY-8091
  • The autolink plugin incorrectly created nested links in some cases. #TINY-8091
  • Tables could have an incorrect height set on rows when rendered outside of the editor. #TINY-7699
  • In certain circumstances, the table of contents plugin would incorrectly add an extra empty list item. #TINY-4636
  • The insert table grid menu displayed an incorrect size when re-opening the grid. #TINY-6532
  • The word count plugin was treating the zero width space character (&#8203;) as a word. #TINY-7484

5.10.0 - 2021-10-11

Added

  • Added a new URI.isDomSafe(uri) API to check if a URI is considered safe to be inserted into the DOM. #TINY-7998
  • Added the ESC key code constant to the VK API. #TINY-7917
  • Added a new deprecation_warnings setting for turning off deprecation console warning messages. #TINY-8049

Improved

  • The element argument of the editor.selection.scrollIntoView() API is now optional, and if it is not provided the current selection will be scrolled into view. #TINY-7291

Changed

  • The deprecated scope attribute is no longer added to td cells when converting a row to a header row. #TINY-7731
  • The number of col elements is normalized to match the number of columns in a table after a table action. #TINY-8011

Fixed

  • Fixed a regression that caused block wrapper formats to apply and remove incorrectly when using a collapsed selection with multiple words. #TINY-8036
  • Resizing table columns in some scenarios would resize the column to an incorrect position. #TINY-7731
  • Inserting a table where the parent element had padding would cause the table width to be incorrect. #TINY-7991
  • The resize backdrop element did not have the data-mce-bogus="all" attribute set to prevent it being included in output. #TINY-7854
  • Resize handles appeared on top of dialogs and menus when using an inline editor. #TINY-3263
  • Fixed the autoresize plugin incorrectly scrolling to the top of the editor content in some cases when changing content. #TINY-7291
  • Fixed the editor.selection.scrollIntoView() type signature, as it incorrectly required an Element instead of HTMLElement. #TINY-7291
  • Table cells that were both row and column headers did not retain the correct state when converting back to a regular row or column. #TINY-7709
  • Clicking beside a non-editable element could cause the editor to incorrectly scroll to the top of the content. #TINY-7062
  • Clicking in a table cell, with a non-editable element in an adjacent cell, incorrectly caused the non-editable element to be selected. #TINY-7736
  • Split toolbar buttons incorrectly had nested tabindex="-1" attributes. #TINY-7879
  • Fixed notifications rendering in the wrong place initially and when the page was scrolled. #TINY-7894
  • Fixed an exception getting thrown when the number of col elements didn't match the number of columns in a table. #TINY-7041 #TINY-8011
  • The table selection state could become incorrect after selecting a noneditable table cell. #TINY-8053
  • As of Mozilla Firefox 91, toggling fullscreen mode with toolbar_sticky enabled would cause the toolbar to disappear. #TINY-7873
  • Fixed URLs not cleaned correctly in some cases in the link and image plugins. #TINY-7998
  • Fixed the image and media toolbar buttons incorrectly appearing to be in an inactive state in some cases. #TINY-3463
  • Fixed the editor.selection.selectorChanged API not firing if the selector matched the current selection when registered in some cases. #TINY-3463
  • Inserting content into a contenteditable="true" element that was contained within a contenteditable="false" element would move the selection to an incorrect location. #TINY-7842
  • Dragging and dropping contenteditable="false" elements could result in the element being placed in an unexpected location. #TINY-7917
  • Pressing the Escape key would not cancel a drag action that started on a contenteditable="false" element within the editor. #TINY-7917
  • video and audio elements were unable to be played when the media plugin live embeds were enabled in some cases. #TINY-7674
  • Pasting images would throw an exception if the clipboard items were not files (for example, screenshots taken from gnome-software). Patch contributed by cedric-anne. #TINY-8079

Deprecated

  • Several APIs have been deprecated. See the release notes section for information. #TINY-8023 #TINY-8063
  • Several Editor settings have been deprecated. See the release notes section for information. #TINY-8086
  • The Table of Contents and Image Tools plugins will be classified as Premium plugins in the next major release. #TINY-8087
  • Word support in the paste plugin has been deprecated and will be removed in the next major release. #TINY-8087

5.9.2 - 2021-09-08

Fixed

  • Fixed an exception getting thrown when disabling events and setting content. #TINY-7956
  • Delete operations could behave incorrectly if the selection crossed a table boundary. #TINY-7596

5.9.1 - 2021-08-27

Fixed

  • Published TinyMCE types failed to compile in strict mode. #TINY-7915
  • The TableModified event sometimes didn't fire when performing certain table actions. #TINY-7916

5.9.0 - 2021-08-26

Added

  • Added a new mceFocus command that focuses the editor. Equivalent to using editor.focus(). #TINY-7373
  • Added a new mceTableToggleClass command which toggles the provided class on the currently selected table. #TINY-7476
  • Added a new mceTableCellToggleClass command which toggles the provided class on the currently selected table cells. #TINY-7476
  • Added a new tablecellvalign toolbar button and menu item for vertical table cell alignment. #TINY-7477
  • Added a new tablecellborderwidth toolbar button and menu item to change table cell border width. #TINY-7478
  • Added a new tablecellborderstyle toolbar button and menu item to change table cell border style. #TINY-7478
  • Added a new tablecaption toolbar button and menu item to toggle captions on tables. #TINY-7479
  • Added a new mceTableToggleCaption command that toggles captions on a selected table. #TINY-7479
  • Added a new tablerowheader toolbar button and menu item to toggle the header state of row cells. #TINY-7478
  • Added a new tablecolheader toolbar button and menu item to toggle the header state of column cells. #TINY-7482
  • Added a new tablecellbordercolor toolbar button and menu item to select table cell border colors, with an accompanying setting table_border_color_map to customize the available values. #TINY-7480
  • Added a new tablecellbackgroundcolor toolbar button and menu item to select table cell background colors, with an accompanying setting table_background_color_map to customize the available values. #TINY-7480
  • Added a new language menu item and toolbar button to add lang attributes to content, with an accompanying content_langs setting to specify the languages available. #TINY-6149
  • A new lang format is now available that can be used with editor.formatter, or applied with the Lang editor command. #TINY-6149
  • Added a new language icon for the language toolbar button. #TINY-7670
  • Added a new table-row-numbering icon. #TINY-7327
  • Added new plugin commands: mceEmoticons (Emoticons), mceWordCount (Word Count), and mceTemplate (Template). #TINY-7619
  • Added a new iframe_aria_text setting to set the iframe title attribute. #TINY-1264
  • Added a new DomParser Node.children() API to return all the children of a Node. #TINY-7756

Improved

  • Sticky toolbars can now be offset from the top of the page using the new toolbar_sticky_offset setting. #TINY-7337
  • Fancy menu items now accept an initData property to allow custom initialization data. #TINY-7480
  • Improved the load time of the fullpage plugin by using the existing editor schema rather than creating a new one. #TINY-6504
  • Improved the performance when UI components are rendered. #TINY-7572
  • The context toolbar no longer unnecessarily repositions to the top of large elements when scrolling. #TINY-7545
  • The context toolbar will now move out of the way when it overlaps with the selection, such as in table cells. #TINY-7192
  • The context toolbar now uses a short animation when transitioning between different locations. #TINY-7740
  • Env.browser now uses the User-Agent Client Hints API where it is available. #TINY-7785
  • Icons with a -rtl suffix in their name will now automatically be used when the UI is rendered in right-to-left mode. #TINY-7782
  • The formatter.match API now accepts an optional similar parameter to check if the format partially matches. #TINY-7712
  • The formatter.formatChanged API now supports providing format variables when listening for changes. #TINY-7713
  • The formatter will now fire FormatApply and FormatRemove events for the relevant actions. #TINY-7713
  • The autolink plugin link detection now permits custom protocols. #TINY-7714
  • The autolink plugin valid link detection has been improved. #TINY-7714

Changed

  • Changed the load order so content CSS is loaded before the editor is populated with content. #TINY-7249
  • Changed the emoticons, wordcount, code, codesample, and template plugins to open dialogs using commands. #TINY-7619
  • The context toolbar will no longer show an arrow when it overlaps the content, such as in table cells. #TINY-7665
  • The context toolbar will no longer overlap the statusbar for toolbars using node or selection positions. #TINY-7666

Fixed

  • The editor.fire API was incorrectly mutating the original args provided. #TINY-3254
  • Unbinding an event handler did not take effect immediately while the event was firing. #TINY-7436
  • Binding an event handler incorrectly took effect immediately while the event was firing. #TINY-7436
  • Unbinding a native event handler inside the remove event caused an exception that blocked editor removal. #TINY-7730
  • The SetContent event contained the incorrect content when using the editor.selection.setContent() API. #TINY-3254
  • The editor content could be edited after calling setProgressState(true) in iframe mode. #TINY-7373
  • Tabbing out of the editor after calling setProgressState(true) behaved inconsistently in iframe mode. #TINY-7373
  • Flash of unstyled content while loading the editor because the content CSS was loaded after the editor content was rendered. #TINY-7249
  • Partially transparent RGBA values provided in the color_map setting were given the wrong hex value. #TINY-7163
  • HTML comments with mismatched quotes were parsed incorrectly under certain circumstances. #TINY-7589
  • The editor could crash when inserting certain HTML content. #TINY-7756
  • Inserting certain HTML content into the editor could result in invalid HTML once parsed. #TINY-7756
  • Links in notification text did not show the correct mouse pointer. #TINY-7661
  • Using the Tab key to navigate into the editor on Microsoft Internet Explorer 11 would incorrectly focus the toolbar. #TINY-3707
  • The editor selection could be placed in an incorrect location when undoing or redoing changes in a document containing contenteditable="false" elements. #TINY-7663
  • Menus and context menus were not closed when clicking into a different editor. #TINY-7399
  • Context menus on Android were not displayed when more than one HTML element was selected. #TINY-7688
  • Disabled nested menu items could still be opened. #TINY-7700
  • The nested menu item chevron icon was not fading when the menu item was disabled. #TINY-7700
  • imagetools buttons were incorrectly enabled for remote images without imagetools_proxy set. #TINY-7772
  • Only table content would be deleted when partially selecting a table and content outside the table. #TINY-6044
  • The table cell selection handling was incorrect in some cases when dealing with nested tables. #TINY-6298
  • Removing a table row or column could result in the cursor getting placed in an invalid location. #TINY-7695
  • Pressing the Tab key to navigate through table cells did not skip noneditable cells. #TINY-7705
  • Clicking on a noneditable table cell did not show a visual selection like other noneditable elements. #TINY-7724
  • Some table operations would incorrectly cause table row attributes and styles to be lost. #TINY-6666
  • The selection was incorrectly lost when using the mceTableCellType and mceTableRowType commands. #TINY-6666
  • The mceTableRowType was reversing the order of the rows when converting multiple header rows back to body rows. #TINY-6666
  • The table dialog did not always respect the table_style_with_css option. #TINY-4926
  • Pasting into a table with multiple cells selected could cause the content to be pasted in the wrong location. #TINY-7485
  • The TableModified event was not fired when pasting cells into a table. #TINY-6939
  • The table paste column before and after icons were not flipped in RTL mode. #TINY-7851
  • Fixed table corruption when deleting a contenteditable="false" cell. #TINY-7891
  • The dir attribute was being incorrectly applied to list items. #TINY-4589
  • Applying selector formats would sometimes not apply the format correctly to elements in a list. #TINY-7393
  • For formats that specify an attribute or style that should be removed, the formatter match API incorrectly returned false. #TINY-6149
  • The type signature on the formatter.matchNode API had the wrong return type (was boolean but should have been Formatter | undefined). #TINY-6149
  • The formatter.formatChanged API would ignore the similar parameter if another callback had already been registered for the same format. #TINY-7713
  • The formatter.formatChanged API would sometimes not run the callback the first time the format was removed. #TINY-7713
  • Base64 encoded images with spaces or line breaks in the data URI were not displayed correctly. Patch contributed by RoboBurned.

Deprecated

  • The bbcode, fullpage, legacyoutput, and spellchecker plugins have been deprecated and marked for removal in the next major release. #TINY-7260

5.8.2 - 2021-06-23

Fixed

  • Fixed an issue when pasting cells from tables containing colgroups into tables without colgroups. #TINY-6675
  • Fixed an issue that could cause an invalid toolbar button state when multiple inline editors were on a single page. #TINY-6297

5.8.1 - 2021-05-20

Fixed

  • An unexpected exception was thrown when switching to readonly mode and adjusting the editor width. #TINY-6383
  • Content could be lost when the pagebreak_split_block setting was enabled. #TINY-3388
  • The list-style-type: none; style on nested list items was incorrectly removed when clearing formatting. #TINY-6264
  • URLs were not always detected when pasting over a selection. Patch contributed by jwcooper. #TINY-6997
  • Properties on the OpenNotification event were incorrectly namespaced. #TINY-7486

5.8.0 - 2021-05-06

Added

  • Added the PAGE_UP and PAGE_DOWN key code constants to the VK API. #TINY-4612
  • The editor resize handle can now be controlled using the keyboard. #TINY-4823
  • Added a new fixed_toolbar_container_target setting which renders the toolbar in the specified HTMLElement. Patch contributed by pvrobays.

Improved

  • The inline_boundaries feature now supports the home, end, pageup, and pagedown keys. #TINY-4612
  • Updated the formatter.matchFormat API to support matching formats with variables in the classes property. #TINY-7227
  • Added HTML5 audio and video elements to the default alignment formats. #TINY-6633
  • Added support for alpha list numbering to the list properties dialog. #TINY-6891

Changed

  • Updated the image dialog to display the class list dropdown as full-width if the caption checkbox is not present. #TINY-6400
  • Renamed the "H Align" and "V Align" input labels in the Table Cell Properties dialog to "Horizontal align" and "Vertical align" respectively. #TINY-7285

Deprecated

  • The undocumented setIconStroke Split Toolbar Button API has been deprecated and will be removed in a future release. #TINY-3551

Fixed

  • Fixed a bug where it wasn't possible to align nested list items. #TINY-6567
  • The RGB fields in the color picker dialog were not staying in sync with the color palette and hue slider. #TINY-6952
  • The color preview box in the color picker dialog was not correctly displaying the saturation and value of the chosen color. #TINY-6952
  • The color picker dialog will now show an alert if it is submitted with an invalid hex color code. #TINY-2814
  • Fixed a bug where the TableModified event was not fired when adding a table row with the Tab key. #TINY-7006
  • Added missing images_file_types setting to the exported TypeScript types. #GH-6607
  • Fixed a bug where lists pasted from Word with Roman numeral markers were not displayed correctly. Patch contributed by aautio. #GH-6620
  • The editor.insertContent API was incorrectly handling nested span elements with matching styles. #TINY-6263
  • The HTML5 small element could not be removed when clearing text formatting. #TINY-6633
  • The Oxide button text transform variable was incorrectly using capitalize instead of none. Patch contributed by dakur. #GH-6341
  • Fix dialog button text that was using title-style capitalization. #TINY-6816
  • Table plugin could perform operations on tables containing the inline editor. #TINY-6625
  • Fixed Tab key navigation inside table cells with a ranged selection. #TINY-6638
  • The foreground and background toolbar button color indicator is no longer blurry. #TINY-3551
  • Fixed a regression in the tinymce.create() API that caused issues when multiple objects were created. #TINY-7358
  • Fixed the LineHeight command causing the change event to be fired inconsistently. #TINY-7048

5.7.1 - 2021-03-17

Fixed

  • Fixed the help dialog incorrectly linking to the changelog of TinyMCE 4 instead of TinyMCE 5. #TINY-7031
  • Fixed a bug where error messages were displayed incorrectly in the image dialog. #TINY-7099
  • Fixed an issue where URLs were not correctly filtered in some cases. #TINY-7025
  • Fixed a bug where context menu items with names that contained uppercase characters were not displayed. #TINY-7072
  • Fixed context menu items lacking support for the disabled and shortcut properties. #TINY-7073
  • Fixed a regression where the width and height were incorrectly set when embedding content using the media dialog. #TINY-7074

5.7.0 - 2021-02-10

Added

  • Added IPv6 address support to the URI API. Patch contributed by dev7355608. #GH-4409
  • Added new structure and style properties to the TableModified event to indicate what kinds of modifications were made. #TINY-6643
  • Added video and audio live embed support for the media plugin. #TINY-6229
  • Added the ability to resize video and iframe media elements. #TINY-6229
  • Added a new font_css setting for adding fonts to both the editor and the parent document. #TINY-6199
  • Added a new ImageUploader API to simplify uploading image data to the configured images_upload_url or images_upload_handler. #TINY-4601
  • Added an Oxide variable to define the container background color in fullscreen mode. #TINY-6903
  • Added Oxide variables for setting the toolbar background colors for inline and sticky toolbars. #TINY-6009
  • Added a new AfterProgressState event that is fired after editor.setProgressState calls complete. #TINY-6686
  • Added support for table_column_resizing when inserting or deleting columns. #TINY-6711

Changed

  • Changed table and table column copy behavior to retain an appropriate width when pasted. #TINY-6664
  • Changed the lists plugin to apply list styles to all text blocks within a selection. #TINY-3755
  • Changed the advlist plugin to log a console error message when the list plugin isn't enabled. #TINY-6585
  • Changed the z-index of the setProgressState(true) throbber so it does not hide notifications. #TINY-6686
  • Changed the type signature for editor.selection.getRng() incorrectly returning null. #TINY-6843
  • Changed some SaxParser regular expressions to improve performance. #TINY-6823
  • Changed editor.setProgressState(true) to close any open popups. #TINY-6686

Fixed

  • Fixed codesample highlighting performance issues for some languages. #TINY-6996
  • Fixed an issue where cell widths were lost when merging table cells. #TINY-6901
  • Fixed col elements incorrectly transformed to th elements when converting columns to header columns. #TINY-6715
  • Fixed a number of table operations not working when selecting 2 table cells on Mozilla Firefox. #TINY-3897
  • Fixed a memory leak by backporting an upstream Sizzle fix. #TINY-6859
  • Fixed table width style was removed when copying. #TINY-6664
  • Fixed focus lost while typing in the charmap or emoticons dialogs when the editor is rendered in a shadow root. #TINY-6904
  • Fixed corruption of base64 URLs used in style attributes when parsing HTML. #TINY-6828
  • Fixed the order of CSS precedence of content_style and content_css in the preview and template plugins. content_style now has precedence. #TINY-6529
  • Fixed an issue where the image dialog tried to calculate image dimensions for an empty image URL. #TINY-6611
  • Fixed an issue where scope attributes on table cells would not change as expected when merging or unmerging cells. #TINY-6486
  • Fixed the plugin documentation links in the help plugin. #DOC-703
  • Fixed events bound using DOMUtils not returning the correct result for isDefaultPrevented in some cases. #TINY-6834
  • Fixed the "Dropped file type is not supported" notification incorrectly showing when using an inline editor. #TINY-6834
  • Fixed an issue with external styles bleeding into TinyMCE. #TINY-6735
  • Fixed an issue where parsing malformed comments could cause an infinite loop. #TINY-6864
  • Fixed incorrect return types on editor.selection.moveToBookmark. #TINY-6504
  • Fixed the type signature for editor.selection.setCursorLocation() incorrectly allowing a node with no offset. #TINY-6843
  • Fixed incorrect behavior when editor is destroyed while loading stylesheets. #INT-2282
  • Fixed figure elements incorrectly splitting from a valid parent element when editing the image within. #TINY-6592
  • Fixed inserting multiple rows or columns in a table cloning from the incorrect source row or column. #TINY-6906
  • Fixed an issue where new lines were not scrolled into view when pressing Shift+Enter or Shift+Return. #TINY-6964
  • Fixed an issue where list elements would not be removed when outdenting using the Enter or Return key. #TINY-5974
  • Fixed an issue where file extensions with uppercase characters were treated as invalid. #TINY-6940
  • Fixed dialog block messages were not passed through TinyMCE's translation system. #TINY-6971

5.6.2 - 2020-12-08

Fixed

  • Fixed a UI rendering regression when the document body is using display: flex. #TINY-6783

5.6.1 - 2020-11-25

Fixed

  • Fixed the mceTableRowType and mceTableCellType commands were not firing the newCell event. #TINY-6692
  • Fixed the HTML5 s element was not recognized when editing or clearing text formatting. #TINY-6681
  • Fixed an issue where copying and pasting table columns resulted in invalid HTML when using colgroups. #TINY-6684
  • Fixed an issue where the toolbar would render with the wrong width for inline editors in some situations. #TINY-6683

5.6.0 - 2020-11-18

Added

  • Added new BeforeOpenNotification and OpenNotification events which allow internal notifications to be captured and modified before display. #TINY-6528
  • Added support for block and unblock methods on inline dialogs. #TINY-6487
  • Added new TableModified event which is fired whenever changes are made to a table. #TINY-6629
  • Added new images_file_types setting to determine which image file formats will be automatically processed into img tags on paste when using the paste plugin. #TINY-6306
  • Added support for images_file_types setting in the image file uploader to determine which image file extensions are valid for upload. #TINY-6224
  • Added new format_empty_lines setting to control if empty lines are formatted in a ranged selection. #TINY-6483
  • Added template support to the autocompleter for customizing the autocompleter items. #TINY-6505
  • Added new user interface enable, disable, and isDisabled methods. #TINY-6397
  • Added new closest formatter API to get the closest matching selection format from a set of formats. #TINY-6479
  • Added new emojiimages emoticons database that uses the twemoji CDN by default. #TINY-6021
  • Added new emoticons_database setting to configure which emoji database to use. #TINY-6021
  • Added new name field to the style_formats setting object to enable specifying a name for the format. #TINY-4239

Changed

  • Changed readonly mode to allow hyperlinks to be clickable. #TINY-6248

Fixed

  • Fixed the change event not firing after a successful image upload. #TINY-6586
  • Fixed the type signature for the entity_encoding setting not accepting delimited lists. #TINY-6648
  • Fixed layout issues when empty tr elements were incorrectly removed from tables. #TINY-4679
  • Fixed image file extensions lost when uploading an image with an alternative extension, such as .jfif. #TINY-6622
  • Fixed a security issue where URLs in attributes weren't correctly sanitized. #TINY-6518
  • Fixed DOMUtils.getParents incorrectly including the shadow root in the array of elements returned. #TINY-6540
  • Fixed an issue where the root document could be scrolled while an editor dialog was open inside a shadow root. #TINY-6363
  • Fixed getContent with text format returning a new line when the editor is empty. #TINY-6281
  • Fixed table column and row resizers not respecting the data-mce-resize attribute. #TINY-6600
  • Fixed inserting a table via the mceInsertTable command incorrectly creating 2 undo levels. #TINY-6656
  • Fixed nested tables with colgroup elements incorrectly always resizing the inner table. #TINY-6623
  • Fixed the visualchars plugin causing the editor to steal focus when initialized. #TINY-6282
  • Fixed fullpage plugin altering text content in editor.getContent(). #TINY-6541
  • Fixed fullscreen plugin not working correctly with multiple editors and shadow DOM. #TINY-6280
  • Fixed font size keywords such as medium not displaying correctly in font size menus. #TINY-6291
  • Fixed an issue where some attributes in table cells were not copied over to new rows or columns. #TINY-6485
  • Fixed incorrectly removing formatting on adjacent spaces when removing formatting on a ranged selection. #TINY-6268
  • Fixed the Cut menu item not working in the latest version of Mozilla Firefox. #TINY-6615
  • Fixed some incorrect types in the new TypeScript declaration file. #TINY-6413
  • Fixed a regression where a fake offscreen selection element was incorrectly created for the editor root node. #TINY-6555
  • Fixed an issue where menus would incorrectly collapse in small containers. #TINY-3321
  • Fixed an issue where only one table column at a time could be converted to a header. #TINY-6326
  • Fixed some minor memory leaks that prevented garbage collection for editor instances. #TINY-6570
  • Fixed resizing a responsive table not working when using the column resize handles. #TINY-6601
  • Fixed incorrectly calculating table col widths when resizing responsive tables. #TINY-6646
  • Fixed an issue where spaces were not preserved in pre-blocks when getting text content. #TINY-6448
  • Fixed a regression that caused the selection to be difficult to see in tables with backgrounds. #TINY-6495
  • Fixed content pasted multiple times in the editor when using Microsoft Internet Explorer 11. Patch contributed by mattford. #GH-4905

5.5.1 - 2020-10-01

Fixed

  • Fixed pressing the down key near the end of a document incorrectly raising an exception. #TINY-6471
  • Fixed incorrect Typescript types for the Tools API. #TINY-6475

5.5.0 - 2020-09-29

Added

  • Added a TypeScript declaration file to the bundle output for TinyMCE core. #TINY-3785
  • Added new table_column_resizing setting to control how table columns are resized when using the resize bars. #TINY-6001
  • Added the ability to remove images on a failed upload using the images_upload_handler failure callback. #TINY-6011
  • Added hasPlugin function to the editor API to determine if a plugin exists or not. #TINY-766
  • Added new ToggleToolbarDrawer command and query state handler to allow the toolbar drawer to be programmatically toggled and the toggle state to be checked. #TINY-6032
  • Added the ability to use colgroup elements in tables. #TINY-6050
  • Added a new setting table_use_colgroups for toggling whether colgroups are used in new tables. #TINY-6050
  • Added the ability to delete and navigate HTML media elements without the media plugin. #TINY-4211
  • Added fullscreen_native setting to the fullscreen plugin to enable use of the entire monitor. #TINY-6284
  • Added table related oxide variables to the Style API for more granular control over table cell selection appearance. #TINY-6311
  • Added new toolbar_persist setting to control the visibility of the inline toolbar. #TINY-4847
  • Added new APIs to allow for programmatic control of the inline toolbar visibility. #TINY-4847
  • Added the origin property to the ObjectResized and ObjectResizeStart events, to specify which handle the resize was performed on. #TINY-6242
  • Added new StyleSheetLoader unload and unloadAll APIs to allow loaded stylesheets to be removed. #TINY-3926
  • Added the LineHeight query command and action to the editor. #TINY-4843
  • Added the lineheight toolbar and menu items, and added lineheight to the default format menu. #TINY-4843
  • Added a new contextmenu_avoid_overlap setting to allow context menus to avoid overlapping matched nodes. #TINY-6036
  • Added new listbox dialog UI component for rendering a dropdown that allows nested options. #TINY-2236
  • Added back the ability to use nested items in the image_class_list, link_class_list, link_list, table_class_list, table_cell_class_list, and table_row_class_list settings. #TINY-2236

Changed

  • Changed how CSS manipulates table cells when selecting multiple cells to achieve a semi-transparent selection. #TINY-6311
  • Changed the target property on fired events to use the native event target. The original target for an open shadow root can be obtained using event.getComposedPath(). #TINY-6128
  • Changed the editor to clean-up loaded CSS stylesheets when all editors using the stylesheet have been removed. #TINY-3926
  • Changed imagetools context menu icon for accessing the image dialog to use the image icon. #TINY-4141
  • Changed the editor.insertContent() and editor.selection.setContent() APIs to retain leading and trailing whitespace. #TINY-5966
  • Changed the table plugin Column menu to include the cut, copy and paste column menu items. #TINY-6374
  • Changed the default table styles in the co
1.2.0

1 year ago

1.1.8

1 year ago

1.2.6

1 year ago

1.1.7

1 year ago

1.2.5

1 year ago

1.1.6

1 year ago

1.2.4

1 year ago

1.2.3

1 year ago

1.2.2

1 year ago

1.2.1

1 year ago

1.1.1

1 year ago

1.1.5

1 year ago

1.1.4

1 year ago

1.1.3

1 year ago

1.1.2

1 year ago

1.1.0

1 year ago

1.0.9

1 year ago

1.0.8

1 year ago

1.0.6

1 year ago

1.0.5

1 year ago

1.0.4

1 year ago

1.0.3

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago