Borderless windows for FancyZones. Snap a window into a zone and its title bar disappears, so games, videos and apps use every pixel of their zone.
FancyZones is brilliant at arranging windows, especially on ultrawide monitors. FancyBorderless finishes the job: every window you snap loses its title bar and border and fits its zone exactly. Put a game in windowed mode on one half of the screen and a video on the other, and both look like they were made for the space.
- Every FancyZones layout works, your custom layouts as well as the built-in templates, down to the pixel FancyZones uses.
- Games fit perfectly. A game running windowed at the zone size gets the entire zone, with nothing cut off at the bottom, and it keeps its resolution when you switch layouts, so the picture is never cropped.
- Apps fill their zone and follow along whenever you switch layouts.
- Stubborn windows are handled too. Programs that insist on their title bar, or draw their own, get it clipped off, in any zone and on any monitor.
- It knows what to leave alone. Browsers, File Explorer and other apps with tabs or buttons in their title bar keep it by default. Press the hotkey on one and its title bar goes too.
- One hotkey (Ctrl+Alt+Shift+T) removes or restores the title bar of any window and remembers your choice for that app.
- Settings are in the tray menu, including Start with Windows.
- Games that run as administrator are supported with a single setting.
- It's lightweight, using around 14 MB of memory and practically no CPU, because it sleeps until something actually happens.
- It's clean and safe. No code is ever injected into other programs or games, and every change is undone when you exit.
- Install PowerToys and turn on FancyZones.
- Download
FancyBorderless.exefrom the latest release and run it. It lives in the system tray. - Snap windows the way you always do: Shift-drag, or Win+arrow keys if Override Windows Snap is on in FancyZones' settings. FancyBorderless takes it from there.
- Click the tray icon and tick Start with Windows to have it ready every time you sign in.
The exe isn't code-signed yet, so Windows SmartScreen may ask the first time you run it. Choose "More info", then "Run anyway", or build it yourself with a single command (see below).
- Set the game to Windowed mode at the size of its zone, for example 2560×1440 for half of a 5120×1440 screen. FancyZones only snaps windowed games, not borderless or exclusive fullscreen ones.
- Snap it into its zone once. FancyZones remembers the zone and puts the game back there on every launch ("Move newly created windows to their last known zone" in FancyZones' settings).
- Keep games off FancyZones' excluded apps list, so FancyZones can snap them.
Some games run as administrator, usually because of their anti-cheat. Windows keeps normal programs away from such windows, so FancyZones and FancyBorderless both need administrator mode to work with them:
- In PowerToys Settings, General tab, turn on Always run as administrator (PowerToys docs).
- In FancyBorderless's tray menu, tick Run as administrator and confirm the Windows prompt.
In administrator mode, Start with Windows uses a scheduled task, the same way PowerToys does it, so there's no prompt at sign-in. If you press the hotkey on such a game before setting this up, FancyBorderless tells you exactly what to turn on.
- Remove title bars (turns everything on or off)
- Start with Windows
- Run as administrator
- Keep title bar for (every snapped app; ticked apps keep their title bar, and clicking one switches it)
- Open settings file, Open log, Exit
A notification confirms every hotkey press, so you always know what happened.
FancyBorderless works entirely from the outside, using standard Windows APIs.
- FancyZones marks every window it snaps with a window property (
FancyZones_zones) holding the zones it's in. FancyBorderless reads that property to know which windows are snapped and where. - It reads FancyZones' layout files (
applied-layouts.json,custom-layouts.json) and calculates the zone rectangles with the same integer math FancyZones uses, for custom layouts and built-in templates alike. - It tells a title bar Windows draws from one an app draws itself by comparing where the window's content starts with where the window starts. For apps that draw their own bar it asks the window what's near the top (
WM_NCHITTEST, the same question Windows asks to know where a window can be dragged). The answers show where the bar ends and what's in it: a plain title bar answers "caption" across its whole width, while tabs and buttons answer "content". - It changes windows with
SetWindowLongPtrandSetWindowPos, listens for window events with an out-of-contextSetWinEventHook, and usesRegisterHotKeyfor its shortcut. - A title bar it can't remove is clipped off: the window is placed so its content covers the zone, and a window region (
SetWindowRgn) leaves the rest undrawn and lets clicks through. Windows draws its own frame and backdrop on top of any region, so those are switched off for the window meanwhile. - It marks each window it changes with a property of its own, so even after an unexpected exit the next start recognizes those windows and can restore them.
FancyZones only resizes windows that have a resize border. Once the border is gone FancyZones moves the window on layout changes, and FancyBorderless takes care of the size.
FancyBorderless sleeps until there's something to do. System-wide it only listens for windows appearing and for the end of a mouse drag. Window moves are followed only for the programs whose windows it manages, and Windows notifies it when FancyZones' files change. Moving the mouse never wakes it up, and a quick safety check runs once every five seconds.
On a gaming desktop with several apps snapped it uses about 14 MB of memory and 0.05% of one CPU core while idle.
Everything except the hotkey is in the tray menu. For manual tweaks, the file is at %APPDATA%\FancyBorderless\config.json, and changes apply within a few seconds of saving it. If the file has a mistake, FancyBorderless keeps its current settings and tells you.
| Setting | Default | Meaning |
|---|---|---|
removeTitleBars |
true |
Same as the tray menu item. |
keepTitleBarApps |
[] |
Apps that keep their title bar, by exe name (MyApp.exe; the .exe is optional). |
removeTitleBarApps |
[] |
Apps that lose their title bar even when it has tabs or buttons in it. The hotkey and the tray menu edit both lists. |
toggleTitleBarHotkey |
Ctrl+Alt+Shift+T |
Modifiers plus a letter, digit, F1-F24, Numpad0-9 or a named key like PageUp. Empty disables it. |
runAsAdministrator |
false |
Same as the tray menu item. |
The log at %APPDATA%\FancyBorderless\FancyBorderless.log records every window FancyBorderless changes and why.
FancyBorderless.exe --list monitors, calculated zones, snapped windows and their title bars
FancyBorderless.exe --quit stop the running instance
FancyBorderless.exe --version
--list gives a quick overview of what FancyBorderless sees: the zones it calculated and the kind of title bar it found on each snapped window.
- For square corners on Windows 11, turn on Disable round corners when window is snapped in FancyZones' settings. Snapped windows then meet the zone edges exactly.
- It never touches game memory or injects code.
- It has been developed and tested at 100% display scaling. Reports from other scaling levels are very welcome.
Requires Go 1.23 or newer. No other dependencies and no cgo.
go build -ldflags "-H=windowsgui -s -w" -o FancyBorderless.exe .
The icon comes with the source as rsrc_windows_*.syso, built from winres/ with go-winres.
- Untick Start with Windows in the tray menu. In administrator mode, do it while FancyBorderless runs as administrator, because removing its sign-in task needs those rights.
- Click Exit. Every window gets its title bar back.
- Delete
FancyBorderless.exeand the folder%APPDATA%\FancyBorderless.
Bug reports, ideas and pull requests are welcome. If a window doesn't behave as expected, the output of FancyBorderless.exe --list and the relevant lines from the log make it much easier to help.
MIT. See LICENSE.
FancyBorderless is an independent project and isn't affiliated with or endorsed by Microsoft. FancyZones and PowerToys are Microsoft's.
AI was used for parts of the Code in this project.
