Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

swaylock either migrated to another output or failed to catch hotplug on labwc #313

Open
kode54 opened this issue Sep 13, 2023 · 2 comments

Comments

@kode54
Copy link

kode54 commented Sep 13, 2023

Running the following packages on Arch:

wlroots-hidpi-xprop-git 0.17.0.20230821.165609-1
labwc-wlroots-017-git 0.6.4.r57.gbd6efe4-1
swaylock 1.7.2-1
swayidle 1.8.0-1

The labwc package is basically Git version with labwc PR 626 applied to it.

The issue I'm having is that, if I boot up labwc with one display, lock the screen with swaylock, then plug in my second monitor, swaylock doesn't lock the newly attached monitor.

I also have a problem if I set up swayidle to invoke kanshi sighup to reset the scaling of my primary monitor, which defaults to 100% scaling when I want 200%. This results in swaylock migrating off it or failing to lock it, too.

No crashes logged.

@kennylevinsen
Copy link
Member

Please retest with swaylock master, which would guarantee that ext-session-lock-v1 is used.

Locking with ext-session-lock is session-wide, not per monitor. Quoting the spec:

The locked event indicates that the session is locked. This means that the compositor must stop rendering and providing input to normal clients. Instead the compositor must blank all outputs with an opaque color such that their normal content is fully hidden.

If any regular content ever appears during lock, it is a bug in labwc. If the issue is just that the lock UI does not appear, this could be a bug in swaylock (or labwc). For the latter, collect a WAYLAND_DISPLAY=1 log - but please avoid typing your password as this would be included in the log.

@kode54
Copy link
Author

kode54 commented Sep 14, 2023

I tested 1.7.2 and 1.7.2.r8 from Git master, and both work with hotplugging the display. The problem comes when using an SSH session to rescale the output, which is similar to if I were to have my swayidle commandline for display power on so that it sends SIGHUP to Kanshi and restores my display scaling mode.

The log does seem to indicate that swaylock is doing the correct thing, and that labwc is at fault.

Here is the log anyway, it doesn't include any password. I wasn't able to type anything to the accessible desktop, because the session lock was still capturing the keyboard. I was, however, able to use the mouse to control my waybar, and also to command the desktop menu to terminate the labwc session.

https://gist.github.com/kode54/0af4fc82ff1957cd08604aab5bef5684

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

No branches or pull requests

2 participants