Skip to content

Add file stacking visual feedback for multi-item drag operations#1021

Open
Neekoras wants to merge 1 commit intoTheBoredTeam:devfrom
Neekoras:dev
Open

Add file stacking visual feedback for multi-item drag operations#1021
Neekoras wants to merge 1 commit intoTheBoredTeam:devfrom
Neekoras:dev

Conversation

@Neekoras
Copy link

@Neekoras Neekoras commented Feb 7, 2026

Implements Dropover/Yoink-style stacked card preview when dragging multiple items from the shelf. Users can now clearly see when dragging multiple files with a visual stack, count badge, and "N items" label. Also adds Cmd+A keyboard shortcut to select all shelf items.

Changes:

  • Add StackedDragPreviewView component with up to 3 stacked layers
  • Modify drag preview rendering to detect multi-selection
  • Add selectAll() method to ShelfSelectionModel
  • Implement Cmd+A keyboard handler in ShelfView

Fixes #890

Implements Dropover/Yoink-style stacked card preview when dragging multiple items from the shelf. Users can now clearly see when dragging multiple files with a visual stack, count badge, and "N items" label. Also adds Cmd+A keyboard shortcut to select all shelf items.

Changes:
- Add StackedDragPreviewView component with up to 3 stacked layers
- Modify drag preview rendering to detect multi-selection
- Add selectAll() method to ShelfSelectionModel
- Implement Cmd+A keyboard handler in ShelfView

Fixes TheBoredTeam#890

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
// MARK: - Drag Preview Rendering

@MainActor
private func renderDragPreview() async -> NSImage {
Copy link
Member

Choose a reason for hiding this comment

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

Duplicate function

Copy link
Member

@Alexander5015 Alexander5015 left a comment

Choose a reason for hiding this comment

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

It looks like the build is currently failing. Please test your changes to ensure the code builds successfully and all features work as expected. For visual updates like this, please ensure you include screenshots or a short screen recording. Thanks!

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