summaryrefslogtreecommitdiff
path: root/src/sxwm.c
diff options
context:
space:
mode:
authorAbhinav <abhinav.prsai@gmail.com>2025-06-23 20:52:58 +0100
committerAbhinav <abhinav.prsai@gmail.com>2025-06-23 20:52:58 +0100
commit4cd111d9d1356db27f6c90b9c95144f9c409ec54 (patch)
treee0d1c92289ab6b0703fe6e99890468919628ad9e /src/sxwm.c
parent8f4933642e2f2616321dcf7dda4f409aa1f20115 (diff)
add new_win_master
new windows spawned can now be set as master window
Diffstat (limited to 'src/sxwm.c')
-rw-r--r--src/sxwm.c17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/sxwm.c b/src/sxwm.c
index b223207..7b35b09 100644
--- a/src/sxwm.c
+++ b/src/sxwm.c
@@ -12,7 +12,7 @@
* will use this will probably be programmers :)
*
* (C) Abhinav Prasai 2025
- */
+*/
#include <X11/X.h>
#include <err.h>
@@ -173,11 +173,17 @@ Client *add_client(Window w, int ws)
workspaces[ws] = c;
}
else {
- Client *tail = workspaces[ws];
- while (tail->next) {
- tail = tail->next;
+ if (user_config.new_win_master) {
+ c->next = workspaces[ws];
+ workspaces[ws] = c;
+ }
+ else {
+ Client *tail = workspaces[ws];
+ while (tail->next) {
+ tail = tail->next;
+ }
+ tail->next = c;
}
- tail->next = c;
}
open_windows++;
@@ -1437,6 +1443,7 @@ void init_defaults(void)
default_config.bindsn = 0;
default_config.new_win_focus = True;
default_config.warp_cursor = True;
+ default_config.new_win_master = False;
if (backup_binds) {
for (unsigned long i = 0; i < LENGTH(binds); i++) {