Skip to content

feat: reorder bookmarks and folders via drag-and-drop - #59

Merged
Wikid82 merged 1 commit into
developmentfrom
feature/38-drag-and-drop-reorder
Aug 21, 2026
Merged

feat: reorder bookmarks and folders via drag-and-drop#59
Wikid82 merged 1 commit into
developmentfrom
feature/38-drag-and-drop-reorder

Conversation

@Wikid82

@Wikid82 Wikid82 commented Aug 21, 2026

Copy link
Copy Markdown
Owner

Summary

  • Adds an optional order field to Bookmark/BookmarkFolder and a sortByOrder helper that sorts by it when set, falling back to the existing createdAt/name ordering for anything not yet touched by a drag.
  • Wires BookmarksTreeProvider up as a vscode.TreeDragAndDropController (registered via dragAndDropController on createTreeView) to support:
    • Reordering bookmarks within a folder/list
    • Reordering folders themselves
    • Dragging a bookmark onto a folder to move it (alternative to "Move to Folder...")
  • List view reorders as one flat scope without reassigning folderId; tree view reassigns folderId when a bookmark is dropped across folders.

Closes #38

Test plan

  • npm run lint
  • npm run test:coverage — 100% statements/lines, 94.11% branches
  • npm run build
  • scripts/local-patch-report.sh — 100% patch coverage (69/69)

Adds an explicit `order` field to Bookmark/BookmarkFolder and wires
BookmarksTreeProvider up as a vscode.TreeDragAndDropController so
users can drag to reorder bookmarks within a folder/list, reorder
folders, and drag a bookmark onto a folder to move it. Items sort by
`order` when set, falling back to the existing createdAt/name
ordering for anything not yet touched by a drag.

Closes #38
@codecov-commenter

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 95.65217% with 3 lines in your changes missing coverage. Please review.

Files with missing lines Patch % Lines
extension.ts 95.65% 0 Missing and 3 partials ⚠️

📢 Thoughts on this report? Let us know!

@Wikid82
Wikid82 merged commit 21e51d8 into development Aug 21, 2026
6 checks passed
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