yambar/bar
Daniel Eklöf 2a0a722c13
bar/wayland: handle layer surface being closed
If the output we’re mapped on is disabled (or disconnected), the
compositor will unmap us.

Up until now, our response was to simply shutdown.

Now, we destroy the surface, remove all pending rendering buffers, and
all further calls to commit() will return immediately, without doing
anything.

If the user has configured a specific monitor to use, we wait for that
output to come back. When it does, we re-create the layer surface and
then we’re up and running again.

Bars running on the “default” monitor are handled in a similar
way. Since we don’t have an output name from the configuration, we
instead store the name of the output we were mapped on, when we’re
either unmapped from that output, or that output global is destroyed.

As soon as we see that output come back, we re-create the layer
surface.
2022-01-01 11:43:40 +01:00
..
backend.h bar: add bar->output_name(), returns the name of the output we’re on 2021-08-09 19:56:47 +02:00
bar.c bar: do a synchronous “refresh” *before* starting the modules 2021-10-22 18:05:20 +02:00
bar.h Add layer option 2021-08-25 18:42:46 +02:00
meson.build module/river: meson: explicitly add wl_proto_src + wl_proto_headers to sources 2020-09-24 17:30:18 +02:00
private.h Add layer option 2021-08-25 18:42:46 +02:00
wayland.c bar/wayland: handle layer surface being closed 2022-01-01 11:43:40 +01:00
wayland.h wayland: mucho wip: initial sort-of-working wayland backend 2019-02-03 11:08:53 +01:00
xcb.c Fix: X11 struts 2021-12-09 02:07:24 +01:00
xcb.h bar: wip: define a 'backend' interface 2019-01-29 20:59:25 +01:00