oae / gnome-shell-pano

Next-gen Clipboard Manager for Gnome Shell
https://extensions.gnome.org/extension/5278/pano/
GNU General Public License v2.0
1.13k stars 60 forks source link

Gnome 46 exension breaks vrr #304

Open lorenzo0932 opened 4 months ago

lorenzo0932 commented 4 months ago

Description

What is the bug?

The bug appens when Gnome 46 Vrr is enabled and the extension is enabled. If i'm in fullscreen with a vrr supported program, vrr doesn't work. If i disable Pano then everything works as aspected

Expected Behavior

Reprodution

How one can find the bug?

Steps To Reproduce

Steps to reproduce, if applicable:

  1. Enable Pano extention in Gnome 46
  2. Use a VRR supported app in full screen (for exemple VRRTest)

Details

Mark with [ ] all that applies:

It happens with any application?

It happens only on one computer?

It happens only with some specific gnome configuration?

It happens only with some specific extension installed?

Diagnostics

Under what conditions does it happen?

Fill in all information that applies:

Environment

Application Details

Application Version

Pano Version: 1001

Output and Logs

Gnome

Command: journalctl --since=now --follow /usr/bin/gnome-shell

When the extension in enabled

$ journalctl --since=now --follow /usr/bin/gnome-shell
giu 28 21:15:00 ryzen-di-lorenzo gnome-shell[18823]: Window manager warning: Invalid WM_TRANSIENT_FOR window 0xa00009 specified for 0xa00007.
giu 28 21:15:02 ryzen-di-lorenzo gnome-shell[18823]: Window manager warning: Buggy client sent a _NET_ACTIVE_WINDOW mess
...

When the extension in disabled

$ journalctl --since=now --follow /usr/bin/gnome-shell
giu 28 21:15:00 ryzen-di-lorenzo gnome-shell[18823]: Window manager warning: Invalid WM_TRANSIENT_FOR window 0xa00009 specified for 0xa00007.
giu 28 21:15:02 ryzen-di-lorenzo gnome-shell[18823]: Window manager warning: Buggy client sent a _NET_ACTIVE_WINDOW mess
...

Pano Configuration

Command: dconf dump /org/gnome/shell/extensions/pano/

$ dconf dump /org/gnome/shell/extensions/pano/
[/]
exclusion-list=['Bitwarden', '1Password', 'KeePassXC', 'secrets', 'org.gnome.World.Secrets', 'org.keepassxc.KeePassXC']
global-shortcut=['<Super>v']
history-length=500
is-in-incognito=false
open-links-in-browser=false
play-audio-on-copy=false
send-notification-on-copy=false
show-indicator=false
sync-primary=false
wiggle-indicator=false
...

Enabled Extensions

Command: dconf read /org/gnome/shell/enabled-extensions | tr ' ' '\n'

$ dconf read /org/gnome/shell/enabled-extensions | tr ' ' '\n'
['gnome-extension-brightness@bruno.englert.gitlab.com',
'BingWallpaper@ineffable-gmail.com',
'nightthemeswitcher@romainvigier.fr',
'suspend-button@laserb',
'suspend-lock-button@seanux.sea.sy',
'sound-output-device-chooser@kgshank.net',
'audio-output-switcher@anduchs',
'espresso@coadmunkee.github.com',
'user-theme@gnome-shell-extensions.gcampax.github.com',
'drive-menu@gnome-shell-extensions.gcampax.github.com',
'openweather-extension@jenslody.de',
'freq-boost-switch@metal03326',
'custom-accent-colors@demiskp',
'gsconnect@andyholmes.github.io',
'firefox-pip@bennypowers.com',
'wallpaper-changer@jomik.org',
'quicksettings-audio-devices-hider@marcinjahn.com',
'quicksettings-audio-devices-renamer@marcinjahn.com',
'quick-settings-audio-panel@rayzeq.github.io',
'quick-settings-tweaks@qwreey',
'appindicatorsupport@rgcjonas.gmail.com',
'display-brightness-ddcutil@themightydeity.github.com',
'rounded-window-corners@yilozt',
'blur-my-shell@aunetx',
'HideItems@fablevi.github.io',
'GmailMessageTray@shuming0207.gmail.com',
'Vitals@CoreCoding.com',
'extension-list@tu.berry',
'just-perfection-desktop@just-perfection',
'tiling-assistant@leleat-on-github',
'legacyschemeautoswitcher@joshimukul29.gmail.com',
'pano@elhan.io']
...

Other Notes

I tried even with all extension disabled without any success

Arcitec commented 4 months ago

Just commenting to say that this sounds like an impossible bug. This extension just captures clipboard contents, and provides one hotkey to display a list of clipboard contents. It has nothing to do with VRR. I don't even think that extensions can do ANYTHING about the VRR code (can't inject into it at all), because VRR is handled by Mutter, which is the compositor ABOVE GNOME Shell in the hierarchy. Extensions can only modify GNOME Shell.

Totto16 commented 4 months ago

It could be, that this causes the problem: https://github.com/oae/gnome-shell-pano/pull/277 πŸ€”

lorenzo0932 commented 4 months ago

Just commenting to say that this sounds like an impossible bug. This extension just captures clipboard contents, and provides one hotkey to display a list of clipboard contents. It has nothing to do with VRR. I don't even think that extensions can do ANYTHING about the VRR code (can't inject into it at all), because VRR is handled by Mutter, which is the compositor ABOVE GNOME Shell in the hierarchy. Extensions can only modify GNOME Shell.

Look initially I thought like you, but with all the tests I did and under all conditions the vrr stops working only and only if this extension is active on Gnome 46. The test is safely reproducible and I have already verified that I am not the only one with this problem as you can see here: https://github.com/oae/gnome-shell-pano/issues/271#issuecomment-2185273705

Also thinking about it, the way the vrr is activated on gnome and then mutter depends on the "exclusive" full screen, so if there is any app that interferes with the "exclusive" full screen the vrr will never be activated.

It could be, that this causes the problem: #277 πŸ€”

I also think it is related to this issue. I haven't read what they did to fix the problem but maybe the workaroud they found breaks compatibility with vrr

PS. if anything I wrote is wrong I apologize in advance

Totto16 commented 4 months ago

No worries about things being wrong, we are all investigating, so nothing is for granted... πŸ˜“

That said, #277 was done, because of another issue with full-screen Wayland and mutter, so I'll have to look into this πŸ€”

But fixing one bug and causing another is a bad situation, if we revert this fix, the original bug #263 comes back πŸ€¦πŸΌβ€β™‚οΈ

So we have to wait for a fix of both bugs, or at least one, so that we can apply the fix or not πŸ˜‚

Edit: the PR that would fix #263, and we could revert #277 would be #mutter/2660

But it's still open and not merged πŸ˜“

lorenzo0932 commented 4 months ago

oh that's a bummer. In any case, I wanted to know if it has already been verified that the vrr worked before #277 . To see if it was that modification that caused problems or not.

If it is necessary I can test the old version myself, but I don't know how to refer to the codebase before this merge but I would be willing to do it with the correct instructions.

PS. Also would anyone be able to explain why this problem only happens with the version of mutter that comes with gnome 46?