https://bugs.kde.org/show_bug.cgi?id=503121
Bug ID: 503121 Summary: wlr-layer-shell bug: No configure event is sent after the layer surfaceis unmapped and the remapped Classification: Plasma Product: kwin Version: 6.3.4 Platform: Arch Linux OS: Linux Status: REPORTED Severity: normal Priority: NOR Component: wayland-generic Assignee: kwin-bugs-n...@kde.org Reporter: ko...@kovidgoyal.net Target Milestone: --- Created attachment 180486 --> https://bugs.kde.org/attachment.cgi?id=180486&action=edit Full WAYLAND_DEBUG=1 log SUMMARY The wlr-layer-shell implementation in kwin has a bug where if the surface is unmapped by doing: wl_surface_attach(surface, NULL, 0, 0); wl_surface_commit(surface); and then later remapped by doing: wl_surface_commit(surface); no layer shell configure event is sent by kwin. Quoting the spec from https://wayland.app/protocols/wlr-layer-shell-unstable-v1 Attaching a null buffer to a layer surface unmaps it. Unmapping a layer_surface means that the surface cannot be shown by the compositor until it is explicitly mapped again. The layer_surface returns to the state it had right after layer_shell.get_layer_surface. The client can re-map the surface by performing a commit without any buffer attached, waiting for a configure event and handling it as usual. kwin is not sending the configure event at all. This works as expected on sway and hyprland. SOFTWARE/OS VERSIONS Linux/KDE Plasma: KDE Plasma Version: 6.3.4 KDE Frameworks Version: 6.13.0 Qt Version: 6.9.0 ADDITIONAL INFORMATION Extract from the WAYLAND_DEBUG=1 log: [2733789.462] {Default Queue} -> wl_surface#29.attach(nil, 0, 0) [2733789.474] {Default Queue} -> wl_surface#29.commit() [2733792.214] {Default Queue} wl_keyboard#28.leave(1140, wl_surface#29) [2741813.411] {Default Queue} -> wl_surface#29.commit() [2755957.349] {Default Queue} -> wp_fractional_scale_v1#30.destroy() The first line shows the surface being unmapped with a nil buffer and committed. Then one second later, the surface is committed again, nothing is received from kwin for an additional 14 seconds at which point the application quits starting the destroy sequence. -- You are receiving this mail because: You are watching all bug changes.