Install

Works with Drupal: ^11.1

Using Composer to manage Drupal site dependencies

Alternative installation files

Download tar.gz 20.19 KB
MD5: 0d033c8cef658f3c0ab95aeba5783ca0
SHA-1: 36c8fe40867584bd4876e5a459e1b939bbeb776a
SHA-256: fa0d9487f28b006e6403ab35262058cdfba540f2ed5c6f99e407be6de0b36c4a
Download zip 34.6 KB
MD5: b363bd4dd0f970b8127e0e10e83b7d13
SHA-1: a80f5532903ce81c9263b5ae24c71c72e95ce72c
SHA-256: 1b73d845c6a598ff9018328b6925632e0c5bf723329b483f51fb458057bd4948

Release notes

This is a major release with significant improvements to performance, accessibility, security, and extensibility. Drupal 9 and 10 support has been dropped — this release requires Drupal 11.1 or higher.

⚠️ Upgrade notice

This is a breaking release. If you are upgrading from 1.x, there is no automatic upgrade path. Reinstall the module to initialize the default configuration.

What's new

Icons

  • Replaced the SVG sprite with inline SVG for improved compatibility and rendering reliability
  • Replaced all icons with Heroicons v2 outline for a consistent, modern look (uniform stroke-width 1.5)
  • Moved all icon logic from Twig templates to PHP preprocess for cleaner, more maintainable code
  • Added a first-letter fallback for tabs without a matching icon, fixing the white circle issue for unknown tabs (#3310350)
  • Added built-in icon support for popular contrib modules: Metatag, Pathauto, Redirect, Webform, Scheduler, Simple XML Sitemap, Content Moderation and Rabbit Hole

Configuration

  • Added a configuration form at /admin/config/user-interface/cool-editor-tabs to customize tab and icon colors
  • Added a menu item under Administration → Configuration → User interface
  • Colors are injected as CSS custom properties, making them easy to override in your theme
  • Added a real-time WCAG 2.1 contrast checker (Non-text Contrast 1.4.11, minimum ratio 3:1) in the settings form
  • Added a "Reset to defaults" button in the settings form
  • Added config schema and default configuration

Developer API

  • Added hook_cool_editor_tabs_icon_alter() allowing other modules to provide or override icons for their tabs
  • Added support for loading icons from external modules — place your SVG at {module}/assets/icons/{name}.svg and set $pack_id to your module name in the hook
  • Added Drupal Icon API registration via cool_editor_tabs.icons.yml, making the icon pack available to other modules
  • Added cool_editor_tabs.api.php documenting the public API

Security

  • Fixed potential path traversal vulnerability: icon IDs are sanitized after hook_cool_editor_tabs_icon_alter()
  • Fixed potential CSS injection vulnerability: color values are validated as hex colors before being injected into the page

Miscellaneous

  • Dropped Drupal 9 and 10 support — requires Drupal 11.1+
  • Replaced Gulp with plain npm scripts (sass CLI)
  • Removed unused controller class
Created by: dennis cohn
Created on: 4 Apr 2026 at 11:53 UTC
Last updated: 4 Apr 2026 at 11:53 UTC
New features

Other releases