~ruther/dwl

07bf1832bf2c435107f4664c82efc756f3fdd784 — Leonardo Hernández Hernández 2 years ago 174919e
set monitor for clients that don't have one in updatemons()

only if selmon is enabled and the clients are mapped
2 files changed, 16 insertions(+), 0 deletions(-)

M client.h
M dwl.c
M client.h => client.h +10 -0
@@ 184,6 184,16 @@ client_is_float_type(Client *c)
}

static inline int
client_is_mapped(Client *c)
{
#ifdef XWAYLAND
	if (client_is_x11(c))
		return c->surface.xwayland->mapped;
#endif
	return c->surface.xdg->mapped;
}

static inline int
client_wants_fullscreen(Client *c)
{
#ifdef XWAYLAND

M dwl.c => dwl.c +6 -0
@@ 2365,6 2365,7 @@ updatemons(struct wl_listener *listener, void *data)
	 */
	struct wlr_output_configuration_v1 *config =
		wlr_output_configuration_v1_create();
	Client *c;
	Monitor *m;
	sgeom = *wlr_output_layout_get_box(output_layout, NULL);
	wl_list_for_each(m, &mons, link) {


@@ 2388,6 2389,11 @@ updatemons(struct wl_listener *listener, void *data)
		config_head->state.y = m->m.y;
	}

	if (selmon && selmon->wlr_output->enabled)
		wl_list_for_each(c, &clients, link)
			if (!c->mon && client_is_mapped(c))
				setmon(c, selmon, c->tags);

	wlr_output_manager_v1_set_configuration(output_mgr, config);
}


Do not follow this link