mrEDitor / gnome-shell-extension-scroll-panel

Gnome Shell extension that allows to switch between workspaces and applications by scrolling mouse wheel above the top panel.
https://extensions.gnome.org/extension/4257/
MIT License
29 stars 6 forks source link

Latest update breaks volume scrolling with system indicator (no volume extensions) #20

Closed ferdnyc closed 2 years ago

ferdnyc commented 2 years ago

Since I updated to Scroll Panel 7 v4.1.5+git-871ffb4 (after being prompted by a GSE new-version notification), the "Switching workspaces" target area covers the entirety of the uiGroup > panelBox > panel it's targeted to. (aka, the entire default top bar in Fedora 35's very stock Gnome Shell configuration.) Trying to change volume using the scroll wheel over the system menu area triggers a workspace switch, and the extension settings dialog won't let me target any UI element other than the entire panel as the "Panel to scroll".

The "Switching windows" configs, by contrast, work fine. They came up initially targeting the panelLeft sub-element, and there haven't been any real issues other than the initial width constraint squishing the panelLeft contents so they were crowded into about half their normal width. (I use both Frippery Applications Menu and Frippery Panel Favorites so there's a lot of "extra" stuffed into my left panel. It actually extends beyond the left third of the screen a bit and encroaches on the middle section. Which is fine, the center elements take up hardly any width.) After I disabled the fixed-width option in the settings, it was back to normal.

But I can't seem to convince Scroll Panel to let me get at my volume control anymore, without disabling workspace switching. (Which is the only thing I use Scroll Panel for, I don't actually need the window-switching functionality at all)

The one step I haven't attempted yet is restarting the Shell, perhaps it's a transient problem. Fingers crossed, I guess?

mrEDitor commented 2 years ago

Hello and thanks for the feedback. Seems like you are right about the degradation of event handling mechanism in the v4.1.5 of the extension.

Now it seems to be better to revert back to v4.1.4 of the extension, since v4.1.5 only tried to remove X11-related issue #19 with ignoring some events. Alternatively, you may shrink scrollable area to clock panel only via the extension settings, I suppose.

Just looked at event handling once more and it still seems weird and over-complicated to me. Event propagation seems to be uncancellable but just marking cancelled events as emulated?..

mrEDitor commented 2 years ago

Also I've disabled the bugged version in extensions store, you should be able to re-install previous version from here now.

ferdnyc commented 2 years ago

Now it seems to be better to revert back to v4.1.4 of the extension, since v4.1.5 only tried to remove X11-related issue #19 with ignoring some events.

Alternatively, you may shrink scrollable area to clock panel only via the extension settings, I suppose.

With 4.1.5, that was the first thing I tried to do, but I couldn't find a way to accomplish that either. The target selector for workspace switching would only highlight the entire panel, it didn't allow me to select any of its child elements no matter what I tried. It was like they weren't even there, or at least the panel itself was obscuring all of them. (I even tried typing a child element's path directly into the target field, but alas it wouldn't take keyboard input.)

I'll drop back down to 4.1.4 for now. Thanks for the quick response!

ferdnyc commented 2 years ago

Alternatively, you may shrink scrollable area to clock panel only via the extension settings, I suppose.

With 4.1.5, that was the first thing I tried to do, but I couldn't find a way to accomplish that either.

Ohhh, now I get it. Yeah, the scroll-to-switch-level thing is a neat idea, but I'm not sure it's really discoverable enough without some hint to point the user to it. It was pure luck that I happened to accidentally scroll while I had the selector active.

And while the LookingGlass picker does sort-of work the same way, it doesn't only work that way, and in fact it kind of works the opposite way.

Because the whole point of activating the picker is to choose a different widget than the currently-selected one, I'm not sure that default-level thing really makes sense. After all, it's not hard at all to target a container widget with the LG picker itself, just by using the mouse focus alone (scrolling is of course an option, but no more than that).

Still, I did find it in the end, although not until after I'd already downgraded to 4.1.4.

mrEDitor commented 2 years ago

Fresh v4.1.6-gnome42 release is based on v4.1.4 and keeps volume indicator usable at the expense of X11-specific bug #19.

Also I've added visible popup describing the ability to scroll through actors hierarchy during actor picking: изображение

Thank you @ferdnyc for the feedback!