Simple Window Manager - SWM

Thanks for the reply. For the second issue, it's more like a bug and not something I like.
Basically, when I left click and immediately right click, the window gets maximized. I don't do that often, but sometimes it happens when I try to for example select a file and right click on it in a code editor.

Hope this makes sense!

@yw4z Hi!
This tool does not work for me
When I hover over the thumbnail of the iMessage app for example, nothing appears, when I turn on the keyboard shortcut also nothing appears, but you can see a thin line of what should probably be the placements menu….

MacBook Pro 2021
MacOS 12.4 Monterey
No external screen (built-in screen)
BTT: 3.821

hi @_shlomo

i'm still on big sur and waiting for last release of monterey. so i cant test atm

probably it cant get system appearance values. not sure why. apple changes things with every release. maybe it just related with apple silicon devices

do you get any results for "defaults read -g" in terminal

can you replace these lines in SWM.html , file placed on preset folder (/Users/UserName/Library/Application Support/BetterTouchTool/PresetBundles/47487411-A6B6-485D-83CA-818B93E4E636Simple Window Manager - SWM/SWM/SWM.html)

sy=await SS('defaults read -g');

switch(sy.split('AppleHighlightColor = \"')[1].split('\";')[0].split(' ')[3]){
	case'Blue'		:sc=bg?"3477F6":"3478F6";break
	case'Purple'	:sc=bg?"9B53A3":"8A4292";break
	case'Pink'		:sc=bg?"E55C9C":"E45C9B";break
	case'Red'		:sc=bg?"EB5F5C":"CC4746";break
	case'Orange'	:sc=bg?"E8893B":"E8893A";break
	case'Yellow'	:sc=bg?"F5C644":"F5C94E";break
	case'Green'		:sc=bg?"78B756":"79B855";break
	case'Graphite'	:sc=bg?"8C8C8C":"989898";break
	default			:sc=bg?"3478F6":"3478F6"

with this


if this change not fixed i will release next version after upgrading monterey in few months

1 Like

Yes! it worked :slight_smile:

@_shlomo can you try this lines

bg=(await SS('defaults read -g AppleInterfaceStyle')=="Dark")?1:0;

switch((await SS('defaults read -g AppleHighlightColor')).split(' ')[3]){
	case'Blue'		:sc=bg?"3477F6":"3478F6";break
	case'Purple'	:sc=bg?"9B53A3":"8A4292";break
	case'Pink'		:sc=bg?"E55C9C":"E45C9B";break
	case'Red'		:sc=bg?"EB5F5C":"CC4746";break
	case'Orange'	:sc=bg?"E8893B":"E8893A";break
	case'Yellow'	:sc=bg?"F5C644":"F5C94E";break
	case'Green'		:sc=bg?"78B756":"79B855";break
	case'Graphite'	:sc=bg?"8C8C8C":"989898";break
	default			:sc=bg?"3478F6":"3478F6"

@yw4z Yes, that's how it works, too. Should it allow color selection? Where is this definition?

@_shlomo it just detects system color (Dark / Light or accent colors) and automatically applies to swm,

you will see purple background on buttons while mouse hover if you select purple on system settings

1 Like


Is there anyway to add Swish like swipe controls to this or even at all to BTT?

Would like to move away from Swish to fully on BTT but I havent figured out to add swipe controls to Toolbar for window resizing.

adding gestures to titlebar not possible with btt atm, only double click to title bar available,

SWM is working nice and fast, its better if you use keyboard shortcuts

if SWM window not open on your system i will release a new version soon

also you can check my other preset for dock

but this one is not stable, it tried best but applescript limited many features

SWM and the dock have worked perfectly!

The dock had similar swiping features I'd love to have on BTT window management and that's why asked you as you also had the window manager! Well I've made a feature request for the toolbar to be a new trigger condition so hopefully it'll be added to software some day!

Keep up the great work!

1 Like

Hi i have downloaded and installed SWM. I right click on the minimize button, see the pop up and then select how i want the windo snapped. I.e. Left Half and nothing happens.
Is there something additional i am supposed to do?

I am running Custom Snap areas but not sure if this impacts it.



are functions that placed below align working? you need to scroll down to see them.

problem should not be related with snap areas.

also can you see a background color on buttons when you move cursor? if you dont, check 4-5 upper post

do you use other presets or triggers related with windows. try to disable them one by one.

Hi, thanks for your reply. The functions BELOW align work however the ones above do not.
Any thoughts on what that might be?

i lost my files on my mac 2 weeks ago because of a cleaner script and my last backup was 9 months ago. im trying to rewrite new versions of my presets. if i remember right SWM has less changes. i will release new versions with fixes. just wait 1-2 weeks for now :frowning:

1 Like

Updated first post with 0.6 release


  • Changed - Fullscreen Toggle uses Tab key instead of "F"
  • Changed - Restore window size action (R shortcut or SWM_WR button ) works like double click on title bar now. Switches window between maximized or restored size
  • Improvement - All resize functions using BTT custom window resize/move action now. This one is better options for multi monitor support
  • Improvement - Simplified preset folder path detection. This one decreased launch time a bit
  • Improvement - Moved settings on BTT to SWM.html. You can find setting with searching SWM_SETTINGS in SWM.html file in preset folder

  • Changed - SWM uses dark apperance and blue accent color by default for fastest launch time. You can change them to Auto from settings in html file
  • Improvement - Tile window to Left / Right resizes window to preferred half of screen if app has no tile options on menubar
  • Improvement - added :traffic_light: icon to SWM actions for better visibility
  • Fixed - SWM window not activating on monterey
  • Fixed - Corrected typo mistake on middle 2x3 actions
  • Fixed - Horizontal thirds, 2x3, 3x2, 3x3 actions leaves blank spaces on bottom or right sides
  • Fixed - Align functions leaves blank spaces near screen edge
  • Fixed - Split to Left/Right functions works properly now
  • Fixed - Double click to title bar not working on windows that has no stored size
  • Known Issues - BTT resize/move wrong window sometimes if active app has multiple windows on seperate displays. Will send a bug report

Thanks so much for this update! Works perfectly in Montery now

1 Like

Thank you so much for this. This is beautiful and perfect.

A few questions:

  • What is ResizeFactor?
  • Can we do custom grid sizes? I have a 49" ultra wide monitor and would love a grid that is 4 columns and 2 rows.

Uh, many actions aren't working for me on Ventura beta... e.g. Hide other windows. But the window resizing functions mostly seem good. Seems like the top row and bottom actions outside the scrolling area don't work. Take screenshot good tho. Most do nothing, keeping the popup visible. But the split to left and right half hide the popup. Any ideas what's up?
Might also be bug in Ventura... :woman_shrugging:t3:

@imthenachoman resize factor is used for resize functions. if you change it to 100 it changes window size by 100px

Make Window Bigger Shift + Up
Make Window Smaller Shift + Down
Make Window Taller Cmd + Up
Make Window Shorter Cmd + Down
Make Window Wider Cmd + Right
Make Window Narrower Cmd + Left

these actions only available with keyboard shortcuts also you can repeat actions while swm window open

swm not supporting custom sizes atm but you can add with editing html file

o(x,y,w,h) function creates a custom action for resizing and positioning windows
o(x position as percentage ,y position as percentage, window width as percentage , window height as percentage)
position or size values calculated by BTT depends on active screen with given percentage

o(0,0,25,50) resizes window on top left for 4x2
o(75,50,25,50) should resize on botton right for 4x2

this code add rows for 4x2


<a onclick='o(0,0,25,50)'
t='4x2 Left Top'

<a onclick='o(25,0,25,50)'
t='4x2 Left Middle Top'

<a onclick='o(50,0,25,50)'
t='4x2 Right Middle Top'

<a onclick='o(75,0,25,50)'
t='4x2 Right Top'

<a onclick='o(25,0,25,100)'
t='4x2 Left Middle'

<a onclick='o(0,50,25,50)'
t='4x2 Left Bottom'

<a onclick='o(25,50,25,50)'
t='4x2 Left Middle Bottom'

<a onclick='o(50,50,25,50)'
t='4x2 Right Middle Bottom'

<a onclick='o(75,50,25,50)'
t='4x2 Right Bottom'

<a onclick='o(50,0,25,100)'
t='4x2 Right Middle'

i will add new icons later, but i have to find a better way for adding these functions, already swm has many icons on interface

looks like swm cant launch applescripts. still im using big sur :slight_smile:
i changed how SWM detects preset folder on latest release
maybe you have any special characters or spaces on your user name that causes issue
can you try previous release let me know if not working ones works

if they not, you can install latest release again then look for errors on console

can you delete this lines or add // beginning every line then save it

w.ondragstart =i=>(false);
w.onmouseout=e=>wq=(!e.toElement)?setTimeout(()=>bw(),500):(("wq" in window)?clearTimeout(wq):"");

then right click on swm window
choose inspect element
click on console
send a screenshot if you see any errors

1 Like

How are you creating icons? Is there an easy way we can create our own using your theme?