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

LG monitor hotplug on DPMS wake causes several apps to either crash or lose their windows on output recovery #262

Open
kode54 opened this issue May 23, 2024 · 6 comments
Labels
bug Something isn't working

Comments

@kode54
Copy link

kode54 commented May 23, 2024

Describe the bug
Several applications annoyingly don't recover on the output recovery cycle. Notably, wf-panel and sfwbar both randomly either get stuck at scale 1.0 on my scale 2.0 monitor when recovered, or sometimes even lose their status bars on the hotplugged output altogether.

To Reproduce
Steps to reproduce the behavior:

  1. Enable output recovery
  2. DPMS cycle the monitors, causing LG 24UD58-B to disconnect for just a moment on DPMS "on" setting.
  3. sfwbar or wf-panel are lost from the restored display.

Expected behavior
The status bars should recover more readily onto the restored display.

Screenshots or stacktrace
Supplying logs of sfwbar and wf-panel reacting to output power states:
sfwbar_output_wldebug.log.txt
wfpanel_output_wldebug.log.txt

Wayfire version
wayfire-git 0.8.1.r302.g5b4f9b94-1

@kode54 kode54 added the bug Something isn't working label May 23, 2024
@kode54
Copy link
Author

kode54 commented May 23, 2024

I'll try to log some WAYLAND_DEBUG logs for the relevant services tonight, if I can get anything useful out of it. Both of the panels are Wayland apps, so it should be fairly easy to WAYLAND_DEBUG either of them and coax some display output recovery attempts.

@kode54
Copy link
Author

kode54 commented May 24, 2024

Logs attached to bug report.

@ammen99
Copy link
Member

ammen99 commented Jun 11, 2024

This honestly sounds like a bug in wf-panel and sfwbar, I can't imagine what wayfire would do so that you don't see any panels there. Do the output(s) work fine otherwise after the dpms cycle?

@kode54
Copy link
Author

kode54 commented Jun 12, 2024

Probably is a bug for those panels, but it doesn't happen on labwc. The outputs are otherwise usable after the output recovery. Maybe output recovery isn't recovering layer shell windows?

@LBCrion
Copy link

LBCrion commented Jun 13, 2024

You hopefully shouldn't lose the bar on monitor disconnect with the latest git version of sfwbar. There seems to have been a change in behaviour in gtk/gtk-layer-shell/wlroots interaction over the last few months.
Previously, we could watch for output destruction and graciously unmap the bar on the event. Now the bar surface gets unmapped before we're notified of the output destruction and we need to handle the "delete" event on the bar sent by gtk-layer-shell.

@kode54
Copy link
Author

kode54 commented Jun 13, 2024

I’m sorry I didn’t report these directly to your repository, I had initially thought they were compositor problems. I’ll try to remember reporting application/compositor interactions to both ends where possible.

edit: and thanks for catching this post.

@ammen99 ammen99 transferred this issue from WayfireWM/wayfire Jun 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants