diff --git a/-new-material-templates/release-notes-template/ROOT/pages/{x.y[.z]}-release-notes.adoc b/-new-material-templates/release-notes-template/ROOT/pages/{x.y[.z]}-release-notes.adoc index fd60f60040..09a820a3f9 100644 --- a/-new-material-templates/release-notes-template/ROOT/pages/{x.y[.z]}-release-notes.adoc +++ b/-new-material-templates/release-notes-template/ROOT/pages/{x.y[.z]}-release-notes.adoc @@ -31,7 +31,7 @@ include::partial$misc/admon-releasenotes-for-stable.adoc[] [[new-premium-plugin]] -New Premium plugin +== New Premium plugin The following new Premium plugin was released alongside {productname} {release-version}. diff --git a/.api-version b/.api-version index 608c4e7100..da15618101 100644 --- a/.api-version +++ b/.api-version @@ -1 +1 @@ -8.0.2 \ No newline at end of file +8.1.0 \ No newline at end of file diff --git a/antora.yml b/antora.yml index 98a90fea0a..27557c9e3c 100644 --- a/antora.yml +++ b/antora.yml @@ -26,7 +26,7 @@ asciidoc: # product variables productname: TinyMCE productmajorversion: 8 - productminorversion: '8.0' + productminorversion: '8.1.0' ##### product name in codeblock prodnamecode: tinymce #### more names diff --git a/modules/ROOT/examples/live-demos/fullpagehtml/index.html b/modules/ROOT/examples/live-demos/fullpagehtml/index.html new file mode 100644 index 0000000000..0d217b04a0 --- /dev/null +++ b/modules/ROOT/examples/live-demos/fullpagehtml/index.html @@ -0,0 +1,21 @@ + diff --git a/modules/ROOT/examples/live-demos/fullpagehtml/index.js b/modules/ROOT/examples/live-demos/fullpagehtml/index.js new file mode 100644 index 0000000000..9d5f2b8cc4 --- /dev/null +++ b/modules/ROOT/examples/live-demos/fullpagehtml/index.js @@ -0,0 +1,16 @@ +tinymce.init({ + selector: 'textarea#fullpagehtml', + height: '800px', + plugins: [ + "fullpagehtml", "advlist", "anchor", "autolink", "charmap", "code", "fullscreen", + "help", "image", "insertdatetime", "link", "lists", "media", + "preview", "searchreplace", "table", "visualblocks", + ], + toolbar: "fullpagehtml | undo redo | styles | bold italic underline strikethrough | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image", + // Full Page HTML Plugin Configuration Options + fullpagehtml_default_doctype: '', + fullpagehtml_default_title: 'Full Page HTML Plugin Demo Document', + fullpagehtml_default_encoding: 'UTF-8', + fullpagehtml_default_body_style: 'margin: 20px; padding: 15px; font-family: Georgia, Times, serif; font-size: 16px; color: #2c3e50;', + fullpagehtml_hide_in_source_view: false // Show full page HTML in source view +}); \ No newline at end of file diff --git a/modules/ROOT/images/icons/default-document-properties.svg b/modules/ROOT/images/icons/default-document-properties.svg new file mode 100644 index 0000000000..bc305f278e --- /dev/null +++ b/modules/ROOT/images/icons/default-document-properties.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/modules/ROOT/images/icons/document-properties.svg b/modules/ROOT/images/icons/document-properties.svg deleted file mode 100644 index eba5de0b3f..0000000000 --- a/modules/ROOT/images/icons/document-properties.svg +++ /dev/null @@ -1,10 +0,0 @@ - - - - icon-document-properties - Created with Sketch. - - - - - \ No newline at end of file diff --git a/modules/ROOT/nav.adoc b/modules/ROOT/nav.adoc index 72eb5ed392..392295c0e8 100644 --- a/modules/ROOT/nav.adoc +++ b/modules/ROOT/nav.adoc @@ -317,6 +317,7 @@ ***** xref:export-to-word-with-jwt-authentication-php.adoc[PHP] *** xref:footnotes.adoc[Footnotes] *** xref:formatpainter.adoc[Format Painter] +*** xref:fullpagehtml.adoc[Full Page HTML] *** xref:importword.adoc[Import from Word] **** xref:docx-to-html-converter-api.adoc[DOCX to HTML Converter API] **** JWT Authentication @@ -414,6 +415,15 @@ ** xref:tinymce-and-cors.adoc[Cross-Origin Resource Sharing (CORS)] * Release information ** xref:release-notes.adoc[Release notes for {productname}] +*** {productname} 8.1.0 +**** xref:8.1.0-release-notes.adoc#overview[Overview] +**** xref:8.1.0-release-notes.adoc#new-premium-plugin[New Premium plugin] +**** xref:8.1.0-release-notes.adoc#accompanying-premium-plugin-changes[Accompanying Premium plugin changes] +**** xref:8.1.0-release-notes.adoc#improvements[Improvements] +**** xref:8.1.0-release-notes.adoc#changes[Changes] +**** xref:8.1.0-release-notes.adoc#bug-fixes[Bug fixes] +**** xref:8.1.0-release-notes.adoc#deprecated[Deprecated] +**** xref:8.1.0-release-notes.adoc#known-issues[Known issues] *** {productname} 8.0.2 **** xref:8.0.2-release-notes.adoc#overview[Overview] **** xref:8.0.2-release-notes.adoc#accompanying-premium-plugin-changes[Accompanying Premium plugin changes] diff --git a/modules/ROOT/pages/8.1.0-release-notes.adoc b/modules/ROOT/pages/8.1.0-release-notes.adoc new file mode 100644 index 0000000000..842703e846 --- /dev/null +++ b/modules/ROOT/pages/8.1.0-release-notes.adoc @@ -0,0 +1,338 @@ += {productname} {release-version} +:release-version: 8.1 +:navtitle: {productname} {release-version} +:description: Release notes for {productname} {release-version} +:keywords: releasenotes, new, changes, bugfixes, new features, improvements, changes, removals, deprecated, known issues +:page-toclevels: 1 + +include::partial$misc/admon-releasenotes-for-stable.adoc[] + + +[[overview]] +== Overview + +{productname} {release-version} was released for {enterpriseversion} and {cloudname} on Wednesday, September 17^th^, 2025. These release notes provide an overview of the changes for {productname} {release-version}, including: + +* xref:new-premium-plugin[New Premium plugin] +* xref:accompanying-premium-plugin-changes[Accompanying Premium plugin changes] +* xref:improvements[Improvements] +* xref:changes[Changes] +* xref:bug-fixes[Bug fixes] +* xref:deprecated[Deprecated] +* xref:known-issues[Known issues] + + + +[[new-premium-plugins]] +== New Premium plugins + +The following new Premium plugin was released alongside {productname} {release-version}. + +=== Full Page HTML + +The new Premium plugin, **Full Page HTML** provides comprehensive control over document metadata and properties. It enables users to edit HTML document metadata such as title, keywords, and description through an intuitive dialog interface. When combined with the code plugin, it also exposes the complete HTML structure including ``, ``, and various meta tags in the source code view. + +For information on the **Full Page HTML** plugin, see xref:fullpagehtml.adoc[Full Page HTML]. + + +[[accompanying-premium-plugin-changes]] +== Accompanying Premium plugin changes + +The following premium plugin updates were released alongside {productname} {release-version}. + +=== Spell Checker + +The {productname} {release-version} release includes an accompanying release of the **Spell Checker** premium plugin. + +**Spell Checker** Premium plugin includes the following fix. + +==== Spellcheck could create an invalid selection if the first element in the document was `+noneditable+`. +// #TINY-12514 + +Previously when the first element of a document was set as a `contenteditable="false"` (CEF) element, selecting all content with {productname} spellchecker could result in an invalid selection state. This issue prevented the deletion of the entire content selection, creating an edge case that disrupted normal editing workflows. + +To resolve this, {productname} now inserts a temporary hidden element before the initial CEF element in such scenarios. This adjustment ensures that full selections are valid and can be deleted as expected. + +For information on the **Spell Checker** plugin, see: xref:introduction-to-tiny-spellchecker.adoc[Spell Checker]. + +=== Image Optimizer (Powered by Uploadcare) + +The {productname} {release-version} release includes an accompanying release of the **Image Optimizer (Powered by Uploadcare)** premium plugin. + +**Image Optimizer (Powered by Uploadcare)** includes the following fix. + +==== Image previews sometimes showed the wrong image from a `srcset`. + +In previous versions of the Image Optimizer premium plugin, an issue where image effects were applied based on the main `src` instead of the active `srcset` URL, caused discrepancies when the displayed image was selected from `srcset`. This led to a mismatch in the adjustment preview (rendered from the main `src`) versus the image shown in the editor (rendered from the `srcset` URL), resulting in different visual outcomes for effects such as blur or resize. + +{productname} {release-version} resolves this issue by using the `currentSrc` property to generate previews, ensuring the preview and the editor image reference the same resource. As a result, the preview image and the image in the editor are now consistent. + +For information on the **Image Optimizer Powered by Uploadcare** plugin, see: xref:uploadcare.adoc[Image Optimizer (Powered by Uploadcare)]. + +=== Accessibility Checker + +The {productname} {release-version} release includes an accompanying release of the **Accessibility Checker** premium plugin. + +**Accessibility Checker** includes the following improvements. + +==== `+alt+` text length error message now shows current and maximum character counts +// #TINY-12569 + +Previous versions of **Accessibility Checker**, the `+alt+` text length validation error displayed only the current character count, such as "_Currently 151 characters_" without indicating the maximum allowed length. This caused unclear guidance for users and negatively affected the experience across all image rules (I1–I4) that rely on length validation, making it inconsistent with accessibility best practices. + +In {productname} {release-version}, the error message for **Accessibility Checker** has been updated to show both the current and maximum character counts, for example: "_151 characters (maximum 150 allowed)_." This improvement provides clear, actionable error messaging that aligns with accessibility guidance and reduces user confusion across all affected rules. + +==== Auto-suggest `+alt+` text from existing `+alt+`, `+aria-label+`, and `+title+` attributes with priority fallback in image repair dialogs. +// #TINY-12547 + +In previous version of **Accessibility Checker**, the image repair dialog only proposed values from `+alt+`, ignoring `+aria-label+` and `+title+`, which forced manual entry and slowed accessibility repairs while increasing the risk of inconsistent descriptions. + +{productname} {release-version} now auto-suggests `+alt+` text using a priority-based fallback that checks existing attributes in order `+aria-labelledby+`, `+aria-label+`, `+alt+` then `+title+` and leaves the field empty if none are present. This ensures that users can label images faster and with greater accuracy by leveraging existing accessibility attributes, improving repair efficiency and consistency. + +For information on the **Accessibility Checker** plugin, see: xref:a11ychecker.adoc[Accessibility Checker]. + +=== Revision History + +The {productname} {release-version} release includes an accompanying release of the **Revision History** premium plugin. + +**Revision History** includes the following fix and improvement. + +==== The same user could receive two different default avatars +// #TINY-12527 + +In previous versions of Revision History, the same user could receive two different default avatars. This inconsistency could make a single user appear as two distinct contributors, creating confusion when reviewing revision logs. + +In {productname} {release-version}, the issue has been resolved so that each user is now always assigned the same default avatar, improving accuracy and consistency in the revision history display. + +==== Default avatars are now generated with a consistent color based on the `user_id` +// #TINY-12527 + +Default avatars are now generated consistently using the `user_id`, ensuring that users are assigned a reliable and predictable color for their avatar. This improvement enhances the user experience by providing clear visual consistency when identifying contributors in revision histories. + +For information on the **Revision History** plugin, see: xref:revisionhistory.adoc[Revision History]. + +=== Comments + +The {productname} {release-version} release includes an accompanying release of the **Comments** premium plugin. + +**Comments** Premium plugin includes the following fixes and improvement. + +==== Default avatars generated inconsistently +// The same user avatar was generated for all users without an avatar in the mentions dropdown. +// The same user could receive two different default avatars. +// Default avatars are now generated with a consistent color based on the user id. +// #TINY-12526 #TINY-12532 #TINY-12633 + +Previously, {productname} generated default avatars inconsistently in the Comments plugin. Users without avatars saw the same placeholder avatar in the mentions dropdown, while the same individual could also receive different default avatars in other contexts. This inconsistency made it difficult to distinguish users and, in some cases, created confusion by making a single user appear as two different people. In {release-version}, this issue has been fixed, and default avatars are now consistently generated with a stable color based on the `+user_id+`. This ensures that the same user always has the same default avatar, improving clarity and providing a more reliable user experience. + +==== Improved keyboard navigation in Comments dropdown when inserting `@Mention` +// #TINY-12785 + +Previously, typing `@` to open the mentions dropdown list inside the Comments card did not support the **Shift+Enter** keyboard combination. For example, when typing a `@` + navigating to a user in the selected Comment card, pressing **Shift+Enter** did not insert the `@mention` to the `