Skip to content

Add drag-to-snap areas for eighths#1708

Open
devindudeman wants to merge 2 commits intorxhanson:mainfrom
devindudeman:feature/eighths-snap-areas
Open

Add drag-to-snap areas for eighths#1708
devindudeman wants to merge 2 commits intorxhanson:mainfrom
devindudeman:feature/eighths-snap-areas

Conversation

@devindudeman
Copy link

@devindudeman devindudeman commented Feb 14, 2026

Summary

  • Adds compound snap area support for eighths (4x2 grid), following the same pattern used by sixths and fourths
  • Dragging to the top or bottom screen edge and sliding along it snaps windows to one of four eighth positions
  • Selectable in the Snap Areas preferences tab dropdown
  • Eighths appear in their own "Eighths" submenu in the status bar menu
  • Particularly useful for ultra-wide monitors

Changes

  • New EighthsCompoundCalculation.swift with top/bottom eighths compound calculations
  • CompoundSnapArea.swift — added topEighths/bottomEighths cases
  • WindowAction.swift — made eighths drag-snappable, added display names, category, and firstInGroup
  • WindowActionCategory.swift — added .eighths category
  • TerminalCommands.md — updated docs

Test plan

  • In Settings > Snap Areas, set the top edge dropdown to "Top eighths from corners; maximize"
  • In Settings > Snap Areas, set the bottom edge dropdown to "Bottom eighths from corners; thirds"
  • Drag window to top edge, slide left/right — should cycle through 4 top eighth positions
  • Drag window to bottom edge, slide left/right — should cycle through 4 bottom eighth positions
  • Verify eighths appear in "Eighths" submenu in status bar menu
  • Verify existing sixths/thirds/fourths snap areas still work correctly

Adds compound snap area support for eighths (4x2 grid), following the
same pattern as sixths. Can be enabled via terminal command or selected
in the Snap Areas preferences tab.

Terminal command: defaults write com.knollsoft.Rectangle eighthsSnapArea -bool true

Particularly useful for ultra-wide monitors.
The snap area migration only runs for versions < 64, so the terminal
command would not take effect on modern installs. Eighths snap areas
are configurable directly in the Snap Areas preferences tab.
@rxhanson
Copy link
Owner

Thanks! I'll test it out soon

@rxhanson
Copy link
Owner

Here are the assets: eighthsAssets.zip

I would prefer these two actions to be done for this to be merged:

  1. Add those assets to the eighths actions
  2. Either add shortcut recorders for eighths to the ellipsis popover in the General tab (not the Shortcuts tab), or make it so individual eighths are only added to both the status bar menu and the snap areas by Terminal command. (It's odd to have them selectable in the menus but not configurable).

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.

2 participants

Comments