Automate Window Positioning With macOS and Apps

posted in: April 2020 | 0
19 comments

Automate Window Positioning With macOS and Apps

Don’t squander precious time manually repositioning and resizing Mac windows over and over again. You can automate such drudgery to a large degree.

macOS offers some help. You’re probably aware of Split View, which puts two windows side-by-side in full-screen mode, and Apple has built in additional capabilities. Third-party utilities give you even more window control. There are many such apps out there, and even general-purpose utilities like Keyboard Maestro can help you move windows around.

One window-positioning utility, Magnet, is a zero-configuration tool that anticipates what presets users want. It was my favorite app of this kind for a long time. Last I checked, the $1.99 app sat atop the Mac App Store’s productivity category.

Another, Moom, lets you customize your window behavior. I weaned myself off Magnet and went all-in with Moom because of its flexibility. You can buy Moom for $10 directly from its developer, Many Tricks, or through the Mac App Store.

Magnet and Moom provide a capability I have envied in Microsoft Windows and Google’s ChromeOS: “window snapping.” When you drag windows to the edges of the screen, window snapping causes them to snap into particular positions and shapes.

More on Magnet and Moom in a bit—let’s look at what macOS can do for you first.

macOS Window Positioning Capabilities

Starting with macOS 10.11 El Capitan, Apple gave us Split View. Click a window’s green full-screen button at the upper left. As you hold the button, the window shrinks, and you can drag it to the left or right side of the screen. Release the button and then click a window on the other side of the screen to add it to Split View.

In 10.15 Catalina, Apple simplified the interface. Hover the pointer over a full-screen button and a menu appears with options to tile the window to the left or the right of the display. Choose one of those options, and macOS prompts you to select one of the remaining windows to fill the rest of the screen. That menu also provides an option to make a single window full-screen. That also happens if you tile one window but no additional windows are available to fill the remaining space.

Catalina tiling options

Strangely, Apple’s help article about Split View makes no mention of a hidden feature in Catalina that gives you additional window-positioning options that don’t invoke full-screen mode.

Hover your pointer over the green button while pressing the Option key for a few seconds to see a different set of commands that let you movewindows to the left or right instead of tiling them—meaning the windows are not taken full-screen but simply shifted to one half of the screen or the other.

While you’re Option-hovering, you also get a zoom button that causes a window to fill up the screen (minus the space occupied by the Dock and menu bar) without going full-screen. (In older versions of macOS, you can Option-click the full-screen button to maximize a window.)

Catalina alternate window options

I tip my hat to Scholle McFarland for including this information in her book, Take Control of Catalina, especially since so few others have noticed it.

Magnetize Your Screen Edges

Magnet gets you up and running quickly. Its menu bar presets include icons as well as text descriptors that make them instantly understandable. Magnet’s keyboard shortcuts strike me as difficult to memorize, but your brain might be up for the job.

Regardless, you can resize Mac windows as left and right halves, as top and bottom halves, as quarter spaces, as one-third or two-thirds windows, and more, with results that never go full-screen. That’s usually my preference since it keeps the Dock and menu bar visible. If you have multiple displays, Magnet also offers Next Display and Previous Display commands to easily move windows from screen to screen.

For an easier approach, use Magnet’s mouse-based window positioning, which snaps windows into several positions and sizes:

  • Dragging a window to the display’s left or right edge triggers half-screen resizing.
  • Dragging a window to the top maximizes it (but does not take it full-screen).
  • Dragging to the corners of the screen triggers top-bottom halving or quartering, depending on precisely where you position the cursor. This takes a little practice.
  • Dragging to the bottom creates one-third or two-thirds windows, depending on exactly where you put the cursor. Again, practice makes perfect.

These dragging motions conjure up preview outlines of windows—as in Windows and ChromeOS—to guide you in achieving the desired positioning.

Tweak Moom to Your Liking

Power users seeking greater window-positioning superpowers should give Moom a look. You must be willing to tinker, though, since Moom offers only a few basic features until you customize it to your needs.

You can run Moom as a Dock or menu bar app, but the latter makes the most sense because it simplifies accessing your customized windows-positioning presets.

To get started, open Moom’s preferences and click Custom. You’ll find lots of options, but I suggest you start with Move and Zoom.

You’re presented with a grid that functions as a tiny facsimile of the screen. Drag your pointer across the grid to make a square or rectangle that corresponds to a hypothetical window’s onscreen shape and position. From then on, choose that preset from the Moom menu to position and size any window to those specs. If necessary for more precise positioning, you can tweak the grid’s horizontal and vertical cell density before creating presets.

Moom grids

I’ve used this feature to create presets that center windows with a variety of widths—narrower if I am browsing the Web and wider if I am working with others in a Google Doc and need enough room for team comments on the right side. I’ve also created presets that position windows that take up two-thirds of the left or right of my screen.

Moom presets in the menu bar

You can also use Moom to reposition multiple windows at once. I often need a wider Google Chrome window to the left and a narrower one to the right. This was easy to set up. First, I manually positioned two Chrome windows exactly to my liking. Then, I chose the Save Window Layout Snapshot from the Moom menu. From then on, with two Chrome windows anywhere on the screen, I could instantly snap them into my preferred positioning. I also fashioned a preset for left and right Chrome windows of equal size.

Repositioning windows with Moom from the menu bar

Moom even supports scenarios that involve multiple apps. I often like to put a one-column Twitter client such as Tweetbot or Twitterrific on the left side of my display, with a Chrome window filling up the rest of the screen. Choosing Save Window Layout Snapshot saves this configuration in place. After that, when the Twitter client or Chrome is out of position, tidying them up is a cinch.

In addition, Moom takes over the green full-screen button in windows much the way Split View does in Catalina, but with more options in its hover menu. Hover the pointer over the full-screen button and you’ll see clickable icons for left and right halving, top and bottom halving, and maximizing.

Calling Moom from the green window button

Hold down the Option key while hovering and Moom presents you with quarter-window options. If you pine for Catalina’s default hover menu, press Command (or Command and then Option) as you hover, and its menu will appear.

Wait, there’s more! Moom offers a window “drawing” option via its hover menu. That means you can drag out a rectangle for on-the-fly resizing of your window in the proportions and positioning you want. You invoke this feature in one of two ways, depending on how you have configured Moom’s preferences:

  • In the hover menu, click the large icon that looks like a window outline (see image above). Moom displays a similar outline on your screen, and you can reposition and resize while holding down your mouse button. Release the mouse button when the outline is to your liking, and the window snaps to the rectangle you’ve drawn.
  • In the hover menu, you’ll see a hexagon-style grid. Drag your pointer across that grid to fill up any number of hexagons—the left half of the grid, the right two thirds, and so on. Moom reorients your window accordingly.

Moom hexagons

As a bonus, Moom includes window snapping via mouse dragging, but with fewer positioning options than Magnet provides. Moom provides only half-screen, quarter-screen, and maximize options.

Missing from Moom is a Magnet-style option to move windows from display to display with a keyboard shortcut.

Additional Utilities

I’ve focused on Magnet and Moom because they’re the window-resizing utilities I’ve used the most. Also, based on my research, I believe they offer the best mix of features for maximum versatility.

But I’d be remiss if I didn’t point you to a few other options.

  • Divvy ($13.99): If you just want grid-based window management à la Moom, Divvy is for you. Draw on a pop-up mini-grid to resize windows on the fly, or configure presets for standard configurations. (For those who use Windows as well as macOS, note that Divvy also exists for PCs.)
  • BetterSnapTool ($2.99): If you care mostly about window snapping, BetterSnapTool is the best choice I have seen that offers more granular control than Magnet and Moom. This app was also among the top-ranked paid apps in the Mac App Store’s productivity section last I checked.
  • BetterTouchTool ($6.50): Best known as a utility to turbocharge Apple trackpads and the Touch Bar on MacBook Pro laptops, BetterTouchTool provides window snapping, resizing, and moving controls. It’s also available via the $9.99-per-month Setapp app subscription service.
  • Rectangle. If free and open source is your jam, this Magnet-like utility might satisfy with features roughly comparable to Magnet. The publisher also offers the $7.99 Hookshot, which offers all of Rectangle’s features and adds additional window-snapping features.
  • Mosaic. If you use Setapp, you have nothing to lose by kicking the tires on Mosaic, but I found it a bit confusing.

Window Positioning Nirvana

Given the abundance of window-resizing utilities for macOS, there’s no reason to move and resize macOS windows manually all the time. If you find yourself constantly fiddling to get all your windows in just the right spot, macOS’s built-in controls or one of these utilities might be just the thing.

Some people will be satisfied with macOS’s native window-positioning features, which Apple improved in Catalina. If you want more, I recommend Moom because it offers a good mix of features along with a ton of customizability. For those with less inclination to tinker but who still wanting versatility, Magnet is a fantastic—and inexpensive—option.

Regardless, you have the tools at your fingertips to increase your Mac efficiency.