fix(markup): correct Firefox caret height near placeholder - #1223
Conversation
Reviewer's guide (collapsed on small PRs)Reviewer's GuideThe PR updates the CodeMirror gravity theme with a Firefox-only CSS rule that baseline-aligns a File-Level Changes
Assessment against linked issues
Possibly linked issues
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
There was a problem hiding this comment.
Hey - I've found 1 issue
Prompt for AI Agents
Please address the comments from this code review:
## Individual Comments
### Comment 1
<location path="packages/editor/src/markup/codemirror/gravity.ts" line_range="36-40" />
<code_context>
'.cm-placeholder': {
color: 'var(--g-color-text-secondary)',
},
+ '@supports (-moz-appearance: none)': {
+ '.cm-widgetBuffer:has(+ .cm-placeholder)': {
+ verticalAlign: 'baseline',
+ },
+ },
'.cm-content': {
</code_context>
<issue_to_address>
**issue (bug_risk):** Firefox versions before 121 accept the `-moz-appearance` feature test but do not support `:has()`, so the nested rule is discarded and the caret retains the incorrect height/alignment in those browsers.
**Triggers:** When the editor runs in Firefox 120 or older, including Firefox ESR 115.
**Suggested fix:** Use a selector supported by the minimum Firefox version, or add a fallback rule that does not depend on `:has()`.
</issue_to_address>Sourcery assessment
Approval pending. 1 finding to address first.
Blocking findings: packages/editor/src/markup/codemirror/gravity.ts:40
| '@supports (-moz-appearance: none)': { | ||
| '.cm-widgetBuffer:has(+ .cm-placeholder)': { | ||
| verticalAlign: 'baseline', | ||
| }, | ||
| }, |
There was a problem hiding this comment.
issue (bug_risk): Firefox versions before 121 accept the -moz-appearance feature test but do not support :has(), so the nested rule is discarded and the caret retains the incorrect height/alignment in those browsers.
Triggers: When the editor runs in Firefox 120 or older, including Firefox ESR 115.
Suggested fix: Use a selector supported by the minimum Firefox version, or add a fallback rule that does not depend on :has().
Fixes #1222
Summary by Sourcery
Bug Fixes: