Skip to content

[4.10.0]: Heading level options are a breaking change #456

@gregorterrill

Description

@gregorterrill

The change from #431 has broken my current workflow, where I use the JS config heading.options to define all of my headings. I use the standard heading levels, but also some additional formatting ones. Here's an example JS config:

return {
  heading: {
    options: [
      { model: 'paragraph', title: 'Paragraph', class: 'ck-heading_paragraph' },
      { model: 'paragraphLead', view: { name: 'p', classes: 'lead' }, title: 'Lead', class: 'ck-heading_paragraph_lead', converterPriority: 'high' },
      { model: 'paragraphLeadBlue', view: { name: 'p', classes: 'lead-blue' }, title: 'Lead (Blue)', class: 'ck-heading_paragraph_lead_blue', converterPriority: 'high' },
      { model: 'heading2', view: 'h2', title: 'Heading 2', class: 'ck-heading_heading2' },
      { model: 'heading3', view: 'h3', title: 'Heading 3', class: 'ck-heading_heading3' },
      { model: 'heading4', view: 'h4', title: 'Heading 4', class: 'ck-heading_heading4' },
      { model: 'heading5', view: 'h5', title: 'Heading 5', class: 'ck-heading_heading5' },
      { model: 'heading6', view: 'h6', title: 'Heading 6', class: 'ck-heading_heading6' },
    ]
  }
}

With the latest release of CKEditor, all of my options are ignored and it just gives me whatever Heading Levels checkboxes are selected. Even worse, saving any entries with CKEditor fields strips all of these styles out of existing content. Is there any way to opt out of this new behavior and just use the JS config like I always have?

I know I could use other style things for this but I prefer to keep all the formatting options in one dropdown, so piggybacking on the Headings dropdown has always worked well for the limited number of options I'm usually adding.

Maybe a simple solution would be to fall back to using the heading.options from the config if all of the checkboxes are unchecked?

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions