[PR #4983] [MERGED] feat: collab cursor/selection #6562

Closed
opened 2026-03-23 22:23:46 +00:00 by mirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/AppFlowy-IO/AppFlowy/pull/4983
Author: @LucasXu0
Created: 3/25/2024
Status: Merged
Merged: 3/28/2024
Merged by: @LucasXu0

Base: mainHead: collab_selection


📝 Commits (10+)

  • a645660 feat: support collab selection
  • 0eeda3f feat: collab cusro/selection
  • ed1e15d feat: support displaying seletion flag
  • 3ea5585 chore: add metadata field
  • b456bfa feat: support displaying user name above cursor
  • 910b0c1 fix: emit error
  • 973877f feat: support displaying collaborators
  • 9b4ae44 Merge branch 'main' into collab_selection
  • a46504b feat: sync collaborator
  • 11519d3 fix: collab doc issues

📊 Changes

50 files changed (+1052 additions, -165 deletions)

View changed files

📝 frontend/appflowy_flutter/lib/core/config/kv_keys.dart (+5 -0)
📝 frontend/appflowy_flutter/lib/mobile/presentation/base/mobile_view_page.dart (+9 -0)
📝 frontend/appflowy_flutter/lib/mobile/presentation/home/mobile_home_page.dart (+3 -0)
📝 frontend/appflowy_flutter/lib/mobile/presentation/home/recent_folder/mobile_home_recent_views.dart (+66 -3)
📝 frontend/appflowy_flutter/lib/mobile/presentation/home/recent_folder/mobile_recent_view.dart (+2 -2)
📝 frontend/appflowy_flutter/lib/mobile/presentation/setting/about/about_setting_group.dart (+1 -1)
📝 frontend/appflowy_flutter/lib/mobile/presentation/setting/self_host/self_host_bottom_sheet.dart (+0 -24)
📝 frontend/appflowy_flutter/lib/mobile/presentation/setting/self_host_setting_group.dart (+8 -0)
frontend/appflowy_flutter/lib/plugins/document/application/doc_awareness_metadata.dart (+22 -0)
📝 frontend/appflowy_flutter/lib/plugins/document/application/doc_bloc.dart (+128 -30)
📝 frontend/appflowy_flutter/lib/plugins/document/application/doc_collab_adapter.dart (+86 -3)
frontend/appflowy_flutter/lib/plugins/document/application/doc_collaborators_bloc.dart (+121 -0)
📝 frontend/appflowy_flutter/lib/plugins/document/application/doc_listener.dart (+23 -4)
📝 frontend/appflowy_flutter/lib/plugins/document/application/doc_service.dart (+37 -0)
📝 frontend/appflowy_flutter/lib/plugins/document/application/doc_sync_bloc.dart (+8 -7)
📝 frontend/appflowy_flutter/lib/plugins/document/application/doc_sync_state_listener.dart (+0 -0)
📝 frontend/appflowy_flutter/lib/plugins/document/application/document_data_pb_extension.dart (+5 -4)
📝 frontend/appflowy_flutter/lib/plugins/document/document.dart (+14 -6)
frontend/appflowy_flutter/lib/plugins/document/presentation/collaborator_avater_stack.dart (+83 -0)
frontend/appflowy_flutter/lib/plugins/document/presentation/document_collaborators.dart (+66 -0)

...and 30 more files

📄 Description

Feature Preview

  • support displaying collab cursor / selection.
  • support displaying user info
Screenshot 2024-03-27 at 12 12 01

PR Checklist

  • My code adheres to AppFlowy's Conventions
  • I've listed at least one issue that this PR fixes in the description above.
  • I've added a test(s) to validate changes in this PR, or this PR only contains semantic changes.
  • All existing tests are passing.

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/AppFlowy-IO/AppFlowy/pull/4983 **Author:** [@LucasXu0](https://github.com/LucasXu0) **Created:** 3/25/2024 **Status:** ✅ Merged **Merged:** 3/28/2024 **Merged by:** [@LucasXu0](https://github.com/LucasXu0) **Base:** `main` ← **Head:** `collab_selection` --- ### 📝 Commits (10+) - [`a645660`](https://github.com/AppFlowy-IO/AppFlowy/commit/a6456603faa4fc8b97c6c9fcbcc309e4dcb369c7) feat: support collab selection - [`0eeda3f`](https://github.com/AppFlowy-IO/AppFlowy/commit/0eeda3fb690dd34d8329e8933914a685980e89cd) feat: collab cusro/selection - [`ed1e15d`](https://github.com/AppFlowy-IO/AppFlowy/commit/ed1e15d6c9364ec45935bcd7fc4106f31963ace2) feat: support displaying seletion flag - [`3ea5585`](https://github.com/AppFlowy-IO/AppFlowy/commit/3ea558542407b10053a71b8778f8e9fc8021d54d) chore: add metadata field - [`b456bfa`](https://github.com/AppFlowy-IO/AppFlowy/commit/b456bfa3e3385d69b8218867741714f1ad2574ff) feat: support displaying user name above cursor - [`910b0c1`](https://github.com/AppFlowy-IO/AppFlowy/commit/910b0c160b2a817770989a3bbc2a46bde1419c4a) fix: emit error - [`973877f`](https://github.com/AppFlowy-IO/AppFlowy/commit/973877fadb7c9c56275235352b461b482bdd0dad) feat: support displaying collaborators - [`9b4ae44`](https://github.com/AppFlowy-IO/AppFlowy/commit/9b4ae4471ccfb6f85f7d514f9df3a1d5d5d18e32) Merge branch 'main' into collab_selection - [`a46504b`](https://github.com/AppFlowy-IO/AppFlowy/commit/a46504b0344c470a692f2a520eb6c812c3fa864e) feat: sync collaborator - [`11519d3`](https://github.com/AppFlowy-IO/AppFlowy/commit/11519d347594c02ec4160f5af928fe9c04e25a42) fix: collab doc issues ### 📊 Changes **50 files changed** (+1052 additions, -165 deletions) <details> <summary>View changed files</summary> 📝 `frontend/appflowy_flutter/lib/core/config/kv_keys.dart` (+5 -0) 📝 `frontend/appflowy_flutter/lib/mobile/presentation/base/mobile_view_page.dart` (+9 -0) 📝 `frontend/appflowy_flutter/lib/mobile/presentation/home/mobile_home_page.dart` (+3 -0) 📝 `frontend/appflowy_flutter/lib/mobile/presentation/home/recent_folder/mobile_home_recent_views.dart` (+66 -3) 📝 `frontend/appflowy_flutter/lib/mobile/presentation/home/recent_folder/mobile_recent_view.dart` (+2 -2) 📝 `frontend/appflowy_flutter/lib/mobile/presentation/setting/about/about_setting_group.dart` (+1 -1) 📝 `frontend/appflowy_flutter/lib/mobile/presentation/setting/self_host/self_host_bottom_sheet.dart` (+0 -24) 📝 `frontend/appflowy_flutter/lib/mobile/presentation/setting/self_host_setting_group.dart` (+8 -0) ➕ `frontend/appflowy_flutter/lib/plugins/document/application/doc_awareness_metadata.dart` (+22 -0) 📝 `frontend/appflowy_flutter/lib/plugins/document/application/doc_bloc.dart` (+128 -30) 📝 `frontend/appflowy_flutter/lib/plugins/document/application/doc_collab_adapter.dart` (+86 -3) ➕ `frontend/appflowy_flutter/lib/plugins/document/application/doc_collaborators_bloc.dart` (+121 -0) 📝 `frontend/appflowy_flutter/lib/plugins/document/application/doc_listener.dart` (+23 -4) 📝 `frontend/appflowy_flutter/lib/plugins/document/application/doc_service.dart` (+37 -0) 📝 `frontend/appflowy_flutter/lib/plugins/document/application/doc_sync_bloc.dart` (+8 -7) 📝 `frontend/appflowy_flutter/lib/plugins/document/application/doc_sync_state_listener.dart` (+0 -0) 📝 `frontend/appflowy_flutter/lib/plugins/document/application/document_data_pb_extension.dart` (+5 -4) 📝 `frontend/appflowy_flutter/lib/plugins/document/document.dart` (+14 -6) ➕ `frontend/appflowy_flutter/lib/plugins/document/presentation/collaborator_avater_stack.dart` (+83 -0) ➕ `frontend/appflowy_flutter/lib/plugins/document/presentation/document_collaborators.dart` (+66 -0) _...and 30 more files_ </details> ### 📄 Description <!--- Thank you for submitting a pull request to AppFlowy. The team will dedicate their best efforts to reviewing and approving your pull request. If you have any questions about the project or feedback for us, please join our [Discord](https://discord.gg/wdjWUXXhtw). --> <!--- If your pull request adds a new feature, please drag and drop a video into this section to showcase what you've done! If not, you may delete this section. --> ### Feature Preview - [x] support displaying collab cursor / selection. - [x] support displaying user info <img width="1720" alt="Screenshot 2024-03-27 at 12 12 01" src="https://github.com/AppFlowy-IO/AppFlowy/assets/11863087/612f9f6b-95a8-4bf0-badf-d2ca6cf72f95"> <!--- List at least one issue here that this PR addresses. If it fixes the issue, please use the [fixes](https://docs.github.com/en/get-started/writing-on-github/working-with-advanced-formatting/using-keywords-in-issues-and-pull-requests) keyword to close the issue. For example: fixes https://github.com/AppFlowy-IO/AppFlowy/pull/2106 --> --- <!--- Before you mark this PR ready for review, run through this checklist! --> #### PR Checklist - [x] My code adheres to [AppFlowy's Conventions](https://docs.appflowy.io/docs/documentation/software-contributions/conventions) - [ ] I've listed at least one issue that this PR fixes in the description above. - [ ] I've added a test(s) to validate changes in this PR, or this PR only contains semantic changes. - [ ] All existing tests are passing. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
mirror 2026-03-23 22:23:46 +00:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
AppFlowy-IO/AppFlowy#6562
No description provided.