linuxmint / cinnamon

A Linux desktop featuring a traditional layout, built from modern technology and introducing brand new innovative features.
GNU General Public License v2.0
4.51k stars 733 forks source link

[BUG] Panel auto-hiding does not actually hide itself (two reproducible cases) #11087

Open nick-s-b opened 2 years ago

nick-s-b commented 2 years ago
 * Cinnamon version (cinnamon --version)
Cinnamon 5.4.9
 * Distribution - (Mint 21, Arch, Fedora 37, etc...)
 Linux arch 5.19.1-arch2-1 #1 SMP PREEMPT_DYNAMIC Thu, 11 Aug 2022 16:06:13 +0000 x86_64 GNU/Linux
 * Graphics hardware *and* driver used
 Nvidia binary  515.65.01
 * 32 or 64 bit
 64-bit

Issue

I have my bottom panel set to auto-hide: Screenshot at 2022-08-18 23-59-01 Since version 5.4.X I've been having issues with it rarely hiding itself. It's actually more visible than hidden when I use the computer daily.

Steps to reproduce

I've identified two ways to show when it's not hiding. I can reproduce these 100% of the time. I've had it reveal itself at random times too but I have no idea what could have caused it. The ways below work 100% of the time for me.

1) If I quickly flick my mouse downward towards the bottom panel that's hidden and then move the mouse away, before the panel has even been fully revealed, it will remain in the visible state until I move my mouse down over it and then move my mouse away from it.

2) If I right click on a 3rd party program that's been minimized into the System Tray and then perform an action on it, say "Show" in case of qbittorrent for example, and then move my mouse away from the main bottom panel, it will remain in visible state until I move my mouse over and then away from it.

Expected behaviour

Panel should hide on its own. The current behavior is quite annoying :)

mtwebster commented 2 years ago

If you remove systray@cinnamon.org does the issue go away?

nick-s-b commented 2 years ago

@mtwebster Hi Michael, I've been running with systray disabled for over 2 hours now and the instances of the panel being stuck in visible state are virtually none. I think this is the root cause of it. Thank you for narrowing it down.

LinuxOnTheDesktop commented 2 years ago

Let me add: I have the same problem, on Mint 21 and on two computers, and I did not have the problem on Mint 20.3. The problem is that sometimes (I do not know when) my auto-hide top panel does not hide itself. I too have the system tray. I have not yet tried removing that tray.

ItalicIntegral commented 2 years ago

LMDE 5 (elsie) x86_64 Cinnamon 5.4.11 AMD A8-6410 APU with AMD Radeon R5 Graphics

I was able to replicate the issues by following the steps by @nick-s-b.

LinuxOnTheDesktop commented 1 year ago

Panel should hide on its own. The current behavior is quite annoying :)

Indeed!

Cf. these two further, and open, bug reports, which are about the same issue as this one, or close enough: #9251; #10173.

gyrocam commented 1 year ago

I'm able to reproduce the odd behavior nick-s-b observed, additionally I can reproduce this behavior [the Panel failing to hide] by middle-clicking on a Grouped Window List item. The expected default behavior would be for the item in the Grouped Window List to be closed and the Panel to disappear, rather the Panel remains unhidden ignoring any auto-hide settings. Manjaro/Cinnamon

LinuxOnTheDesktop commented 1 year ago

This rather fundamental problem persists under Cinnamon 5.8.4 on Mint 21.2.

firepainting commented 1 year ago

I have been experiencing this since Mint 19.3 Cinnamon, I believe (!), when I started using Mint. On both PC's. Auto hide panel.

I used to have the panel on the left side (vertical) and then now at the bottom (horizontal).

@nick-s-b step to reproduce number 1 is the main culprit.

I cannot reproduce step number 2. I use qBittorrent as well.

systray@cinnamon.org is enabled (I need it).

I'm now on Mint 21.2 Cinnamon.

mdpenguin commented 11 months ago

I can only intermittently replicate this with QBittorrent, but I can replicate it reliably on Cinnamon 5.8.4 with Clawsmail 4.0.0 with plugin Notification enabled. Steps to replicate:

  1. Configuration > Preferences > Plugins > Notification > SysTrayicon
  2. Ensure that Enable Trayicon is checked and minimize to tray
  3. Left-click on Claws Mail icon in tray to open application
  4. Note that panel is still displayed
  5. Click on icon in tray to hide application
  6. Note that panel is still displayed
LinuxOnTheDesktop commented 11 months ago

Is this not a rather major paper-cut? Put otherwise (because 'major paper-cut' is oxymoronic): isn't this a glaring and irritating bug? If it is, then surely some Mint developer should try to fix this bug.

Cf. #11611, which itself contains references to two open issues other than this one.

nick-s-b commented 11 months ago

I have an update report for version 5.8.4:

$ cinnamon --version
Cinnamon 5.8.4

The 1. issue I reported still persists. When you quickly move the mouse over the tray, it doesn't auto-hide. I don't think this is an issue with systray@cinnamon at all. I can now reproduce it without it.

I have also tried Collapsible Systray which is an alternative to systray@cinnamon and it still happens with it. So .this has to be an issue with the Cinnamon panel itself.

However, I prefer Collapsible Systray over systray@cinnamon since it's less buggy.

Also, systray@cinnamon doesn't work well with 10-bit color and colors are all messed up.. It's about the only part of Cinnamon that still don't support 10-bits.

systray cinnamon 10-bit-fs8

LinuxOnTheDesktop commented 8 months ago

Unfortunately the problem persists into Mint 21.3 Virginia. Working around the problem requires extra mouse movement (which soon adds up).

LinuxOnTheDesktop commented 6 months ago

Yet, developer involvement seems to have been minimal.

leigh123linux commented 6 months ago

Spamming posts just means we unsubscribe from issues.

mdpenguin commented 6 months ago

I took some time to look into this today and am leaving my notes here in case someone else wants to try to take it further than I was able to.

It seems that Clutter is emitting leave events immediately after the enter event even without any mouse movement on the verticle axis (event.get_coords() values for y are identical on both events).

The problem with the bad leave event was causing the panel to stutter and jump (see #10869). The fix for that was to make the leave-event handler not update the panel visibility if the event coordinates are the same as the activation strip for the panel, which is why the immediate leave event is causing it to stay visible.

I suspect that this may be related to the way that some applets are loading because I can't replicate it on an empty panel. It's also harder to replicate it if the mouse pointer enters going over an applet. My best (moderately) informed guess is that either a tweener or the function to show the boxes is causing clutter to read the panel as no longer being under the mouse pointer while it's being animated.