Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
35 changes: 19 additions & 16 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,8 @@ adheres to [Semantic Versioning](https://semver.org) and the

## [Unreleased]

## [0.16.0] — 2026-08-26

### Fixed
- A **store file that no longer decodes is moved aside instead of being silently
overwritten.** File Shelf, Snippets and Clipboard History all treated an
Expand Down Expand Up @@ -35,6 +37,21 @@ adheres to [Semantic Versioning](https://semver.org) and the
already does.

### Added
- **File Shelf**, a new menu bar tool: a drag‑and‑drop staging area for moving
files between apps and Spaces without keeping a Finder window open. Drop
files onto the menu bar icon or into the popover to park them, then drag them
straight back out into any app — the drag hands over the real file, so the
receiving app gets the original rather than a copy. Each row also offers
Reveal in Finder, Copy Path and Remove, and the menu bar icon carries a count
of what you are currently carrying.

Shelving never copies bytes: an entry is a security‑scoped bookmark to the
original file, so parking a 40 GB video costs the same as parking a note, the
shelf survives a relaunch, and an entry keeps working after the file is
renamed or moved. A file that has been deleted, or that lives on a disk you
have unplugged, stays on the shelf and is shown as unavailable rather than
quietly disappearing — the shelf's job is to tell you where the thing you
parked went, not to pretend you never parked it.
- **Audio Switcher** now saves device profiles: name the input/output pair you
are on — "Headset", "Desk", "Meeting" — and switch back to it with one click.
Profiles remember devices by their CoreAudio UID rather than the numeric
Expand Down Expand Up @@ -106,21 +123,6 @@ adheres to [Semantic Versioning](https://semver.org) and the
alone — and wins outright where there are fewer performance cores. The GPU
option appears only when this ffmpeg actually has the encoder, and a stored
preference for it falls back to the CPU on a machine that no longer offers it.
- **File Shelf**, a new menu bar tool: a drag‑and‑drop staging area for moving
files between apps and Spaces without keeping a Finder window open. Drop
files onto the menu bar icon or into the popover to park them, then drag them
straight back out into any app — the drag hands over the real file, so the
receiving app gets the original rather than a copy. Each row also offers
Reveal in Finder, Copy Path and Remove, and the menu bar icon carries a count
of what you are currently carrying.

Shelving never copies bytes: an entry is a security‑scoped bookmark to the
original file, so parking a 40 GB video costs the same as parking a note, the
shelf survives a relaunch, and an entry keeps working after the file is
renamed or moved. A file that has been deleted, or that lives on a disk you
have unplugged, stays on the shelf and is shown as unavailable rather than
quietly disappearing — the shelf's job is to tell you where the thing you
parked went, not to pretend you never parked it.

## [0.14.0] — 2026-07-21

Expand Down Expand Up @@ -585,7 +587,8 @@ Switcher, Focus Timer, Calendar, Keep Awake, Maintenance, and Dev Tools.
- The menu bar tool box shell and the first tool, System Monitor (live CPU,
memory, disk, network, and temperature metrics).

[Unreleased]: https://github.com/havokentity/MacTools/compare/v0.15.0...HEAD
[Unreleased]: https://github.com/havokentity/MacTools/compare/v0.16.0...HEAD
[0.16.0]: https://github.com/havokentity/MacTools/releases/tag/v0.16.0
[0.15.0]: https://github.com/havokentity/MacTools/releases/tag/v0.15.0
[0.14.0]: https://github.com/havokentity/MacTools/releases/tag/v0.14.0
[0.13.0]: https://github.com/havokentity/MacTools/releases/tag/v0.13.0
Expand Down
26 changes: 26 additions & 0 deletions Packaging/ReleaseNotes/0.16.0.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
### New tool

**File Shelf** — a drag‑and‑drop staging area in the menu bar. Drop files onto
the tray icon to park them, then drag them straight back out into any app.

- Holds a bookmark rather than a copy, so parking a 40 GB video is instant and
the entry keeps working after the file is renamed or moved
- A file you deleted, or one on a disk you unplugged, is shown as unavailable
rather than quietly disappearing

### Improvements

- Uninstall Apps: also removes the support files an app leaves behind
- Window Manager: send a window to the next display, and undo the last arrange
- Disk Usage Analyzer: Reveal, Copy Path and Move to Trash straight from a scan
- Grab Text: press ⌃⌥G anywhere for instant OCR
- System Monitor: history sparklines and a top‑process list
- Audio Switcher: save an input/output pair as a named profile
- Clean Drive: developer junk listed directory by directory

### Fixed

A store file that no longer decodes is moved aside instead of being silently
overwritten, and File Shelf resolves its shelf off the main thread.

[Full changelog](https://github.com/havokentity/MacTools/blob/main/CHANGELOG.md)
13 changes: 6 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

[![CI](https://github.com/havokentity/MacTools/actions/workflows/ci.yml/badge.svg)](https://github.com/havokentity/MacTools/actions/workflows/ci.yml)

A native macOS menu bar tool box — 26 fast, focused utilities in one lightweight Swift app, inspired by the convenience of Parallels Toolbox.
A native macOS menu bar tool box — 27 fast, focused utilities in one lightweight Swift app, inspired by the convenience of Parallels Toolbox.

Open the tool box from the menu bar, search for what you need, and launch it. Each tool is a self-contained helper with its own polished SwiftUI interface; tools that run continuously (like System Monitor and Clipboard History) add their own menu bar item.

Expand All @@ -22,10 +22,10 @@ The app updates itself automatically via [Sparkle](https://sparkle-project.org);

| Tool | What it does |
| --- | --- |
| **System Monitor** | Live menu bar CPU, memory, disk, network, and temperature metrics |
| **System Monitor** | Live menu bar CPU, memory, disk, network, and temperature metrics — last‑minute sparklines and the five busiest processes by CPU or memory |
| **Clipboard History** | Searchable clipboard with text/image/file capture, pinning, and quick‑paste (⇧⌘V) |
| **Clean Drive** | Reclaim space by clearing caches, logs, and temp files — async, with a live freeing‑up gauge |
| **Disk Usage Analyzer** | Interactive treemap of what's eating your disk |
| **Clean Drive** | Reclaim space by clearing caches, logs, and temp files — async, with a live freeing‑up gauge; developer junk (DerivedData, node_modules, …) is listed directory by directory |
| **Disk Usage Analyzer** | Interactive treemap of what's eating your disk — reveal, copy the path, or trash any row from the results |
| **Duplicate Finder** | Find and trash byte‑identical duplicate files |
| **Uninstall Apps** | Remove apps and their leftover support files |
| **Download Video** | Save videos from the web (bundled, checksum‑verified yt‑dlp) |
Expand All @@ -34,8 +34,8 @@ The app updates itself automatically via [Sparkle](https://sparkle-project.org);
| **Grab Text** | OCR any region of the screen straight to your clipboard, from a global shortcut (⌃⌥G) |
| **QR Studio** | Generate QR codes and scan them from the screen |
| **Color Picker** | System eyedropper with hex / RGB / HSL and a recent‑colors palette |
| **Window Manager** | Snap windows to halves, thirds, and corners with global shortcuts (⌃⌥ + arrows) |
| **Audio Switcher** | One‑click switching of the default input/output device |
| **Window Manager** | Snap windows to halves, thirds, and corners with global shortcuts (⌃⌥ + arrows), move them to the next display (⌃⌥⌘→), and undo the last arrange (⌃⌥⌫) |
| **Audio Switcher** | One‑click switching of the default input/output device, with named profiles that set both at once |
| **Mic Control** | Mute your microphone system‑wide from the menu bar, with the tray icon showing at a glance whether you're live |
| **Volume Mixer** | Per‑app volume sliders and per‑app output routing via CoreAudio process taps (macOS 14.2+) |
| **Audio Router** | Virtual audio routing — install independent loopback cables for app‑to‑app audio, build mirror/aggregate devices with presets, and "listen" to any input through an output |
Expand All @@ -45,7 +45,6 @@ The app updates itself automatically via [Sparkle](https://sparkle-project.org);
| **Keep Awake** | Prevent sleep, optionally for a set duration |
| **Maintenance** | Handy Finder/system toggles and cache/index refreshes |
| **Dev Tools** | JSON, Base64, JWT, URL, hashing, UUID, timestamp, and case utilities |
| **Dev Tools** | JSON, Base64, URL, hashing, UUID, timestamp, and case utilities |
| **Snippets** | A searchable library of reusable text — click one to paste it into the app you came from |
| **Scratchpad** | Always‑there plain‑text notepad with named notes, autosave, and a live word count |
| **Network Info** | Interface, local IPv4/IPv6, subnet, router, and DNS at a glance — click any value to copy; public IP only on request |
Expand Down
2 changes: 1 addition & 1 deletion VERSION
Original file line number Diff line number Diff line change
@@ -1 +1 @@
0.15.0
0.16.0
Loading