[PR #8018] Feat Board move multiple items to a group with shortcut #8272

Open
opened 2026-03-23 23:23:25 +00:00 by mirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/AppFlowy-IO/AppFlowy/pull/8018
Author: @PirateBrook
Created: 6/3/2025
Status: 🔄 Open

Base: mainHead: feat_board_shortcut_mutli_move


📝 Commits (3)

  • d8f1d44 feat: board move multiple items to a group with shortcut
  • ade020f fix: board move multiple items to a group with shortcut skip the target group items
  • fe93661 chore: fmt

📊 Changes

8 files changed (+94 additions, -44 deletions)

View changed files

📝 frontend/appflowy_flutter/lib/plugins/database/application/database_controller.dart (+3 -2)
📝 frontend/appflowy_flutter/lib/plugins/database/application/row/row_cache.dart (+11 -0)
📝 frontend/appflowy_flutter/lib/plugins/database/board/application/board_bloc.dart (+48 -17)
📝 frontend/appflowy_flutter/lib/plugins/database/board/presentation/board_page.dart (+5 -2)
📝 frontend/appflowy_flutter/lib/plugins/database/board/presentation/widgets/board_shortcut_container.dart (+1 -4)
📝 frontend/appflowy_flutter/lib/plugins/database/domain/database_view_service.dart (+7 -6)
📝 frontend/rust-lib/flowy-database2/src/entities/database_entities.rs (+8 -4)
📝 frontend/rust-lib/flowy-database2/src/event_handler.rs (+11 -9)

📄 Description

related issue https://github.com/AppFlowy-IO/AppFlowy/issues/5524 [FR] Board move multiple items to a group with shortcut

Feature Preview


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.

Summary by Sourcery

Enable batch moving of board items by extending the moveGroupRow flow end-to-end—from RPC payloads and Rust handlers to Dart events, controller, and UI bindings—so multiple cards can be moved together via shortcut.

New Features:

  • Support moving multiple selected board cards to a target group or position at once
  • Add a keyboard shortcut to move multiple selected cards to the previous or next group

Enhancements:

  • Refactor moveGroupRow RPC payloads, params, and handlers to accept lists of row IDs
  • Update BoardBloc, DatabaseController, and event definitions to handle batch moves of GroupedRowId lists
  • Improve adjacent-group move logic to compute and move multiple rows across groups

🔄 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/8018 **Author:** [@PirateBrook](https://github.com/PirateBrook) **Created:** 6/3/2025 **Status:** 🔄 Open **Base:** `main` ← **Head:** `feat_board_shortcut_mutli_move` --- ### 📝 Commits (3) - [`d8f1d44`](https://github.com/AppFlowy-IO/AppFlowy/commit/d8f1d443d97f3b338b28d0b8b1243ca58819dd28) feat: board move multiple items to a group with shortcut - [`ade020f`](https://github.com/AppFlowy-IO/AppFlowy/commit/ade020f924bb0859fbd528cf59282f2571a13192) fix: board move multiple items to a group with shortcut skip the target group items - [`fe93661`](https://github.com/AppFlowy-IO/AppFlowy/commit/fe936616651e9eeb99795507e2a2ea497555875d) chore: fmt ### 📊 Changes **8 files changed** (+94 additions, -44 deletions) <details> <summary>View changed files</summary> 📝 `frontend/appflowy_flutter/lib/plugins/database/application/database_controller.dart` (+3 -2) 📝 `frontend/appflowy_flutter/lib/plugins/database/application/row/row_cache.dart` (+11 -0) 📝 `frontend/appflowy_flutter/lib/plugins/database/board/application/board_bloc.dart` (+48 -17) 📝 `frontend/appflowy_flutter/lib/plugins/database/board/presentation/board_page.dart` (+5 -2) 📝 `frontend/appflowy_flutter/lib/plugins/database/board/presentation/widgets/board_shortcut_container.dart` (+1 -4) 📝 `frontend/appflowy_flutter/lib/plugins/database/domain/database_view_service.dart` (+7 -6) 📝 `frontend/rust-lib/flowy-database2/src/entities/database_entities.rs` (+8 -4) 📝 `frontend/rust-lib/flowy-database2/src/event_handler.rs` (+11 -9) </details> ### 📄 Description related issue https://github.com/AppFlowy-IO/AppFlowy/issues/5524 [FR] Board move multiple items to a group with shortcut ### Feature Preview [<preview>](https://github.com/user-attachments/assets/aa3c9a86-5337-407a-a9cb-596629870ce9) <!--- 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 - [ ] 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. ## Summary by Sourcery Enable batch moving of board items by extending the moveGroupRow flow end-to-end—from RPC payloads and Rust handlers to Dart events, controller, and UI bindings—so multiple cards can be moved together via shortcut. New Features: - Support moving multiple selected board cards to a target group or position at once - Add a keyboard shortcut to move multiple selected cards to the previous or next group Enhancements: - Refactor moveGroupRow RPC payloads, params, and handlers to accept lists of row IDs - Update BoardBloc, DatabaseController, and event definitions to handle batch moves of GroupedRowId lists - Improve adjacent-group move logic to compute and move multiple rows across groups --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
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#8272
No description provided.