Skip to content

Fix Tiptap collaboration cursor rendering after v3 upgrade#817

Merged
chrismaddalena merged 4 commits intomasterfrom
copilot/fix-cursor-username-display
Feb 7, 2026
Merged

Fix Tiptap collaboration cursor rendering after v3 upgrade#817
chrismaddalena merged 4 commits intomasterfrom
copilot/fix-cursor-username-display

Conversation

Copy link
Contributor

Copilot AI commented Feb 6, 2026

Requirements for Contributing Documentation

  • Fill out the template below. Any pull request that does not include enough information to be reviewed in a timely manner may be closed at the maintainers' discretion.
  • The pull request must only contribute documentation (for example, markdown files or API docs). To contribute other changes, you must use a different template. You can see all templates at https://github.com/GhostManager/Ghostwriter/blob/master/PULL_REQUEST_TEMPLATE.

Description of the Change

Tiptap v3 upgrade (Oct 2025) renamed @tiptap/extension-collaboration-cursor@tiptap/extension-collaboration-caret and changed rendered CSS classes from collaboration-cursor__* to collaboration-carets__* (plural). CSS selectors were not updated, breaking cursor label positioning.

Changes:

  • Fixed import typo: CollaborationCarentCollaborationCaret in rich_text_editor/index.tsx
  • Updated CSS selectors: .collaboration-cursor__*.collaboration-carets__* in editor.scss
  • Regenerated package-lock.json via npm install (520 packages locked)

Before:

<span class="collaboration-carets__caret">
  <div style="background-color: #aaff80">admin</div>
</span>

CSS selector .collaboration-cursor__label never matched → username rendered inline.

After:
CSS selector .collaboration-carets__label matches → position: absolute; top: -1.4em applies correctly.

Release Notes

Fixed collaboration cursor labels appearing inline in document text instead of positioned above cursors.


💡 You can make Copilot smarter by setting up custom instructions, customizing its development environment and configuring Model Context Protocol (MCP) servers. Learn more Copilot coding agent tips in the docs.

Co-authored-by: chrismaddalena <10526228+chrismaddalena@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix username display causing line breaks in collaborative editor Fix typo in CollaborationCaret extension preventing cursor label rendering Feb 6, 2026
Copilot AI requested a review from chrismaddalena February 6, 2026 23:34
Co-authored-by: chrismaddalena <10526228+chrismaddalena@users.noreply.github.com>
Co-authored-by: chrismaddalena <10526228+chrismaddalena@users.noreply.github.com>
Copilot AI changed the title Fix typo in CollaborationCaret extension preventing cursor label rendering Fix collaboration cursor labels rendering inline instead of positioned above cursors Feb 6, 2026
Copilot AI changed the title Fix collaboration cursor labels rendering inline instead of positioned above cursors Fix collaboration cursor labels appearing inline instead of positioned above cursors Feb 7, 2026
Copilot AI changed the title Fix collaboration cursor labels appearing inline instead of positioned above cursors Fix Tiptap collaboration cursor rendering after v3 upgrade Feb 7, 2026
@chrismaddalena chrismaddalena marked this pull request as ready for review February 7, 2026 03:11
Copilot AI review requested due to automatic review settings February 7, 2026 03:11
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Fixes Tiptap v3 collaboration caret/cursor label rendering by aligning code and styles with the renamed extension and updated CSS classnames.

Changes:

  • Renamed the Tiptap extension import/usage to CollaborationCaret
  • Updated SCSS selectors from collaboration-cursor__* to collaboration-carets__*

Reviewed changes

Copilot reviewed 2 out of 3 changed files in this pull request and generated 1 comment.

File Description
javascript/src/frontend/collab_forms/rich_text_editor/index.tsx Updates the collaboration caret extension import and configuration usage to match Tiptap v3 naming.
javascript/src/frontend/collab_forms/editor.scss Updates caret/label selectors to match the new DOM classnames emitted by Tiptap v3.
Files not reviewed (1)
  • javascript/package-lock.json: Language not supported

import * as Y from "yjs";
import Collaboration from "@tiptap/extension-collaboration";
import CollaborationCarent from "@tiptap/extension-collaboration-caret";
import CollaborationCaret from "@tiptap/extension-collaboration-caret";
Copy link

Copilot AI Feb 7, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The PR description/template states this PR must only contribute documentation, but the diff includes TypeScript/SCSS code changes. Please switch to the appropriate pull request template (or update the PR description to the correct template) so reviewers/maintainers can process it under the right contribution requirements.

Copilot uses AI. Check for mistakes.
@codecov
Copy link

codecov bot commented Feb 7, 2026

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 91.37%. Comparing base (3d6ea4c) to head (79dc9f0).
⚠️ Report is 5 commits behind head on master.

Additional details and impacted files
@@           Coverage Diff           @@
##           master     #817   +/-   ##
=======================================
  Coverage   91.37%   91.37%           
=======================================
  Files         368      368           
  Lines       20933    20933           
=======================================
  Hits        19127    19127           
  Misses       1806     1806           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@chrismaddalena chrismaddalena merged commit 0c2bbc4 into master Feb 7, 2026
11 checks passed
@chrismaddalena chrismaddalena deleted the copilot/fix-cursor-username-display branch February 7, 2026 05:32
Copilot AI added a commit that referenced this pull request Feb 9, 2026
… and picomatch packages

PR #817 inadvertently removed parent package entries for @floating-ui/dom and @parcel/watcher from package-lock.json while keeping platform-specific variants, causing 'npm ci' to fail in Docker builds with "Missing from lock file" errors.

Regenerated package-lock.json via full 'npm install' to restore proper dependency tree structure. This adds:
- @floating-ui/dom@1.7.5 (required by @tiptap/extension-bubble-menu)
- @parcel/watcher@2.5.6 (peer dependency of @graphql-codegen/cli)
- picomatch@4.0.3 (transitive dependency of @parcel/watcher)

Verified: 'npm ci' and 'npm run build-frontend-prod' both complete successfully.

Co-authored-by: chrismaddalena <10526228+chrismaddalena@users.noreply.github.com>
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.

2 participants