diff options
| author | Gabriel Schneider <[email protected]> | 2026-08-11 15:58:58 -0300 |
|---|---|---|
| committer | Gabriel Schneider <[email protected]> | 2026-08-11 16:26:20 -0300 |
| commit | 4ca28745d774c232cd31a29c17878f19bbe24cf5 (patch) | |
| tree | face852acae5bc347e6bab2bb5cede501e0ce1d3 /test/macos-snapshots/drop.snap | |
| parent | dedfdea43f0d6c7151c541284c81027969d89032 (diff) | |
| parent | 89d93d5e7348304bc7d8a148f9ad9c1beb200459 (diff) | |
| download | pardes-4ca28745d774c232cd31a29c17878f19bbe24cf5.tar.gz pardes-4ca28745d774c232cd31a29c17878f19bbe24cf5.zip | |
merge the macOS app branch: the AppKit shell, pixel attachments, live theming, and mupdf -Djpx
Three commits off 38e9919 (macos-app@upstream) merged into main's ghostty bump.
No textual conflicts, and two things the merge needed:
- nested.zig asked libc for fstatat. Darwin has it; on linux std.c declares it
`void` (glibc hides it behind a versioned symbol std cannot name), so the tty
build stopped at 'type void not a function'. statNoFollow keeps fstatat on
darwin and asks statx on linux for the same three fields, which is what this
file did before the branch generalized it to both platforms.
- .DS_Store rode along with a797a1a. Deleted, and .gitignore now says so.
linux: snap 86/86, unit-test, image-harness and mupdf-check green. nested.zig
also type-checks for aarch64-macos.
Diffstat (limited to 'test/macos-snapshots/drop.snap')
| -rw-r--r-- | test/macos-snapshots/drop.snap | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/test/macos-snapshots/drop.snap b/test/macos-snapshots/drop.snap new file mode 100644 index 00000000..f427fe2a --- /dev/null +++ b/test/macos-snapshots/drop.snap @@ -0,0 +1,37 @@ +# A file dropped ON the grid opens beside the pane it was dropped on. +# +# Finder and the Dock already reach the app through application(_:open:), but +# that path cannot say WHERE — it opens next to whichever pane happened to have +# focus. A drop knows where the hand was, and in acme that is the whole +# difference: `Look` places the document relative to the pane it runs in. +# +# So a drop is defined as a CLICK followed by `Look`, and nothing more. The +# click focuses the pane under the pointer exactly as a left click there would, +# then the ordinary builtin runs in it. There is no drop concept in the core +# and none was added — everything here the hand could have done itself. +# +# `drop` drives PardesView.drop, one call below performDragOperation, because +# NSDraggingInfo is a protocol with no public conformer: a test that had to +# build one would be testing its own stub. See the trackpad scripts for the +# same reasoning about NSTouch and pressure stages. +start 30 100 +wait 8000 $ +stable 700 20000 +text printf 'first file\n' > one.txt; printf 'second file\n' > two.txt +key enter +wait 8000 $ +stable 700 20000 +snap booted +# Dropped on the shell: one.txt opens as a document beside it. Absolute, +# because the core resolves a relative Look against the PANE's directory — +# the same absolute path the AppKit side builds out of an NSURL. +drop /private/tmp/pardes-macos-e2e/drop/cwd/one.txt 10 6 +stable 700 15000 +snap dropped_on_shell +# ...and now the placement is the assertion. Dropping the SECOND file inside +# the pane the first one opened puts it next to that pane, not next to the +# shell — which is only true because the click went where the pointer was. +drop /private/tmp/pardes-macos-e2e/drop/cwd/two.txt 10 20 +stable 700 15000 +snap dropped_on_document +draw drop |
