UNPKG

cthep-ui-vue3

Version:

Vue 3 试题组件库

614 lines (532 loc) 197 kB
# Changelog All notable changes to this project will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). ## Unreleased ## 5.10.5 - 2022-05-25 ### Fixed - Base64 data URIs were not extracted correctly during parsing when proceeded by `data:` text #TINY-8646 - 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 ## 5.10.4 - 2022-04-27 ### Fixed - Inline toolbars flickered when switching between editors #TINY-8594 - Multiple inline toolbars were shown if focused too quickly #TINY-8503 ## 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 (`​`) 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 `colgroup`s into tables without `colgroup`s #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 content CSS files to better support the styling options available in the `table` dialog #TINY-6179 ### Deprecated - Deprecated the `Env.experimentalShadowDom` flag #TINY-6128 ### Fixed - Fixed tables with no borders displaying with the default border styles in the `preview` dialog #TINY-6179 - Fixed loss of whitespace when inserting content after a non-breaking space #TINY-5966 - Fixed the `event.getComposedPath()` function throwing an exception for events fired from the editor #TINY-6128 - Fixed notifications not appearing when the editor is within a ShadowRoot #TINY-6354 - Fixed focus issues with inline dialogs when the editor is within a ShadowRoot #TINY-6360 - Fixed the `template` plugin previews missing some content styles #TINY-6115 - Fixed the `media` plugin not saving the alternative source url in some situations #TINY-4113 - Fixed an issue where column resizing using the resize bars was inconsistent between fixed and relative table widths #TINY-6001 - Fixed an issue where dragging and dropping within a table would select table cells #TINY-5950 - Fixed up and down keyboard navigation not working for inline `contenteditable="false"` elements #TINY-6226 - Fixed dialog not retrieving `close` icon from icon pack #TINY-6445 - Fixed the `unlink` toolbar button not working when selecting multiple links #TINY-4867 - Fixed the `link` dialog not showing the "Text to display" field in some valid cases #TINY-5205 - Fixed the `DOMUtils.split()` API incorrectly removing some content #TINY-6294 - Fixed pressing the escape key not focusing the editor when using multiple toolbars #TINY-6230 - Fixed the `dirty` flag not being correctly set during an `AddUndo` event #TINY-4707 - Fixed `editor.selection.setCursorLocation` incorrectly placing the cursor outside `pre` elements in some circumstances #TINY-4058 - Fixed an exception being thrown when pressing the enter key inside pre elements while `br_in_pre` setting is false #TINY-4058 ## 5.4.2 - 2020-08-17 ### Fixed - Fixed the editor not resizing when resizing the browser window in fullscreen mode #TINY-3511 - Fixed clicking on notifications causing inline editors to hide #TINY-6058 - Fixed an issue where link URLs could not be deleted or edited in the link dialog in some cases #TINY-4706 - Fixed a regression where setting the `anchor_top` or `anchor_bottom` options to `false` was not working #TINY-6256 - Fixed the `anchor` plugin not supporting the `allow_html_in_named_anchor` option #TINY-6236 - Fixed an exception thrown when removing inline formats that contained additional styles or classes #TINY-6288 - Fixed an exception thrown when positioning the context toolbar on Internet Explorer 11 in some edge cases #TINY-6271 - Fixed inline formats not removed when more than one `removeformat` format rule existed #TINY-6216 - Fixed an issue where spaces were sometimes removed when removing formating on nearby text #TINY-6251 - Fixed the list toolbar buttons not showing as active when a list is selected #TINY-6286 - Fixed an issue where the UI would sometimes not be shown or hidden when calling the show or hide API methods on the editor #TINY-6048 - Fixed the list type style not retained when copying list items #TINY-6289 - Fixed the Paste plugin converting tabs in plain text to a single space character. A `paste_tab_spaces` option has been included for setting the number of spaces used to replace a tab character #TINY-6237 ## 5.4.1 - 2020-07-08 ### Fixed - Fixed the Search and Replace plugin incorrectly including zero-width caret characters in search results #TINY-4599 - Fixed dragging and dropping unsupported files navigating the browser away from the editor #TINY-6027 - Fixed undo levels not created on browser handled drop or paste events #TINY-6027 - Fixed content in an iframe element parsing as DOM elements instead of text content #TINY-5943 - Fixed Oxide checklist styles not showing when printing #TINY-5139 - Fixed bug with `scope` attribute not being added to the cells of header rows #TINY-6206 ## 5.4.0 - 2020-06-30 ### Added - Added keyboard navigation support to menus and toolbars when the editor is in a ShadowRoot #TINY-6152 - Added the ability for menus to be clicked when the editor is in an open shadow root #TINY-6091 - Added the `Editor.ui.styleSheetLoader` API for loading stylesheets within the Document or ShadowRoot containing the editor UI #TINY-6089 - Added the `StyleSheetLoader` module to the public API #TINY-6100 - Added Oxide variables for styling the `select` element and headings in dialog content #TINY-6070 - Added icons for `table` column and row cut, copy, and paste toolbar buttons #TINY-6062 - Added all `table` menu items to the UI registry, so they can be used by name in other menus #TINY-4866 - Added new `mceTableApplyCellStyle` command to the `table` plugin #TINY-6004 - Added new `table` cut, copy, and paste column editor commands and menu items #TINY-6006 - Added font related Oxide variables for secondary buttons, allowing for custom styling #TINY-6061 - Added new `table_header_type` setting to control how table header rows are structured #TINY-6007 - Added new `table_sizing_mode` setting to replace the `table_responsive_width` setting, which has now been deprecated #TINY-6051 - Added new `mceTableSizingMode` command for changing the sizing mode of a table #TINY-6000 - Added new `mceTableRowType`, `mceTableColType`, and `mceTableCellType` commands and value queries #TINY-6150 ### Changed - Changed `advlist` toolbar buttons to only show a dropdown list if there is more than one option #TINY-3194 - Changed `mceInsertTable` command and `insertTable` API method to take optional header rows and columns arguments #TINY-6012 - Changed stylesheet loading, so that UI skin stylesheets can load in a ShadowRoot if required #TINY-6089 - Changed the DOM location of menus so that they display correctly when the editor is in a ShadowRoot #TINY-6093 - Changed the table plugin to correctly detect all valid header row structures #TINY-6007 ### Fixed - Fixed tables with no defined width being converted to a `fixed` width table when modifying the table #TINY-6051 - Fixed the `autosave` `isEmpty` API incorrectly detecting non-empty content as empty #TINY-5953 - Fixed table `Paste row after` and `Paste row before` menu items not disabled when nothing was available to paste #TINY-6006 - Fixed a selection performance issue with large tables on Microsoft Internet Explorer and Edge #TINY-6057 - Fixed filters for screening commands from the undo stack to be case-insensitive #TINY-5946 - Fixed `fullscreen` plugin now removes all classes when the editor is closed #TINY-4048 - Fixed handling of mixed-case icon identifiers (names) for UI elements #TINY-3854 - Fixed leading and trailing spaces lost when using `editor.selection.getContent({ format: 'text' })` #TINY-5986 - Fixed an issue where changing the URL with the quicklink toolbar caused unexpected undo behavior #TINY-5952 - Fixed an issue where removing formatting within a table cell would cause Internet Explorer 11 to scroll to the end of the table #TINY-6049 - Fixed an issue where the `allow_html_data_urls` setting was not correctly applied #TINY-5951 - Fixed the `autolink` feature so that it no longer treats a string with multiple "@" characters as an email address #TINY-4773 - Fixed an issue where removing the editor would leave unexpected attributes on the target element #TINY-4001 - Fixed the `link` plugin now suggest `mailto:` when the text contains an '@' and no slashes (`/`) #TINY-5941 - Fixed the `valid_children` check of custom elements now allows a wider range of characters in names #TINY-5971 ## 5.3.2 - 2020-06-10 ### Fixed - Fixed a regression introduced in 5.3.0, where `images_dataimg_filter` was no-longer called #TINY-6086 ## 5.3.1 - 2020-05-27 ### Fixed - Fixed the image upload error alert also incorrectly closing the image dialog #TINY-6020 - Fixed editor content scrolling incorrectly on focus in Firefox by reverting default content CSS html and body heights added in 5.3.0 #TINY-6019 ## 5.3.0 - 2020-05-21 ### Added - Added html and body height styles to the default oxide content CSS #TINY-5978 - Added `uploadUri` and `blobInfo` to the data returned by `editor.uploadImages()` #TINY-4579 - Added a new function to the `BlobCache` API to lookup a blob based on the base64 data and mime type #TINY-5988 - Added the ability to search and replace within a selection #TINY-4549 - Added the ability to set the list start position for ordered lists and added new `lists` context menu item #TINY-3915 - Added `icon` as an optional config option to the toggle menu item API #TINY-3345 - Added `auto` mode for `toolbar_location` which positions the toolbar and menu bar at the bottom if there is no space at the top #TINY-3161 ### Changed - Changed the default `toolbar_location` to `auto` #TINY-3161 - Changed toggle menu items and choice menu items to have a dedicated icon with the checkmark displayed on the far right side of the menu item #TINY-3345 - Changed the `link`, `image`, and `paste` plugins to use Promises to reduce the bundle size #TINY-4710 - Changed the default icons to be lazy loaded during initialization #TINY-4729 - Changed the parsing of content so base64 encoded urls are converted to blob urls #TINY-4727 - Changed context toolbars so they concatenate when more than one is suitable for the current selection #TINY-4495 - Changed inline style element formats (strong, b, em, i, u, strike) to convert to a span on format removal if a `style` or `class` attribute is present #TINY-4741 ### Fixed - Fixed the `selection.setContent()` API not running parser filters #TINY-4002 - Fixed formats incorrectly applied or removed when table cells were selected #TINY-4709 - Fixed the `quickimage` button not restricting the file types to images #TINY-4715 - Fixed search and replace ignoring text in nested contenteditable elements #TINY-5967 - Fixed resize handlers displaying in the wrong location sometimes for remote images #TINY-4732 - Fixed table picker breaking in Firefox on low zoom levels #TINY-4728 - Fixed issue with loading or pasting contents with large base64 encoded images on Safari #TINY-4715 - Fixed supplementary special characters being truncated when inserted into the editor. Patch contributed by mlitwin. #TINY-4791 - Fixed toolbar buttons not set to disabled when the editor is in readonly mode #TINY-4592 - Fixed the editor selection incorrectly changing when removing caret format containers #TINY-3438 - Fixed bug where title, width, and height would be set to empty string values when updating an image and removing those attributes using the image dialog #TINY-4786 - Fixed `ObjectResized` event firing when an object wasn't resized #TINY-4161 - Fixed `ObjectResized` and `ObjectResizeStart` events incorrectly fired when adding or removing table rows and columns #TINY-4829 - Fixed the placeholder not hiding when pasting content into the editor #TINY-4828 - Fixed an issue where the editor would fail to load if local storage was disabled #TINY-5935 - Fixed an issue where an uploaded image would reuse a cached image with a different mime type #TINY-5988 - Fixed bug where toolbars and dialogs would not show if the body element was replaced (e.g. with Turbolinks). Patch contributed by spohlenz #GH-5653 - Fixed an issue where multiple formats would be removed when removing a single format at the end of lines or on empty lines #TINY-1170 - Fixed zero-width spaces incorrectly included in the `wordcount` plugin character count #TINY-5991 - Fixed a regression introduced in 5.2.0 whereby the desktop `toolbar_mode` setting would incorrectly override the mobile default setting #TINY-5998 - Fixed an issue where deleting all content in a single cell table would delete the entire table #TINY-1044 ## 5.2.2 - 2020-04-23 ### Fixed - Fixed an issue where anchors could not be inserted on empty lines #TINY-2788 - Fixed text decorations (underline, strikethrough) not consistently inheriting the text color #TINY-4757 - Fixed `format` menu alignment buttons inconsistently applying to images #TINY-4057 - Fixed the floating toolbar drawer height collapsing when the editor is rendered in modal dialogs or floating containers #TINY-4837 - Fixed `media` embed content not processing safely in some cases #TINY-4857 ## 5.2.1 - 2020-03-25 ### Fixed - Fixed the "is decorative" checkbox in the image dialog clearing after certain dialog events #FOAM-11 - Fixed possible uncaught exception when a `style` attribute is removed using a content filter on `setContent` #TINY-4742 - Fixed the table selection not functioning correctly in Microsoft Edge 44 or higher #TINY-3862 - Fixed the table resize handles not functioning correctly in Microsoft Edge 44 or higher #TINY-4160 - Fixed the floating toolbar drawer disconnecting from the toolbar when adding content in inline mode #TINY-4725 #TINY-4765 - Fixed `readonly` mode not returning the appropriate boolean value #TINY-3948 - Fixed the `forced_root_block_attrs` setting not applying attributes to new blocks consistently #TINY-4564 - Fixed the editor incorrectly stealing focus during initialization in Microsoft Internet Explorer #TINY-4697 - Fixed dialogs stealing focus when opening an alert or confirm dialog using an `onAction` callback #TINY-4014 - Fixed inline dialogs incorrectly closing when clicking on an opened alert or confirm dialog #TINY-4012 - Fixed the context toolbar overlapping the menu bar and toolbar #TINY-4586 - Fixed notification and inline dialog positioning issues when using `toolbar_location: 'bottom'` #TINY-4586 - Fixed the `colorinput` popup appearing offscreen on mobile devices #TINY-4711 - Fixed special characters not being found when searching by "whole words only" #TINY-4522 - Fixed an issue where dragging images could cause them to be duplicated #TINY-4195 - Fixed context toolbars activating without the editor having focus #TINY-4754 - Fixed an issue where removing the background color of text did not always work #TINY-4770 - Fixed an issue where new rows and columns in a table did not retain the style of the previous row or column #TINY-4788 ## 5.2.0 - 2020-02-13 ### Added - Added the ability to apply formats to spaces #TINY-4200 - Added new `toolbar_location` setting to allow for positioning the menu and toolbar at the bottom of the editor #TINY-4210 - Added new `toolbar_groups` setting to allow a custom floating toolbar group to be added to the toolbar when using `floating` toolbar mode #TINY-4229 - Added new `link_default_protocol` setting to `link` and `autolink` plugin to allow a protocol to be used by default #TINY-3328 - Added new `placeholder` setting to allow a placeholder to be shown when the editor is empty #TINY-3917 - Added new `tinymce.dom.TextSeeker` API to allow searching text across different DOM nodes #TINY-4200 - Added a drop shadow below the toolbar while in sticky mode and introduced Oxide variables to customize it when creating a custom skin #TINY-4343 - Added `quickbars_image_toolbar` setting to allow for the image quickbar to be turned off #TINY-4398 - Added iframe and img `loading` attribute to the default schema. Patch contributed by ataylor32. #GH-5112 - Added new `getNodeFilters`/`getAttributeFilters` functions to the `editor.serializer` instance #TINY-4344 - Added new `a11y_advanced_options` setting to allow additional accessibility options to be added #FOAM-11 - Added new accessibility options and behaviours to the image dialog using `a11y_advanced_options` #FOAM-11 - Added the ability to use the window `PrismJS` instance for the `codesample` plugin instead of the bundled version to allow for styling custom languages #TINY-4504 - Added error message events that fire when a resource loading error occurs #TINY-4509 ### Changed - Changed the default schema to disallow `onchange` for select elements #TINY-4614 - Changed default `toolbar_mode` value from false to `wrap`. The value false has been deprecated #TINY-4617 - Changed `toolbar_drawer` setting to `toolbar_mode`. `toolbar_drawer` has been deprecated #TINY-4416 - Changed iframe mode to set selection on content init if selection doesn't exist #TINY-4139 - Changed table related icons to align them with the visual style of the other icons #TINY-4341 - Changed and improved the visual appearance of the color input field #TINY-2917 - Changed fake caret container to use `forced_root_block` when possible #TINY-4190 - Changed the `requireLangPack` API to wait until the plugin has been loaded before loading the language pack #TINY-3716 - Changed the formatter so `style_formats` are registered before the initial content is loaded into the editor #TINY-4238 - Changed media plugin to use https protocol for media urls by default #TINY-4577 - Changed the parser t