Skip to content

Reorder: drag rows, Move Up/Down one slot - #24

Merged
janthoXO merged 3 commits into
mainfrom
feat/reorder-step
Sep 18, 2026
Merged

janthoXO merged 3 commits into
mainfrom
feat/reorder-step

Conversation

@janthoXO

@janthoXO janthoXO commented Sep 18, 2026 •

Copy link
Copy Markdown
Owner

Priority list move only via Move to Top/Bottom. One slot up = impossible. Fix.

What

  • Drag and drop. Old .onMove dead: row .onTapGesture (click = make active) eat mouse-down on macOS, list never start drag. Custom .draggable also blocked by same gesture. Fix = no custom gesture on row:
    • click = native List(selection:). Setter call makeActive for connected device. Getter = active device, so active row show system selection.
    • drag = native .onMove, with system insertion line.
  • Menu (… and right-click): Move Up / Move Down, one slot. Replace Move to Top / Move to Bottom. Up disabled on first row, Down disabled on last.
  • Core: ScopeConfig.move(_:to:), index clamped. Replace moveToTop / moveToBottom.
  • README + README_DEV updated.

Tested

  • swift build, swift test pass (20). One test cover up, down, clamp at both ends, unknown UID.
  • ./bundle.sh ok.
  • First try (.draggable) failed in real popover, drag no start. Second try (native selection + .onMove) wait for human mouse test.

onMove dead on macOS when row has tap gesture. rows now .draggable + .dropDestination.
move(_:to:) clamped, replace moveToTop/moveToBottom.
row tap gesture eat mouse-down, no drag start. list selection now make device active.
@janthoXO
janthoXO merged commit 7e271c7 into main Sep 18, 2026
0 of 4 checks passed
@janthoXO
janthoXO deleted the feat/reorder-step branch September 18, 2026 15:03
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.

1 participant