Skip to content

Releases: GordonBeeming/vista

v0.12 — indexing that heals itself

Choose a tag to compare

@GordonBeeming GordonBeeming released this 01 Jul 08:35
972f8d5

vista v0.12 — indexing that heals itself

What's new

  • Vista now recovers on its own if the folder watcher stalls. Every few minutes it re-checks your watched folders and re-arms the watcher, so new screenshots keep getting indexed even when macOS quietly stops sending file-change events, which tends to happen with folders in iCloud Drive.
  • One unreadable image can no longer freeze indexing. OCR now has a per-file timeout, so a bad file gets skipped instead of wedging the whole queue.

Install

brew upgrade --cask gordonbeeming/tap/vista

Or download the DMG from the assets below.

v0.11 — upgrades relaunch the app

Choose a tag to compare

@GordonBeeming GordonBeeming released this 10 Jun 02:01
c852a35

vista v0.11 — upgrades relaunch the app

What's new

  • brew upgrade --cask gordonbeeming/tap/vista now relaunches Vista after updating, so you're running the new version straight away instead of having to quit and reopen it by hand. From the next upgrade onward it also quits the old copy first (this release is the one that teaches your install to do that).

Install

brew upgrade --cask gordonbeeming/tap/vista

Or download the DMG from the assets below.

v0.10 — your index survives updates

Choose a tag to compare

@GordonBeeming GordonBeeming released this 09 Jun 23:37
88f807c

vista v0.10 — your index survives updates

What's new

  • Fixed the big one: installing a new build no longer looks like it wiped your whole library and re-OCR'd from scratch. Your index was always safe on disk. The scan was deleting rows whenever it briefly couldn't read your screenshots folder, which happens when a new build loses Full Disk Access. Now it never deletes on a scan that can't see the folder.
  • When Vista can't read your screenshots folder, it tells you (in the menu and the panel) with a button straight to Full Disk Access. Grant it and indexing carries on from where it stopped, with no re-processing.
  • The grid refreshes when you reopen the panel, so anything indexed while it was closed shows up right away.
  • Plainer status text, like "Reading text from screenshots · 645 of 6,035 · 1,407 ready", so a big backlog never reads as empty.

Install

brew upgrade --cask gordonbeeming/tap/vista

Or download the DMG from the assets below.

v0.9 — scroll back through your whole history

Choose a tag to compare

@GordonBeeming GordonBeeming released this 09 Jun 22:31
6404032

vista v0.9 — scroll back through your whole history

What's new

  • The grid used to stop at the most recent few hundred screenshots, so on a big library it only reached back a couple of weeks. Now it keeps loading older ones as you scroll, all the way back through everything indexed.
  • Single-click selects a thumbnail; double-click (or Enter) copies it and closes the panel. Before, a single click copied straight away — which made it easy to copy the wrong one while browsing.

Install

brew upgrade --cask gordonbeeming/tap/vista

Or download the DMG from the assets below.

v0.8 — Shift+Space preview + ⌘K actions menu

Choose a tag to compare

@GordonBeeming GordonBeeming released this 13 May 10:10
3762634

vista v0.8 — Shift+Space preview + ⌘K actions menu

What's new

  • Shift+Space opens a Quick Look-style preview at about 85% of the panel area, with the screenshot, filename, captured-at, file size, dimensions, and any OCR text. Esc once closes the preview; a second Esc dismisses the panel. Plain space still types into the search field so multi-word queries keep working.
  • ⌘K finally does something: opens a Raycast-style actions menu listing every action with its keyboard shortcut. Pin label flips between "Pin" and "Unpin" based on the selected record.
  • Esc cascade now goes actions menu → preview → panel dismiss, so peeking at a result never costs you your place in the grid.

Install

brew upgrade --cask gordonbeeming/tap/vista

Or download the DMG from the assets below.

v0.7 — fresh search after a break

Choose a tag to compare

@GordonBeeming GordonBeeming released this 27 Apr 12:26
addacf5

vista v0.7 — fresh search after a break

What's new

  • The panel now resets its search, scroll, and selection when it has been hidden longer than a configurable timeout (default 2 minutes) — coming back to Vista after a break starts you on a clean slate instead of mid-list with a stale query. Configurable in Settings → Behaviour, with a "Never" option if you preferred the old resume-where-you-left-off behaviour (#7).

Install

brew upgrade --cask gordonbeeming/tap/vista

Or download the DMG from the assets below.

v0.6 — grid scroll follows the focused cell

Choose a tag to compare

@GordonBeeming GordonBeeming released this 24 Apr 03:25
79eb80a

vista v0.6 — grid scroll follows the focused cell

What's new

  • Arrow-key navigation now scrolls the results grid so the highlighted cell stays in view (#6).

Install

brew upgrade --cask gordonbeeming/tap/vista

Or download the DMG from the assets below.

v0.5 — no more re-OCR on relaunch

Choose a tag to compare

@GordonBeeming GordonBeeming released this 22 Apr 14:32
5a6c05a

vista v0.5 — no more re-OCR on relaunch

What's new

Your index actually resumes now. If you ran Vista on v0.1..v0.4 against a folder with more than a few hundred screenshots, you'd have seen something like OCR'ing 1800 / 2000 new images every time you relaunched — even though nothing had changed. Root cause: the "is this file unchanged?" check compared mtimes with exact Double equality, and at year-2026 timestamps a Double ULP (~400 ns) is coarser than APFS's nanosecond mtime resolution. A random ~37% of rows drifted after the SQLite round-trip and got re-OCR'd on every start. Same text as last time. Just burning CPU.

Fixed by widening the comparison to a 1 ms tolerance, with an exact size match still doing the heavy lifting when a file really changes. No schema change; the existing DB benefits immediately. First launch after upgrading should log N already indexed, 0 new file(s) to OCR and settle on Up to date in seconds instead of grinding for minutes.

Install

```bash
brew upgrade --cask gordonbeeming/tap/vista
```

v0.4 — menu shows the real hotkey

Choose a tag to compare

@GordonBeeming GordonBeeming released this 22 Apr 13:57
ce485b2

vista v0.4 — menu shows the real hotkey

What's new

The menu bar's "Search Screenshots…" item now shows whatever chord you actually bound. Before v0.4 it was hardcoded to ⇧⌘S regardless of what you'd set in Preferences, so anyone who rebound to a Hyper chord (or anything else) saw a stale default in the dropdown. The menu now reads the live chord and renders it with native shortcut glyphs — ⌃⌥⇧⌘S for a Hyper+S mapping, and so on. Global invocation was already correct; this just stops the menu from lying about it.

Also fixed an edge case where any chord on the A key (e.g. Hyper+A) silently dropped the menu glyph. Carbon's virtual keycode for A is 0, which the old "empty chord" sentinel was colliding with.

For developers

Scripts/dev-run.sh now tears down after itself. Ctrl-C out of the log tail kills the running dev Vista and removes Distribution/Vista.app from disk, so a stale dev build can't silently win the hotkey the next time you log in. --no-tail is unchanged.

Install

```bash
brew upgrade --cask gordonbeeming/tap/vista
```

v0.3 — OCR crash fix + honest progress UX

Choose a tag to compare

@GordonBeeming GordonBeeming released this 22 Apr 13:05
55ca7d9

vista v0.3 — crash fix + real "resume" progress

What's new

Crash fix: OCR scanning a large folder no longer takes down the app. v0.2 could hit a rare Vision timing where both the text-recognition completion handler and the image-request perform() tried to resume the same async continuation, which macOS's CheckedContinuation enforces by crashing. Reliably reproduced around 2,700 files into a scan of 4,750. Now routed through a one-shot gate that drops the duplicate resume.

Indexing status honestly reflects resume. The menu bar previously said "Indexing N / 4762" on every launch even when the database was fully populated and the counter was just rolling through fingerprint-checks at microsecond speed. The indexer is now split into four named phases — enumerate, reconcile, fingerprint, OCR — and the progress counter shows only the actual OCR queue. A relaunch with a populated DB now shows Up to date almost instantly. A relaunch with 2,000 new files shows OCR'ing 0 / 2000 new images and counts up against real work.

Install

brew upgrade --cask gordonbeeming/tap/vista

If you were running v0.2 and watching the index grow into your iCloud screenshots folder, upgrading will pick up right where it left off — nothing re-OCR'd, the database is untouched.