aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIsaac Freund <mail@isaacfreund.com>2023-01-25 12:39:00 +0100
committerIsaac Freund <mail@isaacfreund.com>2023-01-25 12:39:00 +0100
commit76952183c0cde7a8e2c53173567f9f98ae5258c6 (patch)
treee40142fa1157cd7775251b1f51c4b6b52f0f2023
parent946173005d13a9745dec6a31d30355cc697bf6e3 (diff)
downloadriver-76952183c0cde7a8e2c53173567f9f98ae5258c6.tar.gz
river-76952183c0cde7a8e2c53173567f9f98ae5258c6.tar.xz
session-lock: fix assertion failure on hot-plug while locked
-rw-r--r--river/Output.zig6
1 files changed, 5 insertions, 1 deletions
diff --git a/river/Output.zig b/river/Output.zig
index 2e22524..f994190 100644
--- a/river/Output.zig
+++ b/river/Output.zig
@@ -69,6 +69,10 @@ usable_box: wlr.Box,
views: ViewStack(View) = .{},
lock_surface: ?*LockSurface = null,
+/// Tracks the currently presented frame on the output as it pertains to ext-session-lock.
+/// The output is initially considered blanked:
+/// If using the DRM backend it will be blanked with the initial modeset.
+/// If using the Wayland or X11 backend nothing will be visible until the first frame is rendered.
lock_render_state: enum {
/// Normal, "unlocked" content may be visible.
unlocked,
@@ -82,7 +86,7 @@ lock_render_state: enum {
pending_lock_surface,
/// The lock surface buffer has been presented.
lock_surface,
-} = .unlocked,
+} = .blanked,
/// The double-buffered state of the output.
current: State = State{ .tags = 1 << 0 },