Skip to content

Latest commit

 

History

History
381 lines (240 loc) · 17.7 KB

File metadata and controls

381 lines (240 loc) · 17.7 KB

{productname} 7.8.0

Overview

{productname} 7.8.0 was released for {enterpriseversion} and {cloudname} on Wednesday, April 02nd, 2025. These release notes provide an overview of the changes for {productname} 7.8.0, including:

[[new-premium-plugin<s>]] New Premium plugin<s>

The following new Premium plugin was released alongside {productname} 7.8.0.

<Premium plugin name>

The new Premium plugin, <Premium plugin name> // description here.

For information on the <Premium plugin name> plugin, see xref:<plugincode>.adoc[<Premium plugin name>].

New Open Source plugin

The following new Open Source plugin was released alongside {productname} 7.8.0.

<Open source plugin name>

The new open source plugin, <Open source plugin name> // description here.

For information on the <Open source plugin name> plugin, see xref:<plugincode>.adoc[<Open source plugin name>].

Accompanying Premium plugin changes

The following premium plugin updates were released alongside {productname} 7.8.0.

Enhanced Code Editor

The {productname} 7.8.0 release includes an accompanying release of the Enhanced Code Editor premium plugin.

Enhanced Code Editor includes the following fix.

Source Code editor was not scrolling to the editor’s caret position in Firefox.

Previously, an issue was identified where the Enhanced Code Editor in Firefox did not automatically scroll to the caret’s relative position within the editor. As a result, users were required to manually scroll to locate the corresponding element, leading to a suboptimal user experience.

With the release of {productname} 7.8.0, this issue has been resolved. The Enhanced Code Editor in Firefox now exhibits consistent behavior with other browsers, automatically scrolling to the caret’s position when the editor is opened. This enhancement significantly improves the user experience by eliminating the need for manual navigation.

For information on the Enhanced Code Editor plugin, see: Enhanced Code Editor.

Comments

The {productname} 7.8.0 release includes an accompanying release of the Comments premium plugin.

Comments includes the following fix, addition and change.

A confirmation dialog now appears when resolving conversation to match the UX of deleting a conversation.

Previously, resolving a conversation did not trigger a confirmation dialog, unlike the behavior when deleting a conversation. Selecting Resolve conversation from the conversation kebab menu would immediately perform the action without user confirmation.

{productname} 7.8.0 introduces a confirmation dialog for resolving conversations, ensuring a consistent user experience and helping prevent unintentional resolutions.

The change event was not dispatched when deleting a comment reply.

Previously, deleting a comment reply did not dispatch a change event, which prevented the {productname} Save plugin from detecting the editor as modified. As a result, the “Save” button remained disabled after deleting a reply, potentially leading to lost changes. This issue has been resolved in 7.8.0. Deleting a comment reply now correctly triggers a dirty state, ensuring the Save plugin enables the “Save” button as expected.

New tinycomments_fetch_author_info option that allows integrators to specify the current author info in callback mode.

In {productname} 7.8.0, a new tinycomments_fetch_author_info callback option has been introduced, enabling integrators to provide author information in callback mode. This enhancement ensures accurate author data is displayed in new conversation cards.

For information on the Comments plugin, see: Introduction to {companyname} Comments.

Image Optimizer (Powered by Uploadcare)

{productname} 7.8.0 introduces the Image Optimizer (Powered by Uploadcare) plugin.

Image Optimizers includes the following fix and addition.

Added support for uploadcare_filters option in the Image Optimizer (Powered by Uploadcare) plugin

The Image Optimizer (Powered by Uploadcare) plugin now includes support for a new configuration option, uploadcare_filters, introduced in 7.8.0. This option allows integrators to define a customizable list of image filters available within the Image Optimizer (Powered by Uploadcare) dialog. Each filter can be configured with an optional amount parameter, controlling the intensity of the effect, and an optional label to customize its display name in the UI.

Example
tinymce.init({
  selector: "textarea",
  plugins: 'uploadcare',
  toolbar: 'uploadcare',
  uploadcare_public_key: '<your-public-key>',
  uploadcare_filters: [
    { name: 'none' },
    { name: 'adaris', amount: -100, label: 'Vintage Fade' },
    { name: 'adaris', amount: 0, label: 'Base' },
    { name: 'adaris', amount: 100, label: 'Standard' },
    { name: 'zevcen', amount: 200, label: 'Glow Boost' }
  ]
});

Keyboard navigation between toolbars no longer loses focus.

In previous versions of Image Optimizer, navigating between toolbars and sub toolbars could cause the toolbar focus state to be lost. This issue required users to press Ctrl+F9 to manually restore focus to the context toolbar, disrupting keyboard navigation workflows. {productname} 7.8.0 addresses this issue, by updating the focus handling using new sub toolbar APIs, ensuring that focus is now properly retained when moving between toolbars and sub toolbars. This improvement enhances accessibility and allows users to navigate the toolbar system more efficiently.

For information on the Image Optimizer (Powered by Uploadcare) plugin, see Image Optimizer (Powered by Uploadcare).

Math

The {productname} 7.8.0 release includes an accompanying release of the Math premium plugin.

Math includes the following addition.

New extended_mathml_attributes and extended_mathml_elements options.

To improve flexibility when working with MathML content, especially in cases where new attributes or elements are not yet supported by DOMPurify, two new configuration options have been introduced: extended_mathml_elements and extended_mathml_attributes.

Prior to 7.8.0, MathML elements and attributes were treated the same as all other content, with no special handling for MathML-specific structures. As a result, unsupported elements and attributes were either retained without validation or stripped without regard to their MathML context.

In {productname} 7.8.0, MathML content is now filtered separately from general HTML using DOMPurify. As part of this change, support has been added to selectively allow specific elements and attributes within a <math> element using the new configuration options.

The new options allow users to define lists of MathML elements and attributes that should be preserved, even if DOMPurify does not currently recognize them. This enables quicker user-side updates in response to evolving MathML specifications without disabling sanitization or waiting for upstream changes.

  • extended_mathml_elements: allows a list of additional MathML elements to be preserved.

  • extended_mathml_attributes: allows a list of additional MathML attributes to be preserved.

These options apply only within MathML contexts and do not affect general HTML content. They enable use cases such as preserving <mn> elements and attributes like linebreak in MathML expressions.

Example of MathML with preserved elements and attributes
tinymce.init({
  selector: "textarea",
  extended_mathml_elements: [ "mn" ],
  extended_mathml_attributes: [ "linebreak" ]
});
Example of MathML with preserved elements and attributes
<p>
  <math xmlns="http://www.w3.org/1998/Math/MathML">
    <mrow><mn>0.196</mn></mrow>
    <mspace linebreak="newline"></mspace>
    <mrow><mo>=</mo></mrow>
    <mspace linebreak="newline"></mspace>
    <mrow><mn>0.196</mn></mrow>
  </math>
</p>

For information on the Math premium plugin, see: Math.

Export to Word

The {productname} 7.8.0 release includes an accompanying update to the Export to Word premium plugin.

Improved handling of relative URLs using base_url configuration for Export to Word

Previously, the exportword plugin converted relative URLs (e.g., /relative/url) into incorrect absolute URLs during export, causing hyperlinks in Word documents to direct users to unintended or non-existent destinations. This issue has been resolved. The plugin now correctly resolves relative URLs using the base_url configuration option, ensuring exported Word documents contain valid and functional hyperlinks.

For more information, see: Export to Word.

Export to PDF

The {productname} 7.8.0 release includes an accompanying update to the Export to PDF premium plugin.

Improved handling of relative URLs using base_url configuration for Export to PDF

The exportpdf plugin previously transformed relative URLs (e.g., /relative/url) into incorrect absolute URLs, resulting in broken or misdirected links in exported PDF documents. This issue has been addressed. The plugin now uses the base_url configuration option to correctly resolve relative URLs, ensuring that links in exported PDFs lead to the correct destinations.

For more information, see: Export to PDF.

Accompanying Premium plugin end-of-life announcement

The following Premium plugin has been announced as reaching its end-of-life:

<Premium plugin name eol>

{productname}’s xref:<plugincode>.adoc[<Premium plugin name eol>] plugin will be deactivated on <month> <DD>, <YYYY>, and is no longer available for purchase.

Accompanying open source plugin end-of-life announcement

The following open source plugin has been announced as reaching its end-of-life:

<Open source plugin name eol>

{productname}’s xref:<plugincode>.adoc[<Open source plugin name eol>] plugin will be deactivated on <month> <DD>, <YYYY>, and is no longer available for purchase.

Accompanying Enhanced Skins & Icon Packs changes

The {productname} 7.8.0 release includes an accompanying release of the Enhanced Skins & Icon Packs.

Enhanced Skins & Icon Packs

The Enhanced Skins & Icon Packs release includes the following updates:

The Enhanced Skins & Icon Packs were rebuilt to pull in the changes also incorporated into the default {productname} 7.8.0 skin, Oxide.

For information on using Enhanced Skins & Icon Packs, see: Enhanced Skins & Icon Packs.

Improvements

{productname} 7.8.0 also includes the following improvement<s>:

<TINY-vwxyz 1 changelog entry>

New subtoolbar support for context toolbars.

{productname} 7.8.0 introduces support for multi-level context toolbars, enabling more advanced and interactive editing experiences directly within the editor interface. Previously, developers had to manually configure separate toolbars and manage transitions between them using predicate logic. This release simplifies that process by adding a new API for defining and navigating subtoolbars, similar to the existing context form functionality.

A new navigateback button streamlines navigation between toolbar levels, while improved focus management ensures input fields are automatically focused when switching toolbars. These enhancements provide a more flexible, intuitive, and responsive workflow for both developers and end users.

Example of a multi-level context toolbar configuration:
tinymce.init({
  selector: 'textarea',
  height: 350,
  setup: (editor) => {
    editor.ui.registry.addContextToolbar('bar', {
      predicate: () => true,
      items: 'bold italic | undo redo | subbar1',
      position: 'line',
      scope: 'editor'
    });

    editor.ui.registry.addContextToolbar('subbar1', {
      launch: { text: 'Subbar 1' },
      items: 'navigateback bold italic | undo redo | subbar2'
    });

    editor.ui.registry.addContextToolbar('subbar2', {
      launch: { text: 'Subbar 2' },
      items: 'navigateback bold italic | undo redo | subbar3'
    });

    editor.ui.registry.addContextToolbar('subbar3', {
      launch: { text: 'Subbar 3' },
      items: 'navigateback bold italic | undo redo'
    });
  }
});

For more information on context toolbars, see Context toolbars.

The editor.selection.scrollIntoView() method now pads the target scroll area with a small margin, ensuring content doesn’t sit at the very edge of the viewport.

Previously, when cycling through accessibility issues in the a11y checker dialog, the highlighted content could appear aligned to the very edge of the viewport, making it difficult to identify and visually track. This behavior impacted usability by reducing the effectiveness of the a11y checker tool.

In {productname} 7.8.0, the editor.selection.scrollIntoView() method was updated to include a top and bottom margin, aligning the highlighted content to a fixed 30px from the edge of the viewport. Additionally, a visual overlay was introduced to draw attention to the selected element. These changes improve visibility, provide smoother and more intuitive scroll positioning, and enhance the overall user experience when navigating accessibility issues in {productname}.

Additions

{productname} 7.8.0 also includes the following addition<s>:

<TINY-vwxyz 1 changelog entry>

Changes

{productname} 7.8.0 also includes the following change<s>:

<TINY-vwxyz 1 changelog entry>

Removed

{productname} 7.8.0 also includes the following removal<s>:

<TINY-vwxyz 1 changelog entry>

Bug fixes

{productname} 7.8.0 also includes the following bug fix<es>:

The focus outline was misaligned with the comment card border after saving an edited comment.

In previous versions of {productname}, the keyboard focus styles were not properly aligned with the comment card during the process of saving an edited comment, resulting in a poor user interface.

{productname} 7.8.0 addresses this by adjusting the focus styles, ensuring a more polished user interface while saving an edited comment.

Setting editor height to a pt or em value was ignoring min/max height settings.

Previously, when the editor height was set using relative units such as pt or em, the editor was unable to parse and evaluate these values correctly. As a result, it would bypass the min_height and max_height checks, leading to unpredictable layout behavior. This issue was especially noticeable during initialization, although resizing later used the browser-calculated content box height, which partially masked the problem. In 7.8.0, {productname} now attempts to compute height values from additional unit types to better enforce minimum and maximum height constraints. Some units, such as percentages (%), may still override explicit height values due to browser limitations in determining the final rendered size. This update ensures that min_height and max_height settings are more reliably applied across a wider range of unit types.

Security fixes

{productname} 7.8.0 includes <a fix | fixes for the following security issue<s>:

<TINY-vwxyz 1 changelog entry>

Deprecated

{productname} 7.8.0 includes the following deprecation<s>:

The <plugin> configuration property, <name>, has been deprecated

Known issues

This section describes issues that users of {productname} 7.8.0 may encounter and possible workarounds for these issues.

There <is one | are <number> known issue<s> in {productname} 7.8.0.

<TINY-vwxyz 1 changelog entry>