[PR #3376] [MERGED] feat: drag and drop a row in the Grid #5703

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

📋 Pull Request Information

Original PR: https://github.com/AppFlowy-IO/AppFlowy/pull/3376
Author: @fangwufeng-v
Created: 9/11/2023
Status: Merged
Merged: 9/27/2023
Merged by: @qinluhe

Base: mainHead: feat/tauri-grid-drag-row


📝 Commits (8)

  • 77690a7 feat: new style ui
  • 8f5e5ae feat: drag row
  • 3db872e feat: hooks for auto scroll feature when dragging
  • 75410ee feat: shared UI status that control auto scroll when dragging row.
  • 5dc8524 feat: optimize the drag interaction UI effect
  • 9f304f3 feat: refactor drag positon
  • 23b6708 feat: drag column header
  • 0fdb8cd feat: fix review issue

📊 Changes

34 files changed (+1062 additions, -287 deletions)

View changed files

📝 frontend/appflowy_tauri/.eslintrc.cjs (+1 -1)
📝 frontend/appflowy_tauri/src-tauri/tauri.conf.json (+1 -0)
frontend/appflowy_tauri/src/appflowy_app/assets/drag.svg (+8 -0)
frontend/appflowy_tauri/src/appflowy_app/components/database/Database.tsx (+41 -0)
frontend/appflowy_tauri/src/appflowy_app/components/database/DatabaseHeader.tsx (+47 -0)
frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/CellText.tsx (+21 -0)
frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/VirtualizedList.tsx (+46 -0)
frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/constants.ts (+9 -0)
frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/dnd/dnd.context.ts (+17 -0)
frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/dnd/drag.hooks.ts (+107 -0)
frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/dnd/drop.hooks.ts (+88 -0)
frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/dnd/index.ts (+7 -0)
frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/dnd/utils.ts (+180 -0)
frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/index.ts (+6 -0)
📝 frontend/appflowy_tauri/src/appflowy_app/components/database/database.context.ts (+2 -2)
📝 frontend/appflowy_tauri/src/appflowy_app/components/database/database_bd_svc.ts (+19 -5)
📝 frontend/appflowy_tauri/src/appflowy_app/components/database/grid/GridCell/GridCell.tsx (+2 -2)
📝 frontend/appflowy_tauri/src/appflowy_app/components/database/grid/GridCell/GridCheckboxCell.tsx (+1 -1)
📝 frontend/appflowy_tauri/src/appflowy_app/components/database/grid/GridCell/GridSelectCell/GridSelectCell.tsx (+2 -2)
📝 frontend/appflowy_tauri/src/appflowy_app/components/database/grid/GridCell/GridTextCell.tsx (+6 -5)

...and 14 more files

📄 Description

Feature Preview

https://github.com/AppFlowy-IO/AppFlowy/issues/3364 : drag and drop row
https://github.com/AppFlowy-IO/AppFlowy/issues/3378 : drag and drop column

PR Checklist

  • My code adheres to the AppFlowy Style Guide
  • 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/3376 **Author:** [@fangwufeng-v](https://github.com/fangwufeng-v) **Created:** 9/11/2023 **Status:** ✅ Merged **Merged:** 9/27/2023 **Merged by:** [@qinluhe](https://github.com/qinluhe) **Base:** `main` ← **Head:** `feat/tauri-grid-drag-row` --- ### 📝 Commits (8) - [`77690a7`](https://github.com/AppFlowy-IO/AppFlowy/commit/77690a78a70770a0b2adbf8ec00f3a4af7f728cf) feat: new style ui - [`8f5e5ae`](https://github.com/AppFlowy-IO/AppFlowy/commit/8f5e5ae76a82eaeeebce3deda2c175ff1d20e31d) feat: drag row - [`3db872e`](https://github.com/AppFlowy-IO/AppFlowy/commit/3db872efe6e00688a893efc6a257e51ad88a33aa) feat: hooks for auto scroll feature when dragging - [`75410ee`](https://github.com/AppFlowy-IO/AppFlowy/commit/75410eec2377d53be5fbd10d26a08a5eae23cb0a) feat: shared UI status that control auto scroll when dragging row. - [`5dc8524`](https://github.com/AppFlowy-IO/AppFlowy/commit/5dc85244b6b17949eafdd86a13f0e9f9cf79fd26) feat: optimize the drag interaction UI effect - [`9f304f3`](https://github.com/AppFlowy-IO/AppFlowy/commit/9f304f35459adb427a3128f3c21a5a82eeaa8dda) feat: refactor drag positon - [`23b6708`](https://github.com/AppFlowy-IO/AppFlowy/commit/23b6708e669aecb2670bc9772b6515d9116dc145) feat: drag column header - [`0fdb8cd`](https://github.com/AppFlowy-IO/AppFlowy/commit/0fdb8cd3a844f7a5d631583a11ab1ef2a47a8e5b) feat: fix review issue ### 📊 Changes **34 files changed** (+1062 additions, -287 deletions) <details> <summary>View changed files</summary> 📝 `frontend/appflowy_tauri/.eslintrc.cjs` (+1 -1) 📝 `frontend/appflowy_tauri/src-tauri/tauri.conf.json` (+1 -0) ➕ `frontend/appflowy_tauri/src/appflowy_app/assets/drag.svg` (+8 -0) ➕ `frontend/appflowy_tauri/src/appflowy_app/components/database/Database.tsx` (+41 -0) ➕ `frontend/appflowy_tauri/src/appflowy_app/components/database/DatabaseHeader.tsx` (+47 -0) ➕ `frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/CellText.tsx` (+21 -0) ➕ `frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/VirtualizedList.tsx` (+46 -0) ➕ `frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/constants.ts` (+9 -0) ➕ `frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/dnd/dnd.context.ts` (+17 -0) ➕ `frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/dnd/drag.hooks.ts` (+107 -0) ➕ `frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/dnd/drop.hooks.ts` (+88 -0) ➕ `frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/dnd/index.ts` (+7 -0) ➕ `frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/dnd/utils.ts` (+180 -0) ➕ `frontend/appflowy_tauri/src/appflowy_app/components/database/_shared/index.ts` (+6 -0) 📝 `frontend/appflowy_tauri/src/appflowy_app/components/database/database.context.ts` (+2 -2) 📝 `frontend/appflowy_tauri/src/appflowy_app/components/database/database_bd_svc.ts` (+19 -5) 📝 `frontend/appflowy_tauri/src/appflowy_app/components/database/grid/GridCell/GridCell.tsx` (+2 -2) 📝 `frontend/appflowy_tauri/src/appflowy_app/components/database/grid/GridCell/GridCheckboxCell.tsx` (+1 -1) 📝 `frontend/appflowy_tauri/src/appflowy_app/components/database/grid/GridCell/GridSelectCell/GridSelectCell.tsx` (+2 -2) 📝 `frontend/appflowy_tauri/src/appflowy_app/components/database/grid/GridCell/GridTextCell.tsx` (+6 -5) _...and 14 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 <!--- 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 --> https://github.com/AppFlowy-IO/AppFlowy/issues/3364 : drag and drop row https://github.com/AppFlowy-IO/AppFlowy/issues/3378 : drag and drop column --- <!--- Before you mark this PR ready for review, run through this checklist! --> #### PR Checklist - [ ] My code adheres to the [AppFlowy Style Guide](https://appflowy.gitbook.io/docs/essential-documentation/contribute-to-appflowy/software-contributions/submitting-code/style-guides) - [x] 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:19:55 +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#5703
No description provided.