Skip to content

Apply strikethrough on Ctrl/Cmd+Shift+S in the rich text editor - #6332

Open
rtibblesbot wants to merge 1 commit into
learningequality:unstablefrom
rtibblesbot:issue-6322-da8618
Open

rtibblesbot wants to merge 1 commit into
learningequality:unstablefrom
rtibblesbot:issue-6322-da8618

Conversation

@rtibblesbot

@rtibblesbot rtibblesbot commented Oct 25, 2026 •

Copy link
Copy Markdown
Contributor

Summary

  • Removed Small text's Ctrl/Cmd+Shift+S shortcut so the key toggles strikethrough
  • Small text stays in the Format dropdown

References

Fixes #6322. First seen: #6151.

Reviewer guidance

Suggested review: Light-touch code review, then manual QA.

  • User-visible files changed: contentcuration/contentcuration/frontend/shared/views/TipTapEditor/TipTapEditor/extensions/SmallTextExtension.js.
  • In a full exercise editor, check that Ctrl/Cmd+Shift+S strikes the selection through without changing the block, in Chrome and Firefox on Windows and on macOS.
  • In Firefox, check that the shortcut doesn't also open Firefox's own Ctrl+Shift+S screenshot tool.
  • Inside a code block the editor now leaves the key to the browser, so check that the browser's default action is acceptable there.
  • Small text now has no keyboard shortcut; should it get a different one, or is the format dropdown enough?

QA team: in the exercise editor, Ctrl+Shift+S (Cmd+Shift+S on Mac) now applies strikethrough. Before, it changed the line to Small text. Regressions are most probable in Small, heading and list lines, and in answers and hints.

Sign in as a channel editor. Add a new exercise and open its Questions tab.

  1. Strike question text
    1. Click New question. Type text in the Question editor and select it.
    2. Press Ctrl+Shift+S. The text is struck through and the format dropdown shows Normal.
    3. Press Ctrl+Shift+S again. The strikethrough goes away.
    4. Strike the text again and reload the page. The strikethrough stays.
  2. Small, heading and list lines
    1. Choose Small from the format dropdown for a line.
    2. Strike one word in it with Ctrl+Shift+S. Only that word is struck through. The line stays Small.
    3. Do the same in a Header 2 line and a Bullet list item. The line type does not change.
    4. Press Ctrl+Z. Undo removes only the strikethrough.
  3. Answers and hints
    1. Make the question Multiple Choice and add a hint.
    2. Strike a word in an answer option and in the hint. Each word is struck through. No line becomes Small.
    3. Reload the page. Both strikethroughs stay.

Look out for:

  • On a Mac, press Cmd+Shift+S in the Question editor. Look out for a result different from Ctrl+Shift+S.

Evidence

Strike question text

Step Screenshot
Ctrl+Shift+S strikes the text; Strikethrough active, dropdown Normal Ctrl+Shift+S strikes the text; Strikethrough active, dropdown Normal
After reload: strikethrough kept After reload: strikethrough kept

Small line

Step Screenshot
One word struck in a Small line; dropdown still Small One word struck in a Small line; dropdown still Small

Typing with no selection

s3-ctrl-shift-s-collapsed-cursor.webm

Heading, list, undo and redo

s4-heading-list-strike-undo-redo.webm

Answers and hints

Step Screenshot
"+1" struck in a Multiple Choice answer option; dropdown Normal "+1" struck in a Multiple Choice answer option; dropdown Normal
"Hint" struck in Hint 1 "Hint" struck in Hint 1
After reload: option and hint strikethroughs kept After reload: option and hint strikethroughs kept
More captures (11)
Step Screenshot
Question text selected before Ctrl+Shift+S Question text selected before Ctrl+Shift+S
Second press removes the strikethrough Second press removes the strikethrough
Format dropdown open with Small Format dropdown open with Small
Closed question: Small line with one word struck Closed question: Small line with one word struck
Cursor inside struck words: Strikethrough active Cursor inside struck words: Strikethrough active
Cursor after struck words: Strikethrough inactive Cursor after struck words: Strikethrough inactive
Heading word selected Heading word selected
Heading and list item each with one word struck Heading and list item each with one word struck
After undo and redo: strikethroughs back, line types unchanged After undo and redo: strikethroughs back, line types unchanged
Answer option text selected Answer option text selected
"Type" struck in a Single Choice answer option "Type" struck in a Single Choice answer option

AI usage

Claude Code traced the keymap conflict and wrote the fix and test; verified with the TipTapEditor Jest suite and pre-commit.


Written by rtibblesbot, an LLM-based coding agent.

@rtibblesbot

🟡 Waiting for feedback

Last updated: 2026-10-25 02:56 UTC

The Small node's shortcut shadowed the strike mark's binding.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@rtibblesbot
rtibblesbot marked this pull request as ready for review October 25, 2026 02:56
@rtibblesbot
rtibblesbot requested review from a team and leq-bot October 25, 2026 02:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[QTI] - The keyboard combination Ctrl/Cmd+Shift+S is not working for applying strikethrough formatting

1 participant