From 20a19849479d1b69a38a405e68f3a1010b3f8f43 Mon Sep 17 00:00:00 2001 From: Rutherther Date: Fri, 19 Jul 2024 19:00:55 +0200 Subject: [PATCH] Fix to work with pertag Fix seltags, focusclient after selmon changed --- dwl.c | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/dwl.c b/dwl.c index 17db884..ae53171 100644 --- a/dwl.c +++ b/dwl.c @@ -1607,15 +1607,14 @@ dwl_ipc_output_set_layout(struct wl_client *client, struct wl_resource *resource if (!ipc_output) return; - monitor = ipc_output->mon; if (index >= LENGTH(layouts)) return; - if (index != monitor->lt[monitor->sellt] - layouts) - monitor->sellt ^= 1; - monitor->lt[monitor->sellt] = &layouts[index]; - arrange(monitor); - printstatus(); + monitor = selmon; + selmon = ipc_output->mon; + setlayout(&(Arg){.v = &layouts[index]}); + selmon = monitor; + focusclient(focustop(selmon), 1); } void @@ -1632,13 +1631,14 @@ dwl_ipc_output_set_tags(struct wl_client *client, struct wl_resource *resource, if (!newtags || newtags == monitor->tagset[monitor->seltags]) return; - if (toggle_tagset) - monitor->seltags ^= 1; + /* if (!toggle_tagset) */ + /* monitor->seltags ^= 1; */ - monitor->tagset[monitor->seltags] = newtags; - focusclient(focustop(monitor), 1); - arrange(monitor); - printstatus(); + monitor = selmon; + selmon = ipc_output->mon; + view(&(Arg){.ui = newtags}); + selmon = monitor; + focusclient(focustop(selmon), 1); } void @@ -3453,6 +3453,7 @@ zoom(const Arg *arg) } #ifdef XWAYLAND + void activatex11(struct wl_listener *listener, void *data) { -- 2.48.1