-
Notifications
You must be signed in to change notification settings - Fork 83
Description
Currently quicktile places windows so that they overlap the IceWM taskbar.
The Taskbar does have _NET_WM_STRUT set as 0, 0, 0, 49. However, the taskbar window is not listed _NET_CLIENT_LIST because it is not a framed window (i.e. it is not movable). It is listed in xwininfo -tree -root but only several levels deep.
IceWM does set _WIN_WORKAREA and _NET_WORKAREA so that the task bar is excluded. Looking at the version history, it appears that _NET_WORKAREA used to be used but no longer is, apparently to better support setups with multiple differently sized monitors.
I don't really know how I should approach fixing this, whether to modify IceWM or to modify quicktile. Modifying IceWM would require a bit of a hack to handle task bar specially. I'm not sure if it would get accepted by upstream, as the specifications are not exactly clear on whether _NET_CLIENT_LIST should include such stationary windows or not.
Alternatively quicktile could be modified to either search all windows for _NET_WM_STRUT (sounds unnecessarily slow), or to take some kind of intersection of _NET_WORKAREA and individual monitor sizes. But I'm not sure if that might mess up multi-monitor support on some window managers.
I've also been considering just adding a configuration options to add a configurable amount of margin at top/left/right/bottom of each monitor. This could be used to work around all kinds of issues like this, even though it is not a very clean way to do it.