~ruther/dwl

c1578bc14db7822743ffdbde93b2c22b1a0b5f6a — Leonardo Hernández Hernández 2 years ago 9b84940
use LayerSurface.mon when possible
1 files changed, 8 insertions(+), 8 deletions(-)

M dwl.c
M dwl.c => dwl.c +8 -8
@@ 759,14 759,13 @@ commitlayersurfacenotify(struct wl_listener *listener, void *data)
	LayerSurface *layersurface = wl_container_of(listener, layersurface, surface_commit);
	struct wlr_layer_surface_v1 *wlr_layer_surface = layersurface->layer_surface;
	struct wlr_output *wlr_output = wlr_layer_surface->output;
	Monitor *m;

	if (!wlr_output || !(layersurface->mon = wlr_output->data))
		return;

	wlr_scene_node_reparent(layersurface->scene,
			layers[wlr_layer_surface->current.layer]);

	if (!wlr_output || !(m = wlr_output->data))
		return;

	if (wlr_layer_surface->current.committed == 0
			&& layersurface->mapped == wlr_layer_surface->mapped)
		return;


@@ 775,10 774,10 @@ commitlayersurfacenotify(struct wl_listener *listener, void *data)

	if (layers[wlr_layer_surface->current.layer] != layersurface->scene) {
		wl_list_remove(&layersurface->link);
		wl_list_insert(&m->layers[wlr_layer_surface->current.layer],
		wl_list_insert(&layersurface->mon->layers[wlr_layer_surface->current.layer],
			&layersurface->link);
	}
	arrangelayers(m);
	arrangelayers(layersurface->mon);
}

void


@@ 1055,7 1054,7 @@ destroylayersurfacenotify(struct wl_listener *listener, void *data)
	wl_list_remove(&layersurface->surface_commit.link);
	wlr_scene_node_destroy(layersurface->scene);
	if (layersurface->layer_surface->output) {
		if (layersurface->mon)
		if ((layersurface->mon = layersurface->layer_surface->output->data))
			arrangelayers(layersurface->mon);
		layersurface->layer_surface->output = NULL;
	}


@@ 1361,8 1360,9 @@ void
maplayersurfacenotify(struct wl_listener *listener, void *data)
{
	LayerSurface *layersurface = wl_container_of(listener, layersurface, map);
	layersurface->mon = layersurface->layer_surface->output->data;
	wlr_surface_send_enter(layersurface->layer_surface->surface,
		layersurface->layer_surface->output);
		layersurface->mon->wlr_output);
	motionnotify(0);
}


Do not follow this link