Bug 468356 - With "Hide utility windows for inactive applications" unchecked, panel Visibility "Auto-Hide" setting does not work and panel is always visible
Summary: With "Hide utility windows for inactive applications" unchecked, panel Visibi...
Status: RESOLVED DUPLICATE of bug 402912
Alias: None
Product: plasmashell
Classification: Plasma
Component: Panel (show other bugs)
Version: 5.27.4
Platform: Arch Linux Linux
: NOR normal
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-04-10 15:52 UTC by Nick Gaulke
Modified: 2023-09-18 20:53 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
AUTOHIDING_PANEL_ISSUE FIX (68.42 KB, image/png)
2023-05-08 19:00 UTC, Alex A.D.
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Nick Gaulke 2023-04-10 15:52:32 UTC
SUMMARY
After updating to 5.27 [the weekend of it's release], the panels that hold my "Icon-Only Task Manager" and "System Tray" widgets no longer disappear when the panel is set to "Auto-Hide" visibility. Instead, when you move the mouse focus away from the panel, it stays visible, forcing itself above all other windows on the desktop, as though an open window is needing focus, even though no window actually does. It never animates to hide itself.

If you are slow to bring the mouse back over the panel nothing is clickable. However, once the mouse crosses the top third or so of the panel, it does the animation to display itself, as though it wasn't already visible, and then the icons become clickable.

My momentary solution is to switch visibility to "Windows can cover" which gives a similar behavior to what "Auto-hide" use to do, but not quite. It seems that the panel will remain visible, even when no windows are open. I believe that is intended for "Windows can cover", however I would much rather use "Auto-Hide" if it was't bugged. At least using "Windows can cover" provides the general behavior I need, properly hiding and showing when other windows are open.


STEPS TO REPRODUCE
1. Add panel to bottom of screen
2. Set panel visibility to "Auto-Hide"
3. Open an application (such as Chromium)

OBSERVED RESULT
The panel will still be visible above any open window.

EXPECTED RESULT
The panel should be hidden behind the window, and only visible when you mouse over the panel area.

SOFTWARE/OS VERSIONS
Operating System: Arch Linux 
KDE Plasma Version: 5.27.4
KDE Frameworks Version: 5.104.0
Qt Version: 5.15.8
Kernel Version: 6.2.10-arch1-1 (64-bit)
Graphics Platform: X11
Processors: 16 × Intel® Core™ i9-9900K CPU @ 3.60GHz
Memory: 31.3 GiB of RAM
Graphics Processor: NVIDIA GeForce GTX 1080

ADDITIONAL INFORMATION
I saw the bug report about this [https://bugs.kde.org/show_bug.cgi?id=466126] already, and the issue may also be related to this [https://bugs.kde.org/show_bug.cgi?id=467862].

I do have two monitors. However, while they are side by side, the panels are on the bottom of each screen. The displays are correctly displayed next to each other in System Settings and Nvidia X Server Settings, and the mouse/windows move correctly between the monitors. The arrangement looks like this:

____________________________________
|                  |               |
|     2560x1440    |   1920x1080   |
|     (primary)    |               |
|                  |===============|                  
|==================|

Where the ==== are the panels. The buggy behavior is present on both monitors. Rebooting does nothing and the issue is present from the moment I am logged in. I have tried moving the panels to both the top of the screen and the left/right most edges of the screens, and that does not seem to change anything (in other words, no matter what screen edge the panel is on, the issue remains).
Comment 1 Nick Gaulke 2023-04-10 15:54:57 UTC
Shucks, the ASCII for the monitor setup looked ok in the preview. Let's try that again:

______________________________________________
|                                        |                                 |
|           2560x1440         |       1920x1080       |
|            (primary)           |                                  |
|                                        |===============|                  
|==================|
Comment 2 Nick Gaulke 2023-04-10 16:30:51 UTC
I had initially asked around Reddit to see if anyone else was having this issue. Here is that thread: https://www.reddit.com/r/kde/comments/119h78f/kde_plasma_5271_panel_visibility_autohide_bugged/
Comment 3 Nate Graham 2023-04-10 19:48:49 UTC
This is strange. It probably sounds stupid, but can you confirm that the Panels are in fact set to auto-hide mode? Maybe they got reset along the way.

If so, does the issue still happen if you disconnect one screen and run with only one screen?

If so, does the issue reproduce in a clean user account?

If so, is there any chance you can remove or disable your NVIDIA GPU and run with the internal Intel GPU baked into your CPU and see if that fixes it?
Comment 4 Nick Gaulke 2023-04-10 20:31:32 UTC
Strange indeed! No question is a stupid question here. I can confirm this behavior only exists in "Auto-Hide" mode. I have been using "Windows can cover" since this issue cropped up, and it is immediately reproduced the moment I switch back to "Auto-Hide". Then switching to "Windows can cover" again, that mode works as expected.

While in "Auto-Hide" mode, the observed behavior is still present when using a single monitor. No matter which of the two monitors I unplug, the issue persists on the remaining monitor.

I will update again in an hour or two when I can take a moment to test your other questions (using a new user account, and using the iGPU).
Comment 5 Nick Gaulke 2023-04-10 23:25:52 UTC
Ok, I just had a chance to test a fresh user, and the issue is NOT present! Which definitely means something is wrong with my specific user profile.

I am not going to test on the iGPU, unless you still think it necessary, but I would assume some config in my user profile might need to be reset? I am not familiar with the KDE internals / configs, so I don't know what I could try testing next.

I should also mention, I have tried deleting the Panel entirely and rebuilding it, but even the new Panel is still bugged.
Comment 6 Nate Graham 2023-04-11 17:12:08 UTC
Ok, if it doesn't reproduce with a new user account it's definitely caused by some combination of settings in your user account, so there's no need to test disabling the GPU.

Do you have any non-default:
- Window rules
- KWin effects
- KWin scripts
- Widgets
Comment 7 Nick Gaulke 2023-04-11 17:29:39 UTC
I have two non-default Windows Rules

~~First~~
Description: xst
Window class: Exact match st-256color
Match whole window class: No
Window types: All Selected
Appearance & Fixes: No titlebar and frame, apply initially, Yes

~~Second~~
Description: vscode
Window class: Exact match code
Match whole window class: No
Window types: All Selected
Appearance & Fixes: Active opacity, Force, 90% and Inactive opacity, Force, 90%

I do not have any additional KWin Effects (I assume this to mean Desktop Effects in the Settings menu) installed. However, I do believe I have ticked some non-default values. Clicking "Defaults", without applying, looks like it wants to change Background Contrast and Blur, and that is it.

I have no KWin scripts added, or even selected for that matter.

I do not have any non-default Widgets installed. Both Panels hold:
Application menu | Task Manager | Empty Space | System Tray | Digital Clock | Peek at Desktop
Comment 8 Nate Graham 2023-04-13 15:48:46 UTC
Thanks. If you disable or delete those window rules and reboot, does the problem go away?
Comment 9 Nick Gaulke 2023-04-14 03:54:58 UTC
I took these steps:

1) Exported the Window Rules
2) Deleted both of the rules
3) Set the Visibility for both Panels to "Auto Hide"

I tested both Panels and the bug was still present.

4) Reboot

After logging back in after rebooting, the bug was still present. I double checked the Visibility of both panels to ensure they were still set to "Auto Hide", and they were.

I have since imported the Window Rules and switched the panels back to "Windows Can Cover".
Comment 10 Nate Graham 2023-04-14 18:05:41 UTC
Thanks for the info. Unfortunately I'm out of ideas regarding what configuration settings could be causing this.

Any ideas, Niccolò?
Comment 11 Alex A.D. 2023-05-08 19:00:47 UTC
Created attachment 158779 [details]
AUTOHIDING_PANEL_ISSUE FIX

I think I have narrowed down the issue source. It's in a config option (see attached file). I've set up checkmark back and panels started to auto-hide as usual.

I also have done the following (FYI):
1. $ kate ~/.config/plasma-org.kde.plasma.desktop-appletsrc
2. Set the applet config `PreloadWeight=` to `5`, e.g. 
   [Containments][2][Applets][228][Configuration]
   PreloadWeight=5

In order to figure out which applet to set up value to, do the following:
1. $ kate ~/.config/plasma-org.kde.plasma.desktop-appletsrc
2.  Open panel settings, set visibility to another value
3. Focuse Kate and hit "show the difference" button on the floating popup
4. Look for ` [Containments][2][Applets][NNN][Configuration]` where NNN is number
5. Copy, reload file and find the this string
6 Now set the `PreloadWeight=5`

I'm not sure that this guide has affected settings though. The previous value of `PreloadWeight=` in my case was 35.

Best.
Comment 12 Nate Graham 2023-05-17 15:04:33 UTC
Can confirm that causes it. Nice find.

Nick, did you also have that setting turned off?
Comment 13 Nick Gaulke 2023-05-17 16:05:33 UTC
(In reply to Nate Graham from comment #12)
> Can confirm that causes it. Nice find.
> 
> Nick, did you also have that setting turned off?

Unfortunately, this setting was already checked for me. I have taken the following steps to test this but still receive the same behavior.

1. I switched my primary monitor panel to Auto-Hide from Windows Can Cover
2. I found the setting in the attached image, see it was already checked, and tested the panel. Auto-Hide still does not work as expected.
3. I unchecked the setting, clicked Apply, and tested again, no change in observed behavior.
4. I checked the setting again, clicked Apply, and tested, still no change.
5. I have put the panel back to Windows Can Cover

I also tried following the steps for finding the potentially offending applet, but noticed the ~/.config/plasma-org.kde.plasma.desktop-appletsrc does not change. I took the following steps:

1. $ code ~/.config/plasma-org.kde.plasma.desktop-appletsrc
2.  Open panel settings, set visibility to another value
3. Focus Code and check Timeline view
4. Nothing changed
5. $ ls -l ~/.config/plasma-org.kde.plasma.desktop-appletsrc
6. The file timestamp did not update.
Comment 14 Alex A.D. 2023-05-17 17:29:31 UTC
>I also tried following the steps for finding the potentially offending applet
>but noticed the ~/.config/plasma-org.kde.plasma.desktop-appletsrc does not change. 

Weird. Have you found which file is changed when settings are changed via config panel in the ~/.config/plasma-org.kde.* path ? There should be one.
Comment 15 Nick Gaulke 2023-05-17 18:34:18 UTC
(In reply to Alex A.D. from comment #14)
> >I also tried following the steps for finding the potentially offending applet
> >but noticed the ~/.config/plasma-org.kde.plasma.desktop-appletsrc does not change. 
> 
> Weird. Have you found which file is changed when settings are changed via
> config panel in the ~/.config/plasma-org.kde.* path ? There should be one.

I only have a single file that fits ~/.config/plasma-org.kde.* and that is ~/.config/plasma-org.kde.plasma.desktop-appletsrc

Taking a broader look at ~/.config/plasma* I notice that ~/.config/plasmashellrc is updated. Using the Timeline feature in VSCode again, I can see only a single line changes when changing visibility. Going from Windows Can Cover to Auto-Hide:

> [PlasmaViews][Panel 1]
> panelVisibility=2

Becomes

> [PlasmaViews][Panel 1]
> panelVisibility=1

Checking what might change when un-checking and re-checking the "Special windows" setting (per the image), I do not observe a change in any of the files matching ~/.config/plasma*
Comment 16 Nick Gaulke 2023-07-09 16:39:00 UTC
Hey all, its been some time and this is still an issue for me. However! Just today I started messing around with Wayland, and Auto-Hide works perfectly fine under Wayland, and the issue immediately returns when running under X11. Perhaps that might help in understanding what is happening here, and how I might resolve it in X11.

That said, I may end up switching to using Wayland as my default instead of X11.
Comment 17 Alex A.D. 2023-07-11 08:24:34 UTC
> That said, I may end up switching to using Wayland as my default instead of

Nice. Let's see if devs are able to fix this issue in next release. It's pretty annoying that these kind of bugs are introduced. I'm also convinced that the latest update brought only regression and dropped performance. Animatio produced by [Win+W] for desktop preview for instances is insanely slow.
Comment 18 TCX0Lt0X 2023-08-29 18:42:46 UTC
I was able to resolve this issue for myself by setting 'Keep window thumbnails' in the Compositor settings under Display and Monitor to a value other than 'Always' (Only for Shown Windows / Never).
Comment 19 Nate Graham 2023-09-18 20:53:36 UTC

*** This bug has been marked as a duplicate of bug 402912 ***