Release /
Rectangle v2.0.4
Arrange windows using middle or extra mouse buttons, with optional modifier keys.
Share
Before you upgrade to v2.0.4
With macOS Reduce Transparency enabled, snap previews use a translucent non-blurred footprint and hide the blur controls.
What changed in v2.0.4
Window actions accept mouse-button shortcuts, optionally targeting the window under the pointer. Adds six-column actions and repeated half-action side switching; snapping can trigger before outer edges, recognizes Emacs 28, and honors a zero notch gap.
Also: Full-height sixths, opposite-side repeats, early edge snapping, alphabetical stack lists, Emacs snapping and notch-gap fixes, and additional translations.
Download Rectangle v2.0.4 from GitHub Releases; requires macOS 14+ and Accessibility permission. Window animations remain experimental and off by default.
New things you can do
Record a button in an action's shortcut field. Buttons target the focused window by default; an optional setting targets the window under the pointer while preserving focus except for actions that bring windows forward.
Read the evidence
Adds Persian and Ukrainian translations, completes Simplified Chinese and Brazilian Portuguese, and adds a Simplified Chinese README.
Fixed and improved
Assign `firstVerticalSixth` through `lastVerticalSixth` for six full-height columns, rotating to rows on portrait displays. Set `subsequentExecutionMode` to 6 to switch half actions to the opposite side when repeated.
Read the evidence
Enable early edge snapping with `snapBeforeReachingEdges`: the toggle uses 20 points, with custom distances supported. It overrides margins on exposed outer edges; shared boundaries and corner targets keep their existing margins.
Read the evidence
Drag-to-snap recognizes Emacs 28 windows even when they expose an `AXTextField` role without an `AXWindow` attribute.
Setting `screenEdgeGapTopNotch` to 0 now removes the top gap on notched displays instead of falling back to `screenEdgeGapTop`. Delete the notch-specific preference to restore that fallback.
Seeded by @iluxav with Codex, from the release's public sources. Each change links to its evidence.