diff options
author | Malfurious <m@lfurio.us> | 2020-06-22 00:39:34 -0400 |
---|---|---|
committer | Malfurious <m@lfurio.us> | 2023-06-03 22:26:45 -0400 |
commit | 44040e4c78cafcaf7d1e8c857fec57c55473fb3f (patch) | |
tree | 691686897898c237a09d31a6b7172b755a0f44fa /config.def.h | |
parent | 25eb18b29a1ff7f48d19e081222ab4f2ffff0ae4 (diff) | |
download | dwm-44040e4c78cafcaf7d1e8c857fec57c55473fb3f.tar.gz dwm-44040e4c78cafcaf7d1e8c857fec57c55473fb3f.zip |
patch: swallow
This patch adds "window swallowing" to dwm as known from Plan 9's
windowing system rio.
Clients marked with isterminal in config.h swallow a window opened by
any child process, e.g. running xclock in a terminal. Closing the xclock
window restores the terminal window in the current position.
This patch helps users spawning a lot of graphical programs from their
command line by avoiding cluttering the screen with many unusable
terminals. Being deep down in a directory hierarchy just does not make
the use of dmenu feasible.
Dependencies
* libxcb
* Xlib-libxcb
* xcb-res
These dependencies are needed due to the use of the latest revision of
the X Resource Extension which is unsupported in vanilla Xlib.
Notes:
* The window swallowing functionality requires dwm to walk the process
tree, which is an inherently OS-specific task. Only Linux and FreeBSD
are supported at this time. Please contact one of the authors if you
would like to help expand the list of supported operating systems.
* Only terminals created by local processes can swallow windows, and
only windows created by local processes can be swallowed.
Diffstat (limited to 'config.def.h')
-rw-r--r-- | config.def.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/config.def.h b/config.def.h index 1609683..c5e8fd5 100644 --- a/config.def.h +++ b/config.def.h @@ -32,8 +32,8 @@ static const Rule rules[] = { * WM_CLASS(STRING) = instance, class * WM_NAME(STRING) = title */ - /* class instance title tags mask isfloating monitor */ - { NULL, NULL, NULL, 0, 0, -1 }, + /* class instance title tags mask isfloating isterminal noswallow monitor */ + { "st", NULL, NULL, 0, 0, 1, 1, -1 }, }; /* layout(s) */ |