diff --git a/.api-version b/.api-version index cfc27b4fab..d439d82b62 100644 --- a/.api-version +++ b/.api-version @@ -1 +1 @@ -8.8.0 \ No newline at end of file +8.8.2 \ No newline at end of file diff --git a/modules/ROOT/nav.adoc b/modules/ROOT/nav.adoc index abac22e477..e68571aeb3 100644 --- a/modules/ROOT/nav.adoc +++ b/modules/ROOT/nav.adoc @@ -420,6 +420,9 @@ ** xref:tinymce-and-cors.adoc[Cross-Origin Resource Sharing (CORS)] * Release information ** xref:release-notes.adoc[Release notes for {productname}] +*** {productname} 8.8.2 +**** xref:8.8.2-release-notes.adoc#overview[Overview] +**** xref:8.8.2-release-notes.adoc#bug-fixes[Bug fixes] *** {productname} 8.8.1 **** xref:8.8.1-release-notes.adoc#overview[Overview] **** xref:8.8.1-release-notes.adoc#accompanying-premium-plugin-changes[Accompanying Premium Plugin changes] diff --git a/modules/ROOT/pages/8.8.2-release-notes.adoc b/modules/ROOT/pages/8.8.2-release-notes.adoc new file mode 100644 index 0000000000..b5440366b7 --- /dev/null +++ b/modules/ROOT/pages/8.8.2-release-notes.adoc @@ -0,0 +1,43 @@ += {productname} {release-version} +:release-version: 8.8.2 +:navtitle: {productname} {release-version} +:description: Release notes for {productname} {release-version} +:keywords: releasenotes, bugfixes +:page-toclevels: 1 + +include::partial$misc/admon-releasenotes-for-stable.adoc[] + + +[[overview]] +== Overview + +{productname} {release-version} was released for {enterpriseversion} and {cloudname} on Monday, July 27^th^, 2026. These release notes provide an overview of the changes for {productname} {release-version}, including: + +* xref:bug-fixes[Bug fixes] + + +[[bug-fixes]] +== Bug fixes + +{productname} {release-version} also includes the following bug fixes: + +=== Formatting could not be applied to and removed from editable child elements when a noneditable element was selected +// #TINYMCE-9142 + +Previously, applying an inline format to a directly selected non-editable element had no effect, even when that element contained editable descendant elements. {productname} applied the format only for a range selection that spanned the same content, not when the non-editable element was selected on its own. Removing an inline format behaved the same way. + +In {productname} {release-version}, {productname} applies an inline format once to each editable descendant element within the selected non-editable element. Removing and toggling an inline format work the same way, and {productname} now detects a format that is already applied within an editable descendant element. A non-editable element without editable descendant elements remains unchanged, and {productname} does not apply the format beyond the enclosing non-editable element. + +=== Sanitizing malformed HTML in the editor content could throw an error +// #TINYMCE-14701 + +Previously, {productname} could throw an error while sanitizing editor content that contained malformed HTML, and the browser console reported `+TypeError: a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place+`. The error occurred in {productname} 8.8.0 and 8.8.1, which bundled version 3.4.11 of the DOMPurify sanitization library. + +In {productname} {release-version}, {productname} bundles version 3.4.12 of DOMPurify, which resolves the underlying issue. The editor now sanitizes content that contains malformed HTML without throwing an error. + +=== The caret could be positioned incorrectly in some cases when scrolling while a context toolbar was open. +// #TINYMCE-14415 + +Previously, the caret could move to an unexpected position while a context toolbar was open, such as a toolbar from the xref:quickbars.adoc[Quick Toolbars] plugin. To position a context toolbar relative to the selection, {productname} measured the caret position. When that selection had no measurable dimensions, such as a collapsed selection in an empty paragraph, {productname} altered it while taking the measurement. The caret then appeared to jump, and subsequent edits took effect at the wrong position. + +In {productname} {release-version}, {productname} restores the selection after measuring the caret position. The caret now stays where it was placed, including when the page scrolls with a context toolbar open. \ No newline at end of file diff --git a/modules/ROOT/pages/changelog.adoc b/modules/ROOT/pages/changelog.adoc index 3e7d6a359b..4f0b7adb6e 100644 --- a/modules/ROOT/pages/changelog.adoc +++ b/modules/ROOT/pages/changelog.adoc @@ -4,6 +4,14 @@ NOTE: This is the {productname} Community version changelog. For information about the latest {cloudname} or {enterpriseversion} Release, see: xref:release-notes.adoc[{productname} Release Notes]. +== xref:8.8.2-release-notes.adoc[8.8.2 - 2026-07-27] + +### Fixed +* The caret could be positioned incorrectly in some cases when scrolling while a context toolbar was open. +// #TINYMCE-14415 +* Formatting could not be applied to and removed from editable child elements when a noneditable element was selected. +// #TINYMCE-9142 + == xref:8.8.1-release-notes.adoc[8.8.1 - 2026-07-22] ### Fixed diff --git a/modules/ROOT/pages/release-notes.adoc b/modules/ROOT/pages/release-notes.adoc index 2e0c8d4f83..cd3171c93f 100644 --- a/modules/ROOT/pages/release-notes.adoc +++ b/modules/ROOT/pages/release-notes.adoc @@ -8,6 +8,12 @@ This section lists the releases for {productname} {productmajorversion} and the [cols="1,1"] |=== +a| +[.lead] +xref:8.8.2-release-notes.adoc#overview[{productname} 8.8.2] + +Release notes for {productname} 8.8.2 + a| [.lead] xref:8.8.1-release-notes.adoc#overview[{productname} 8.8.1] @@ -122,5 +128,5 @@ xref:8.0-release-notes.adoc#overview[{productname} 8.0.0] Release notes for {productname} 8.0.0 // Uncomment the dummy cell when the number of cells in the table is odd to ensure the table renders correctly. -a| +// a| |=== diff --git a/modules/ROOT/partials/configuration/format_noneditable_selector.adoc b/modules/ROOT/partials/configuration/format_noneditable_selector.adoc index fde5bfc4ed..5e8a2ca671 100644 --- a/modules/ROOT/partials/configuration/format_noneditable_selector.adoc +++ b/modules/ROOT/partials/configuration/format_noneditable_selector.adoc @@ -9,7 +9,7 @@ Wrappable formats include block formats that have the `wrapper` parameter set to Selector formats are not supported. -NOTE: Elements with `contenteditable="false"` attributes that contain descendant elements with `contenteditable="true"` attributes are not wrappable. +NOTE: Elements with `contenteditable="false"` attributes that contain descendant elements with `contenteditable="true"` attributes are not wrappable. From {productname} 8.8.2, selecting such an element and applying an inline format applies that format to each of its editable descendant elements instead of wrapping the element. Removing and toggling an inline format behave the same way. *Type:* `+String+`