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

[BUG] St.ScrollView invisibly extends outside of menu applet. #11123

Closed
fredcw opened this issue Aug 30, 2022 · 17 comments · Fixed by #12296
Closed

[BUG] St.ScrollView invisibly extends outside of menu applet. #11123

fredcw opened this issue Aug 30, 2022 · 17 comments · Fixed by #12296

Comments

@fredcw
Copy link
Contributor

fredcw commented Aug 30, 2022

 * Cinnamon version 5.4.11 daily builds PPA Mint 21
 
 * No errors in .xsession-errors

Issue

Since 5.4.11 (possibly also 5.4.10 but I don't think so, not in Manjaro at least) the otherwise hidden part of St.ScrollView is invisibly extending outside of the menu applet (also in Cinnamenu applet) such that if you move the mouse pointer above (or below if menu is on top panel) the menu applet, names & descriptions of invisible apps still show in the menu (and tooltips show in Cinnamenu) and the apps are clickable and can be opened.

@fredcw
Copy link
Contributor Author

fredcw commented Sep 11, 2022

Problem seems to have disappeared in cinnamon 5.4.12

@fredcw fredcw closed this as completed Sep 11, 2022
@fredcw
Copy link
Contributor Author

fredcw commented Sep 11, 2022

Sorry, just tested again, the problem is still there. Mint 21 & Mint 21 daily PPA.

@fredcw fredcw reopened this Sep 11, 2022
@mfreeman72
Copy link

mfreeman72 commented Dec 21, 2022

This bug is still present in Cinnamon 5.6.5 in Linux Mint 21.1. It causes a lot of problems, as I tend to habitually click the area just below the menu (I use a panel at the top of the screen). I'm constantly accidentally opening a program when I just want to close the menu, because the application links extend beyond the boundaries of the menu.

@njdf18
Copy link

njdf18 commented Jan 13, 2023

I found this bug, too.

I record a gif and posted it on Reddit.
https://www.reddit.com/r/linuxmint/comments/109rk1e/a_bug_when_the_panel_with_cinnamenu_and_menu_is/?utm_source=share&utm_medium=android_app&utm_name=androidcss&utm_term=1&utm_content=share_button

@mfreeman72
Copy link

Yep. Still present in Cinnamon 5.6.6.

@mfreeman72
Copy link

Also still in Cinnamon 5.6.7.

@mfreeman72
Copy link

Still in Cinnamon 5.6.8. I hope this gets some attention sometime soon. It's an extremely frustrating bug!

@mtwebster
Copy link
Member

It's gotten lots of attention. Unfortunately it's an elusive bug.

@mfreeman72
Copy link

Awesome! Thank you for the info. I just hadn't seen any response to this yet.

mtwebster pushed a commit that referenced this issue Jun 6, 2023
This adds a class PopupResizeHandler to applet.js to allow applets to be resizable with the mouse.

+ add a global var to dnd.js to enable ungrabbing of pointer as a workaround to issue #11123

When applet can be resized on opposite edges, i.e. when the applet is not in a corner of the workspace, then resizing from either of those edges leads the mouse pointer to not match up with the applet edge. This is a minor visual issue that maybe should be fixed in the future.
@rcalixte
Copy link
Member

I was digging into troubleshooting this and it appears to be more than just the Menu applet. I tested with the Notifications applet and I was able to reproduce clicking beyond the boundary but having the click captured by the list of objects being drawn.

@mfreeman72
Copy link

This must be an incredibly tough bug to figure out. It's still present in Cinnamon 6.0 in the LM 21.3 beta. I hope this can be worked out soon!

@mfreeman72
Copy link

Any chance this will be fixed in the upcoming Cinnamon 6.2 release for Mint 22? For now, my workaround is to make the menu the full height of the screen, which isn't ideal, but it prevents the mouse from getting to the applications outside the menu area.

@rcalixte
Copy link
Member

Any chance this will be fixed in the upcoming Cinnamon 6.2 release for Mint 22? For now, my workaround is to make the menu the full height of the screen, which isn't ideal, but it prevents the mouse from getting to the applications outside the menu area.

It is still something that will take a bit of dedicated time to figure out. From what I can gather, it was likely something that was introduced in Cinnamon 5.4 and is likely a bug in the St or Clutter libraries. Assuming this hunch is correct, a lot of commits and C code would need to be traced to try to determine the source of the bug. Someone needs to spend this time though.

@DokterKaj
Copy link

Issue #2522 from the GNOME Shell repo provides a workaround: setting the clip_to_allocation flag to true, which is set to false by default according to Clutter docs. Can somebody try this?

@DokterKaj
Copy link

Just tested the fix on Cinnamenu@json and it now works as intended. However, would it be possible to somehow set the flag to true by default within the Cinnamon shell? That way the fix should apply to all applets by default, instead of applets having to apply the fix individually.

@rcalixte
Copy link
Member

Phenomenal find! I've confirmed that this property does resolve the issue. I'm not sure if it should be defaulted at the toolkit level or if we just need to patch St.ScrollView objects that have the capacity to extend beyond the screen. After a cursory look through the code for both, I think patching at the toolkit level might be trickier (there are some conditional blocks based on this exact property and possible unintended side effects elsewhere since I don't fully understand the scope of those).

The even trickier part is finding all of the areas that need to be patched and patching them. This doesn't need to be applied to every single instance of St.ScrollView, just the ones that are potentially unbounded (like the notification tray or menu applets). Now that we have a working remedy, at the very least, we can resolve it if we ever see it again. Thank you!

rcalixte added a commit to rcalixte/cinnamon-1 that referenced this issue Jul 20, 2024
This prevents the view from being clicked/selected when outside of the visible
viewing pane.

Closes linuxmint#11123
rcalixte added a commit to rcalixte/cinnamon-spices-applets that referenced this issue Jul 20, 2024
rcalixte added a commit to linuxmint/cinnamon-spices-applets that referenced this issue Jul 20, 2024
clefebvre pushed a commit that referenced this issue Jul 20, 2024
)

This prevents the view from being clicked/selected when outside of the visible
viewing pane.

Closes #11123
fredcw added a commit to fredcw/cinnamon that referenced this issue Jul 20, 2024
Revert a workaround added in commit linuxmint@c5af58b that prevented a dnd bug linuxmint#11665 (comment)

The original bug linuxmint#11123 has now been fixed so this workaround is no longer needed.
@fredcw
Copy link
Contributor Author

fredcw commented Jul 20, 2024

I've added a PR #12298 that reverts a drag & drop workaround I added due to this bug and which can now be reverted.

fredcw added a commit to fredcw/cinnamon-spices-applets that referenced this issue Jul 20, 2024
mtwebster pushed a commit that referenced this issue Jul 20, 2024
Revert a workaround added in commit c5af58b that prevented a dnd bug #11665 (comment)

The original bug #11123 has now been fixed so this workaround is no longer needed.
rcalixte pushed a commit to linuxmint/cinnamon-spices-applets that referenced this issue Jul 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants