mirror of
https://codeberg.org/dwl/dwl-patches.git
synced 2025-09-06 19:24:51 +00:00
50 lines
1.5 KiB
Diff
50 lines
1.5 KiB
Diff
From e94f4b8363f4122f9b00f774a5b541a00c49fd35 Mon Sep 17 00:00:00 2001
|
|
From: MayOrMayNotBeACat <maybeacat804@gmail.com>
|
|
Date: Fri, 6 Jun 2025 22:42:16 -0400
|
|
Subject: [PATCH] Allow initial layout to be set per tag.
|
|
|
|
---
|
|
config.def.h | 1 +
|
|
dwl.c | 9 ++++++++-
|
|
2 files changed, 9 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/config.def.h b/config.def.h
|
|
index 22d2171..8f2fade 100644
|
|
--- a/config.def.h
|
|
+++ b/config.def.h
|
|
@@ -16,6 +16,7 @@ static const float fullscreen_bg[] = {0.1f, 0.1f, 0.1f, 1.0f}; /* You ca
|
|
|
|
/* tagging - TAGCOUNT must be no greater than 31 */
|
|
#define TAGCOUNT (9)
|
|
+static int tag_layout[TAGCOUNT] = {0, 0, 0, 0, 0, 0, 0, 0, 0}; /* Modify as needed to match TAGCOUNT */
|
|
|
|
/* logging */
|
|
static int log_level = WLR_ERROR;
|
|
diff --git a/dwl.c b/dwl.c
|
|
index d234cd2..da46816 100644
|
|
--- a/dwl.c
|
|
+++ b/dwl.c
|
|
@@ -1045,11 +1045,18 @@ createmon(struct wl_listener *listener, void *data)
|
|
m->pertag->nmasters[i] = m->nmaster;
|
|
m->pertag->mfacts[i] = m->mfact;
|
|
|
|
- m->pertag->ltidxs[i][0] = m->lt[0];
|
|
+ if (i != 0)
|
|
+ m->pertag->ltidxs[i][0] = &layouts[tag_layout[i-1]];
|
|
+ else
|
|
+ m->pertag->ltidxs[i][0] = m->lt[0];
|
|
m->pertag->ltidxs[i][1] = m->lt[1];
|
|
m->pertag->sellts[i] = m->sellt;
|
|
}
|
|
|
|
+ m->lt[0] = m->pertag->ltidxs[1][0];
|
|
+ m->lt[1] = m->pertag->ltidxs[1][1];
|
|
+ strncpy(m->ltsymbol, m->pertag->ltidxs[1][0]->symbol, LENGTH(m->ltsymbol));
|
|
+
|
|
/* The xdg-protocol specifies:
|
|
*
|
|
* If the fullscreened surface is not opaque, the compositor must make
|
|
--
|
|
2.49.0
|
|
|