~ruther/dwl

be6f573b4ef723a3985489b0ac0eb035d7c34420 — Devin J. Pohly 3 years ago 1b38801
use scene to keep track of LayerSurfaces' layers
1 files changed, 2 insertions(+), 5 deletions(-)

M dwl.c
M dwl.c => dwl.c +2 -5
@@ 156,7 156,6 @@ typedef struct {
	struct wl_listener surface_commit;

	struct wlr_box geo;
	enum zwlr_layer_shell_v1_layer layer;
} LayerSurface;

typedef struct {


@@ 764,16 763,14 @@ commitlayersurfacenotify(struct wl_listener *listener, void *data)

	if (!wlr_output)
		return;

	m = wlr_output->data;
	arrangelayers(m);

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

void

Do not follow this link