Simple Window Manager - SWM

Simple way to manage windows πŸš₯

QUICK REVIEW 🎬

POPUP WINDOW

Predefined Actions View (Customizable with editing HTML)

1

Custom Grid View

2

FULLSCREEN OVERLAY

Fullscreen Custom Grid


Continuous Mode

Main Features πŸ₯

● Multiple UIs for different scenarios.
● Easy Keyboard Shortcuts
● Predefined Resize Layouts
● Custom Grid
● Edge Gap
● Actions for Double Click to Titlebar

How to Use & General Tips πŸ“–

● Please read all features and important notes before use

● SWM uses last active window. Click window before opening SWM

● This settings should be enabled before use

   BetterTouchTool Settings > Scripting > Allow external BetterTouchTool scripting
   macOS Settings > Security & Privacy > Accessibility > BetterTouchTool > Allow
   macOS Settings > Security & Privacy > Automation > BetterTouchTool > Allow

● Setting up Double click to titlebar function

   to use SWM's function then macOS Settings > Dock & Menubar > Double click a window's titlebar > Disable
   to use macOS function then open preset folder and change "TitlebarAction" setting on prefs.js

● You can customize features of SWM with editing settings file
   Start SWM then press P to open preset folder.
   Open Prefs.js with an html editor like VS code or other one. Here is a preview of settings

  

    Appearance and Accent color setting not set to auto for decreased launch time.
    You can set to auto if you use automatic Dark / Light mode appearance

● DO NOT enable "Pre-load immediately after BTT is launched" in show floating webview action. it increases CPU usage in idle. it already disabled by default

INTERFACE⌚️

SWM has 2 different interfaces for managing windows

● Popup Window > Faster usage with less mouse movements
● Fullscreen Overlay > Better visual presentation

POPUP WINDOW

β˜… SWM uses last active window. Click window before opening SWM

How to Activate;
● Fn+W keyboard shortcut
● Right click to minimize button (Yellow button)

How to Close;
● Click outside of popup
● Closes automatically when you move cursor to outside
● Pressing ESC key

Switching between different views; Predefined Actions View / Custom Grid View
● Shift + SPACE key
● 2 Finger Tap or Right click on Popup window

Switching between different grids / layouts for Predefined Actions View / Custom Grid View
● SPACE key
● Vertical Scroll or Swipe on Popup window

PREDEFINED ACTIONS VIEW

SWM_MLS copy Tile Window to Left

SWM_MLS copy 2 Tile Window to Right

SWM_MLS Move to Left Space

SWM_MRS Move to Right Space

SWM_MLS copy 3 Move to Next Monitor

Swipe/Scroll up/down or use navigation dots to see more resize options
Swipe/Scroll is endless. if you scroll down on last page it shows first page on next...

4
5
6

CUSTOMIZING PREDEFINED ACTIONS

  • Predefined action icons generated by javascript with given coordinates and most of icons not using pixel images. So you can create your own buttons without dealing icon design. Here is a template
<pg> creates page for Predefined actions view
<pg> element's t attribute: Tooltip text for navigation dot
<c> creates row
<a> creates icon
<a> element's c attribute: X start, Y start, Width, Height in percentage
<a> element's t attribute: Tooltip text
<pg t="3x2 and 2x3 Layouts">
<c>
<a  c='0,0,33,50'   t='3x2 Top Left Corner'></a>
<a  c='33,0,33,50'  t='3x2 Top Middle'></a>
<a  c='66,0,34,50'  t='3x2 Top Right Corner'></a>
<a  c='0,0,66,50'   t='3x2 Top Left Corner Two'></a>
<a  c='33,0,67,50'  t='3x2 Top Right Corner Two'></a>
</c>
<c>
<a  c='0,50,33,50'  t='3x2 Bottom Left Corner'></a>
<a  c='33,50,33,50' t='3x2 Bottom Middle'></a>
<a  c='66,50,34,50' t='3x2 Bottom Right Corner'></a>
<a  c='0,50,66,50'  t='3x2 Bottom Left Corner Two'></a>
<a  c='33,50,67,50' t='3x2 Bottom Right Corner Two'></a>
</c>
<c>
<a  c='0,0,50,33'   t='2x3 Top Left'></a>
<a  c='0,33,50,33'  t='2x3 Left Middle'></a>
<a  c='0,66,50,34'  t='2x3 Bottom Left'></a>
<a  c='0,0,50,66'   t='2x3 Top Left Two'></a>
<a  c='50,0,50,66'  t='2x3 Top Right Two'></a>
</c>
<c>
<a  c='50,0,50,33'  t='2x3 Top Right'></a>
<a  c='50,33,50,33' t='2x3 Right Middle'></a>
<a  c='50,66,50,34' t='2x3 Bottom Right'></a>
<a  c='0,33,50,67'  t='2x3 Bottom Left Two'></a>
<a  c='50,33,50,67' t='2x3 Bottom Right Two'></a>
</c>
</pg>

β€’ Open SWM then press P to reveal preset folder in finder
β€’ Use VsCode or an alternative html editor app to edit SWM.html file
β€’ Search for "id=sc" in file and customize code between sc tag

β˜… Maximum 7 pages allowed

CUSTOM GRID VIEW

2

You can create your own layout if predefined ones not enough. Click adsd copy button to open Custom Grid view
Click to start drawing then click another cell to define desired window size

β–²   : Increases Row Number
β–Ό   : Decreases Row Number

○●  : Switches between 3 stored grids. Your changes on grids will be saved

:arrow_forward:   : Increases Column Number
:arrow_backward:   : Decreases Column Number

Move your mouse to outside of grid to cancel selection

SWM saves your changes on grid automatically. You will see same grid on next launch

SIDEBAR

7 copy

You can found general purpose functions on right side

SWM_WM Maximize

     Fills screen with active window

SWM_WR Switch Window Size

     Restores window to previous size on maximized or fills screen on non maximized
     Its works same as double clicking on titlebar on windows os

SWM_WHO Hide Other Windows

     Hides all windows except active one

SWM_WS Switcher

     Switches between windows of active application or starts mission control

    ● Application Expose on non-fullscreen windows
    ● Mission Control on fullscreen windows

adsd copy Toggle View

     Switches between Predefined Actions View and Custom Grid View

SWM_WSC Take Screenshot of Window

     Starts window capture tool

c6028165222f4cf4edc3606b9c2722208f386af7 Window Alignment

     Empty rectangle is a grid for window alignment. You can align window to corners or edges

CONTINUOUS MODE ON POPUP VIEW

Allows to use more then 1 actions in Popup View without closing SWM
Works different in Popup View compared to Fullscreen Overlay. It will work same on next version
Only Incremental Resize Actions allowed in Popup View

FULLSCREEN OVERLAY

β˜… SWM uses last active window. Click window before activating SWM

How to Activate;
● Start Fullscreen Overlay with Fn+S
● Double click to window titlebar ( if you set SWM setting "TitlebarAction" to 2 )

How to Close;
● Click Menubar
● Pressing Esc Key

Grids / Layouts switching between;
● Predefined Layouts; Max, Halves & Quarters | Vertical Thirds | Horizontal Thirds
● Custom Grids; customizable 3 grids

Switch between modes (Predefined or Custom) with;
● Pressing Shift + Space Key
● Using Context Menu

Switch between grids / layouts with;
● Pressing Space Key
● Vertical Swipe / Scroll
● Using Context Menu

CUSTOM GRID

Use context menu to edit grid layout

CONTINUOUS MODE

Allows to use more then 1 actions in fullscreen overlay without closing SWM
Dashed border will be visible on screen while mode is active

Switch to continuous mode
● CMD + C
● Using one of keyboard shortcuts for Incremental Resize functions

Switch back to normal mode with using CMD + C again

You can use this actions with keyboard shortcuts on Continuous Mode;
● Incremental Resize Actions
● Align
● Move with Arrow keys

Distance value is a dynamic setting that you can increase with 0 or decrease with 9
Used by Incremental Resize and Move functions;
● Incremental Resize; determines how much to increase / decrease window size
● Move functions; determines how much to move window

Move window action only available in Continuous Mode in Fullscreen Overlay

CONTEXT MENU

Additionally you can customize Fullscreen Overlay with context menu Just right click to anywhere on Fullscreen Overlay

DOUBLE CLICK TO TITLEBAR FEATURE

Doubleclick Titlebar has alternative actions to use that you can configure in SWM settings
● Maximize / Restore window size (Default)
● Start Fulscreen Overlay
● Or disable if you want to use native macOS action

β˜… Only works on top 20px of window to prevent accidental triggers while using toolbar icons
β˜… Not works on some apps that uses custom titlebars. Photoshop or some electron based apps ...

EDGE GAP FEATURE

Leaves space between resized windows

With Edge Gap

Without Edge Gap

Keyboard Shortcuts;
● Toggle Edge Gap with G
● Increase gap size with CMD + 0
● Decrease gap size with CMD + 9

Adding Edge Gap on maximized windows;
● Enable SWM setting "MaxWindowGap"
● Disabling Edge Gap also disables edge gap on maximized windows

KEEP ON TOP FEATURE

Keeps a window always on top
Activate window, open SWM then press K. Repeat same to deactivate Keep on Top

FITTING & INCREMENTAL RESIZE FEATURES

List of avaliable actions;
● Bigger: Increases Width and Height
● Smaller: Increases Width and Height
● Taller: Increases Height
● Shorter: Decreses Height
● Wider: Increases Width
● Narrower: Decreses Width
● Fit to Screen Width: sets window Width to screen Width
● Fit to Screen Height: sets window Height to screen Height

β˜… Look keyboard shorcuts section for related keys
β˜… Using keyboard shortcuts for this actions starts Continuous Mode on Fullscreen Overlay
β˜… You can use this actions one after another except fit to screen ones

MULTI MONITOR SUPPORT πŸ–₯ πŸ–₯

1 - Activate window that you want to move or resize
2 - Move your mouse to preferred monitor then Activate SWM with Fn+W ( Popup Window ) or Fn+S ( Fullscreen Overlay )
3 - Select a function with your mouse on SWM window or use keyboard shortcut
4 - SWM will Resize / Move / Align frontmost (last active) window to target monitor

GESTURES πŸ–

Maximize / Restore Window
Fn + Swipe / Scroll Up Over window

Minimize Window (Works on Mission Control & App Expose)
Fn + Swipe / Scroll Down Over window

Close Window on Mission Control / App Expose (not works on minimized windows)
Fn + 3 Finger Tap / Middle Click

You can disable gestures over window from SWM settings. Go to preset folder then edit "GesturesOverWindow" settings on Prefs.js file

KEYBOARD SHORTCUTS ⌨️

Activate SWM then press keys, easy

Keyboard shortcuts works on both Popup Window and Fullscreen Overlay

FUTURE PLANS πŸ—“

:pushpin: [β­‘β­‘β­‘] Merge Popup view and Fullscreen overlay to 1 file. This one also will allow switching between them and Continuous Mode on popup view
:pushpin: [β­‘β­‘β­‘] Previewing window size on background while hovering resize buttons for popup view
:pushpin: [β­‘β­‘β­‘] Workspaces view for main & fullscreen overlay. Will allow user to set a window layout with custom grid and save 7 of them
:pushpin: [β­‘β­‘β­’] Global keyboard shortcuts as an optional preset
:pushpin: [β­‘β­‘β­’] Setting for don't add Edge Gap to screen edges
:pushpin: [β­‘β­‘β­’] UI scaling setting for popup window
:pushpin: [β­‘β­‘β­’] Setting for fullscreen overlay to choose which view to show on launch
:pushpin: [β­‘β­‘β­’] Better support for new "Pin/Unpin focused window to float on top" action
:pushpin: [β­‘β­‘β­’] Use icons for grid layouts on fullscreen overlay context menu and popups
:pushpin: [β­‘β­‘β­’] Setting for custom restore size / position for double click to titlebar
:pushpin: [β­‘β­’β­’] Dark / Light mode setting for fullscreen overlay
:pushpin: [β­‘β­’β­’] UI for Incremental Resize(Taller,Shorter...)
:pushpin: [β­‘β­’β­’] Incremental resize, move and align buttons for Fullscreen Overlay context menu
:pushpin: [β­‘β­’β­’] Adapt UI for vertical monitor setups

β˜… Got an idea for general purpose cases, please drop a comment

KNOWN ISSUES πŸ”

● SWM not visible on some apps (Chrome, Photoshop.. etc.) because they are using custom icons instead of using native system minimize and maximize buttons. Use keyboard shortcut on these windows

● If you use SWM on other apps when a BTT window active, BTT window brings to front

● Maximize / Restore action cant resize finder window to correct size when Edge Gap enabled

TROUBLESHOOT 🚨

● SWM sends a system notification if there is an error. So keep notifications enabled for BTT

You can try these to solve problems
● Update BTT to latest alpha
● Delete BTT variables to reset all SWM settings from BTT settings > Scripting BTT > Reset All Variables
● Try previous version of SWM to confirm that is working. So i know problem on current release
● Steps that below a bit advanced side. Send a post about your problem if you have problem only one function. Sometimes difference between macOS versions can be reason of problem
● If current window loses focus then SWM not shows up
      Open SWM preset folder > Prefs.js > change DevMode to 1
      Try to open SWM window then right click (try 2 times if context menu no shown) > choose inspect element.
      You can still right click if SWM not visible
Screenshot 2023-11-03 at 20.01.50
      Click console tab then take a screen shot if you see other type of errors


      Also you can click "All" on top filter bar to see all SWM or System related extra info . expand object with clicking arrow
● Clearing cache might be helpful for some situations
Screenshot 2023-11-03 at 20.13.33

SUPPORT β˜•οΈ

Surprise me with sending me a cup of digital coffee

Any support is greatly appreciated

BTC (Bitcoin Network)

1DfKduvhrW56nvvpgFJUnNzUiEnJGL6mzV

Ethereum / Ripple / Flux (ERC20 Network)

0x1ff9b46ba83bc5922725aa05e8abf92fc8679e76

Also you can check my icon designs from my Gumroad Profile

Get all for free with entering "0" or donate some as you wish

DOWNLOAD ⏬

β˜…  Uninstall previous versions of SWM & Update BetterTouchTool to Latest before installation

You can download SWM from gumroad page as free but any amount of support appreciated

Change Logs

11/02/2024 - Version v1.0.3

:hammer_and_wrench: Fixes

  • Right click on minimize button not working on non-active windows
  • Maximize function not uses same method with other resize actions when its triggered with keyboard shortcut
  • BTT starts crashing after SWM install. This one is solved on latest alpha release of BTT and also i wanted to fix on SWM side because some users might use old versions of BTT
04/01/2024 - Version v1.0.2

:telescope: Improvement

  • Optimisations for Maximize / Restore feature and launch scripts
  • Added few more troubleshoot notifications to identify any problems while updating preset

:hammer_and_wrench: Fixes

  • SWM cant create default settings for fresh install
  • MaxWindowGap setting not works for Maximize / Restore Feature
  • Maximize / Restore Feature not working on some apps
  • Scroll / Swipe Up + Fn over windows conflicts with Enhanced Dock preset
  • Error notification shows up if there is no window for app

:mag: Known Issues

  • Maximize / Restore action cant resize finder window to correct size when Edge Gap enabled
07/10/2023 - Version v1.0

:round_pushpin: Predefined Actions View (Popup Window)

  • New setting "RememberPage"- SWM remembers last used predefined page and shows it on next launch
  • New icon for Predefined Actions View
  • Swipes changes pages / grids instead of scrolling
  • You can scroll / swipe anywhere on popup window to change predefined actions pages or custom grids
  • Scrolling up on first page goes last page and scrolling down on last page goes first page on Predefined Actions View
  • Reorganized 2x3, 3x3 and 4x2 predefined actions and added new ones for 2x3 and 4x2
  • Predefined action icons for window resize now generated by javascript with given coordinates and most of icons not using pixel images. So you can create your own buttons without dealing icon design. Here is a template
<!--
<pg> creates page for Predefined actions view
<pg> element's t attribute: Tooltip text for navigation dot
<c> creates row
<a> creates icon
<a> element's c attribute: X start, Y start, Width, Height in percentage
<a> element's t attribute: Tooltip text
-->
<pg t="3x2 and 2x3 Layouts">
<c>
<a c='0,0,33,50' t='3x2 Top Left Corner'></a>
<a c='33,0,33,50' t='3x2 Top Middle'></a>
<a c='66,0,34,50' t='3x2 Top Right Corner'></a>
<a c='0,0,66,50' t='3x2 Top Left Corner Two'></a>
<a c='33,0,67,50' t='3x2 Top Right Corner Two'></a>
</c>
<c>
<a c='0,50,33,50' t='3x2 Bottom Left Corner'></a>
<a c='33,50,33,50' t='3x2 Bottom Middle'></a>
<a c='66,50,34,50' t='3x2 Bottom Right Corner'></a>
<a c='0,50,66,50' t='3x2 Bottom Left Corner Two'></a>
<a c='33,50,67,50' t='3x2 Bottom Right Corner Two'></a>
</c>
<c>
<a c='0,0,50,33' t='2x3 Top Left'></a>
<a c='0,33,50,33' t='2x3 Left Middle'></a>
<a c='0,66,50,34' t='2x3 Bottom Left'></a>
<a c='0,0,50,66' t='2x3 Top Left Two'></a>
<a c='50,0,50,66' t='2x3 Top Right Two'></a>
</c>
<c>
<a c='50,0,50,33' t='2x3 Top Right'></a>
<a c='50,33,50,33' t='2x3 Right Middle'></a>
<a c='50,66,50,34' t='2x3 Bottom Right'></a>
<a c='0,33,50,67' t='2x3 Bottom Left Two'></a>
<a c='50,33,50,67' t='2x3 Bottom Right Two'></a>
</c>
</pg>

You can add template on marked line in SWM.html (search "" in document to quick navigation".
Predefined action view supports up to 7 pages. If you add more it will not show.
Navigation dots generate automatically after adding new pages to html file.

:round_pushpin: Fullscreen Overlay

  • Added Custom Grid. You can edit grid with context menu
  • Fixed SWM closes while switching Continuous Mode with context menu
  • Many minor improvements

:round_pushpin: Double Click to Titlebar

  • Changed activation area, only triggered if mouse cursor close to 20 px to top edge and not on window buttons
  • Fixed - Right clicks triggers action (it still but mostly works without problem)
  • Fixed - Maximize / Restore action not triggering if window has no previous size to restore
  • Improvement - Slightly faster double click to titlebar for Max / Restore function

:round_pushpin: Gestures for Windows

  • Added setting "GesturesOverWindow" for disabling / enabling feature
  • Fixed - Minimize window Fn+Scroll down gesture shows HUD
  • Fixed - Closing windows from mission control / app expose not working
  • Changed - Closing window on Mission control / App Expose with trackpad gesture to Fn + 3 Finger Tap instead of 4 finger tip tap left. Works faster and stable
  • Improvement - Faster process detection for Close / Minimize window under cursor

:sparkles:New Features

  • New easier way to switch between modes and grids / layouts with trackpad / mouse / keyboard
    • Change page on Predefined Actions View or change grid Custom Grid with
      • Swipe Up / Down
      • Scroll Up / Down
      • Space
    • Switch between modes (Predefined view / Custom Grid) with
      • 2 Finger Tap
      • Right Click
      • Shift + Space
  • K keyboard shortcut for Keep on Top (or Always on Top) feature. Select window and press K again to deactivate

:barber: Changes

  • Custom grid uses width x height now instead of height x width order. Sorry you have to set your custom grids again
  • Removed 3 finger tap gestures for Popup Window & Fullscreen overlay to reduce conflicting with other presets. Use right click /2finger tap or Shift + Space to switch between Custom Grid and Predefined Actions View / Grids

:telescope: Improvement

  • Optimisations for better performance
  • SWM uses same cache and not rebuilds cache while switching between keyboard and yellow button triggers
  • Added some console logs for Developer mode for easier troubleshoot
  • Added a basic notification system to show critical errors. SWM sends error message as a system notification
  • Added support for system settings > highlight color > other (works only if you set SWM settings > AccentColor to 0 (auto)

:hammer_and_wrench: Fixes

  • Right click on minimize button not working on non-active windows
  • Trackpad swipes moves SWM popup window
  • Scrolling on Custom Grid shows Predefined actions view on Popup Window
  • SWM asks application location for some apps like "Voice Memos"
  • Popup window flickers on launch
  • Blurry icons on Popup Window
  • Custom Grid and align functions area not rendering correctly on Popup Window

:paperclip: New Tasks for Future Plans
     [β­‘β­‘β­’] Global keyboard shortcuts as an optional preset
     [β­‘β­‘β­’] Setting for don't add Edge Gap to screen edges
     [β­‘β­‘β­’] UI scaling setting for popup window
     [β­‘β­’β­’] Incremental resize, move and align buttons for Fullscreen Overlay context menu

:white_check_mark: Completed Tasks on Future Plans
     [β­‘β­‘β­’] Custom grid for Fullscreen Overlay

26/02/2023 - Version v0.9

Full Screen Overlay

First implementation of Fullscreen Overlay features. Added this one to see how much of its possible with BTT. I'm planning to merge popup view and fullscreen overlay on future releases.

  • Halves, Quarters, Vertical and Horizontal Thirds window sizes supported. i will add custom grid on next version.
  • Start Fullscreen Overlay with Fn + S on any screen
  • Switch grid with pressing SPACE key, 3 Finger Tap, Middle Click or use Context Menu. Also you can switch grid with 3 finger tap or middle click
  • All other keyboard shortcuts works on fullscreen overlay same as popup view

Continuous Mode on Full Screen Overlay

  • Toggle Continuous Mode with C+CMD
  • White dashed border shows Continuous Mode mode is active on full screen overlay
  • You can move window with arrow keys in Continuous Mode. Moving uses Distance value

Edge Gap

  • Edge Gap, leave space between resized windows
  • Keyboard shortcuts for Edge Gap Size. CMD+0 increase / CMD+9 Decrease. Min value: 10px Max Value: 50px
  • Toggle Edge Gap feature with G keyboard shortcut
  • Tooltip area shows Edge Gap value while toggling

Gestures

  • Trackpad / Mouse gestures for windows

  • Maximize / Restore Window
     Fn + Swipe/Scroll Up Over window

  • Minimize Window (Works on Mission Control & App Expose)
     Fn + Swipe/Scroll Down Over window

  • Close Window on Mission Control / App Expose (not works on minimized windows)
     4 Finger TipTap Left / Middle Click + Fn

Double Click to Titlebar

  • Maximize / Restore action rewritten as javascript. works faster now
  • Setting for double click on title bar to start Fullscreen overlay
  • Added a setting for disable / enable double click on titlebar to maximize / restore window size trigger

New Features

  • Resize window to max width with CMD+Shift+Right keyboard shortcut
  • Resize window to max height with CMD+Shift+Left keyboard shortcut
  • Added a setting for disabling animation of preview box for window size. I will connect this setting to other animated elements on future releases
  • Added setting "MaxWindowGap" for enabling Edge Gap on maximized windows. also works on Maximize / Restore action if edge gap enabled
  • Keyboard shortcuts for "Distance" setting. 0 increase / 9 Decrease. Min value: 10px Max Value: 100px. Distance is used for Incremental Resize(Bigger/narrower..) and Move window actions

Changes

  • Make window bigger keyboard shortcut to CMD+Shift+Up instead of Shift+Up
  • Make window smaller keyboard shortcut to CMD+Shift+Down instead of Shift+Down
  • Resize function term changed to Incremental Resize to avoid confusion
  • Resize Factor term changed to Distance to avoid confusion
  • Toggle view uses SPACE key instead of G key on popup view
  • Settings have a separate file in preset folder that named Prefs.js

Improvement

  • Added a tooltip for indicating reached max number or rows / columns on custom grid
  • Reworked handling of fullscreen windows
  • Reworked Tile Window to Left / Right scripts
  • Improved code for keyboard shortcut events
  • Changed pre launch scripts to javascript. Loading popup ui while switching between keyboard trigger to minimize button a bit faster
  • Edge Gap, Gap Size & Distance settings is dynamic you can change them from UI. No need to edit setting file for them
  • SWM shows an alert if target application has no window
  • Designed an icon for SWM, it shows up only in alerts for now
  • SWM now keeps dynamic settings between new version installs
  • SWM unminimizes first window of frontmost application if its minimized. let me know if its confusing

Fixes

  • Incremental Resize actions on fullscreen windows works without error now
  • Custom grid leaves gap between windows
  • Double click to title bar triggering if you're closing multiple windows in a short time of same app

Known Issues

  • SWM cant launch properly after changing some settings. it will work normal on second launch

Updated Future Plan

[β­‘β­‘β­‘] Custom grid for fullscreen overlay
[β­‘β­‘β­‘] Merge Popup view and Fullscreen overlay to 1 file. This one also will allow switching between them and Continuous Mode on popup view
[β­‘β­‘β­‘] Previewing window size on background while hovering resize buttons for popup view
[β­‘β­‘β­οΈŽ] Workspaces view for main & fullscreen overlay. Will allow user to set a window layout with custom grid and save 7 of them
[β­‘β­‘β­οΈŽ] Add setting for fullscreen overlay to choose which view to show on launch
[β­‘β­‘β­οΈŽ] Add support for new "Pin/Unpin focused window to float on top" action
[β­‘β­‘β­οΈŽ] Use icons for grid layouts on fullscreen overlay context menu and popups
[β­‘β­‘β­οΈŽ] Setting for custom restore size / position for double click to titlebar
[β­‘β­οΈŽβ­οΈŽ] Dark / Light mode setting for fullscreen overlay
[β­‘β­οΈŽβ­οΈŽ] UI for Incremental Resize(Taller,Shorter...)

23/12/2022 - Version v0.8
  • New - Custom resize grid
  • New - Open preset folder with P keyboard shortcut
  • New - Added setting for start with grid view
  • New - Toggle view between Predefined Functions and Custom Grid with G keyboard shortcut
  • Fixed - Restore / Maximize Button not working
  • Fixed - Wrong amount scroll on Predefined Functions while using mouse scroll
  • Changed - Moved general window functions to right side
09/12/2022 - Version v0.7
  • New - reworked ui
  • New - align window to corners
  • Changed - reordered 2x3 and 3x2 actions
  • Improvement - added dev mode on settings for easier troubleshoot
  • Fixed - SWM functions not working on full screen windows
02/10/2022 - Version v0.6

Simple-Window-Manager-v0-6.bttpresetzip (54.5 KB)

Changelog

  • 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
27/02/2022 - Version v0.5

Changelog

  • New - double click on title bar reworked. it can restore window size on full size windows or can fill screen if window smaller then screen size (much more like how Windows 7/8/10 works). Also it can exit windows from full screen / split screen modes. Tip You have to double click on top edge on some apps. Title bar and toolbar are separate things some native apps
  • New - UI is scrollable now to show more options
  • New - Added Horizontal Thirds, 3x2, 2x3, 3x3 sizes
  • New - Partially multi monitor support with BTT actions
  • New - Keyboard shortcuts for horizontal thirds. Cmd + 1, Cmd + 2 ..
  • New - SWM uses system appearance ( dark / light ) and accent color now
  • New - New donation types added to first post
  • Improvement - Move to next space creates a new space automatically if you dont have one
  • Improvement - SWM window automatically closes after you move cursor to outside of UI
  • Improvement - You can find SWM settings on Named & Other Triggers
  • Improvement - You can change resize factor ( px ) for window resize at SWM settings
  • Improvement - You can hide tooltips at SWM settings. Change true to false
  • Knowns Issues - Align function leaves blank space near dock
  • Updated future plans

Simple-Window-Manager-v0-5.bttpresetzip (48.5 KB)

14/07/2020 - Version v0.4

Simple-Window-Manager-v0_4.bttpresetzip (24.9 KB)

Changelog

  • New - Redesigned UI for more modern look with translucent background
    Screen-Shot-2020-07-14-at-15.53.07
  • New - Redesigned tooltip with shortcut description. You can hide from bottom of html file
    Screen Shot 2020-07-14 at 16.08.53
  • Fixed - Typo "Halfs" changed to "Halves". Thanks to @yuuiko
  • Fixed - Window switcher not working properly on catalina
  • Updated future plans
15/06/2020 - Version v0.3

Simple-Window-Manager-v0_3.bttpresetzip (20.8 KB)

Changelog

  • New - Aligning windows
  • New - Split screen buttons
  • New - Keyboard Shortcuts. Check first post for complete list
  • New - Resize windows with Keyboard Shortcuts
  • New - Fullscreen toggle with Keyboard Shortcuts
17/05/2020 - Version v0.2.4

Simple-Window-Manager-v0_2_4.bttpresetzip (14.8 KB)

Changelog

  • Reduced RAM usage, half of previous release
  • Window actions faster now with fullscreen support
  • Cleanup on code
06/03/2020 - Version v0.2.3

Simple-Window-Manager-v0_2_3.bttpresetzip (20.6 KB)

Changelog

  • Changed trigger button to yellow (minimise button) instead of green for Catalina users
  • Minor changes
05/03/2020 - Version v0.2.2

Simple-Window-Manager-v0_2_2.bttpresetzip (20.6 KB)

Changelog

  • Possible speedup on triggering actions
23/02/2020 - Version v0.2.1

Simple-Window-Manager-v0_2_1.bttpresetzip (20.6 KB)

Changelog

  • Better solution for fullscreen apps
  • Switcher button will work as Mission Control when window is in fullscreen mode & Application Expose on normal windows
23/02/2020 - Version v0.2

Simple-Window-Manager-v0_2.bttpresetzip (20.2 KB)

Changelog

  • Added support for fullscreen applications
  • Corrected position of SWM window
  • Changed all triggers to predefined ones, your Bettertouchtool trigger list cleaner now.
07/01/2020 - Version v0.1

Simple Window Manager - SWM.bttcompressedpresetbundle (16.3 KB)

Don't Forget to Check This Presets

Daily Tools - Additional Features for Control Center

Enhanced Dock- eDock

Artboard 2 copy 8

This looks awesome! Can’t wait to give it a shot :smile:

2 Likes

Very cool!
I’m currently preparing a new preset bundle format, which will be able to include icons / files. This will make a one click install of this possible - I’ll post instructions when the next alpha has been released.

4 Likes

Thx, great to hear from you :wink: Any plan for global scale setting for floating view? This would be great

What exactly do you mean by that? Something like the zoom in/out that's supported by browsers?

actually yes, didnt tested yet but floating views pixel based, so they should look so small on high dpi screens, need a ratio/scale setting for this. maybe it can be automated by BTT

This is handled by macOS just like on normal webpages or apps. (on retina screens 4 px are combined to just 1px, so it will look sharper but have the same physical size as on non-retina screens).

Didnt know that thanks for info

There is one thing though: graphics you create for a non-hi-dpi screen will look blurry on a retina screen. Basically to have sharp images you'd just use double the resolution to make them look sharp on retina (e.g. a 30px * 30px icon for non-retina screens should be saved as 60px*60px to look sharp on retina screens, even though the actual display size will just be 30*30. It is also possible to provide different images for different screens using css. (Alternatively vector graphics like svg will always look good)

I did done same thing as you said, my icons are 40x28 and i use 20x14 in html, i did icons as vector but i guess pixel images more resource friendly

1 Like

Thanks it is really cool

PS: The path for the screenshot is hardcoded to your home :wink:

@yuuiko maybe you could be interested in!

i changed with ~/Desktop instead of my username i hope thats fixed now. Updated preset in first post

I can't seem to get to work. The triggers show up in BTT's configuration and work but the SWM window's icons are blank.

I can't move the icon folder too Macintosh HD due to Catalina' s new restrictions. I tried putting it in my /User folder to no effect.

Thanks

You can put the folder where ever you want, just modify the image source in the HTML in the action to point at it. for example, I put mine in my user dev folder:
file:///Users/[your user name]/dev/swmicons/SWM_MC.png

The image url's are near the end of the of the HTML

Super cool preset btw!

Does this only work in catalina or can it work in mavericks too?

@lynx it should work every macos that have latest BTT

@akiersky thanks for guide

@jlc1978 just follow akiersky's suggestion. i'm waiting next release of BTT. you don't have to install icons on that. I guess icons will be install with preset file

Opened the preset in text editor but could not find a line with a path, other than for the screen capture save location. There was a bunch of random text in the middle after the line:

"BTTFileContent" :

Posted a new version with keyboard shortcut fn+W, shortcut menu will popup with animation
also added new instructions for installation

@jlc1978 please re download files and follow new instructions on first post

I have converted your window manager to one of the new preset bundles. This means it should work right after importing this preset, no need to copy files:

SIMPLE_WINDOW_MANAGER_b.bttcompressedpresetbundle (16.2 KB)

Requires BTT v3.250!

2 Likes