Add an inline-only mode to the rich text editor - #6214
Open
rtibblesbot wants to merge 3 commits into
Open
rtibblesbot wants to merge 3 commits into
rtibblesbot wants to merge 3 commits into
Conversation
- `initializeEditor(..., { inlineOnly })` leaves every block node out of the schema
- Pasted block HTML flattens to one space-separated inline run; plain-text lines join with spaces
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- Stored block content loads flattened to inline and saves back inline - Dropped files are ignored in inline-only mode Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
- Desktop and mobile bars drop lists, image, code block, alignment and the format dropdown - Toolbar paste flattens block content in inline-only mode Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
inlineOnlyprop builds the editor on a schema with no block nodes, for inline-only QTI fields such as gap match choices.References
Closes #6193. Builds on #6151.
Reviewer guidance
content: 'inline*');focus('end'),selectAlland the Math node view are the likeliest to misbehave.QA steps
Setup: exercise → Questions → multiple-choice question. For steps 3–5, add
inlineOnlyto the choice<TipTapEditor>inshared/views/QTIEditor/interactions/choice/Editor.vue.<br>; block shortcuts and input rules (#,-,1.,>,```,---) create no blocks; saved value has no<p>.Evidence
Full editor, desktop
s1-more-menu-flow-820px.webm
Full editor, mobile
Full editor, paste
Inline-only, desktop
Inline-only, mobile
Inline-only, typing
<br>and<code>, no<p>More captures (25)
AI usage
Used Claude Code to plan and implement the change test-first and to capture the screenshots. Verified with the TipTapEditor and QTIEditor Jest suites, pre-commit, and an axe audit in a headless browser.
🤖 Generated with Claude Code
@rtibblesbot's comments are generated by an LLM, and should be evaluated accordingly
How was this generated?
🟢 Updating PR
Last updated: 2026-09-30 20:21 UTC