Bug 506574 - With multiple virtual desktops and NVIDIA GPU, panels and widgets in "fit content" mode are squished until updated
Summary: With multiple virtual desktops and NVIDIA GPU, panels and widgets in "fit con...
Status: RESOLVED UPSTREAM
Alias: None
Product: plasmashell
Classification: Plasma
Component: Panel (other bugs)
Version First Reported In: 6.4.2
Platform: Arch Linux Linux
: NOR normal
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2025-07-04 09:01 UTC by kzn.hartwig1
Modified: 2025-08-13 22:58 UTC (History)
3 users (show)

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


Attachments
Widget frozen and squished in panel (59.76 KB, image/png)
2025-07-04 09:01 UTC, kzn.hartwig1
Details

Note You need to log in before you can comment on or make changes to this bug.
Description kzn.hartwig1 2025-07-04 09:01:35 UTC
Created attachment 182935 [details]
Widget frozen and squished in panel

SUMMARY

Occassionally (but it's become more common since the update to 6.4) panels, the widgets inside a panel freeze before they've correctly filled the width. This happens with panels that have been set to "Fit content". The screenshot shows it happening with the Icons Only Task Manager, but it's happened with other panels and widgets as well: the Digital Clock, and then on an unofficial widget (Kara, a virtual desktop indicator). Thinking it was caused by Panel Colorizer, I removed that, but it happens even with that removed.

To get the squished appearance to stop, the widget needs to be modified or interacted with in some way. So, the Icons Only Task Manager needs to be hovered over (to get app previews, which triggers a redraw), or a desktop needs to be clicked on inside Kara.

STEPS TO REPRODUCE

Unfortunately, it isn't always reproducible. It needs to be caused by something that causes a widget to resize. Some examples are
- Opening a new app, so that the Icons Only Task Manager needs to resize
- Adding a new virtual desktop, so that Kara needs to resize
- Changing the format of the date shown in the Digital Clock
- Switching between activities that have different apps pinned to the Icons Only Task Manager
- Pinning a new app to the Icons Only Task Manager

The easiest way I've got it to appear is by pinning a new app to the Icons Only Task Manager, and then switching activities to another one, then back, and removing the newly pinned one. This sometimes shows the "squished" appearance on the panel it was removed from, but other times, it will be other panels that are squished. It also sometimes happens the other way - the widget has extra space with nothing in it.

OBSERVED RESULT

The widget inside the panel is "squished", like it stopped halfway through a resize animation. Only interacting with the widget causes it to recalculate the correct size.

EXPECTED RESULT

The widget and panel should resize correctly, with the widget filling the panel. Rereading what I've written, it's possible this might be a QML Binding loop on the width? Because the panel expects to get the width from the widget, and the widget expects to get the width from the panel?

SOFTWARE/OS VERSIONS

Operating System: EndeavourOS 
KDE Plasma Version: 6.4.2
KDE Frameworks Version: 6.15.0
Qt Version: 6.9.1
Kernel Version: 6.15.4-arch2-1 (64-bit)
Graphics Platform: Wayland
Processors: 12 × AMD Ryzen 5 9600X 6-Core Processor
Memory: 16 GiB of RAM (14,7 GiB usable)
Graphics Processor 1: NVIDIA GeForce GTX 1650 SUPER
Graphics Processor 2: AMD Radeon Graphics
Manufacturer: Gigabyte Technology Co., Ltd.
Product Name: B650M GAMING X AX 

ADDITIONAL INFORMATION

This happened rarely when I started using KDE Plasma (when it was 6.3), perhaps once a week. Since updating to 6.4, this happens multiple times a day. It's possible that it is being caused by the GPU (with NVIDIA, that can never be ruled out). Unfortunately, I don't know the exact logs to look for, else I'd post those.
Comment 1 kzn.hartwig1 2025-07-04 09:46:16 UTC
I've been able to reproduce it more often now.

STEPS TO REPRODUCE:

1. Add an Icons Only Task Manager as the only widget to a panel. Make this panel resize to content.
2. Ensure that all panels are set to fit to content, instead of fill width. This does actually make a difference.
3. Make sure you have at least two virtual desktops.
4. Open an application in the first virtual desktop, that is _not_ one of the pinned applications. This means the panel should increase in size.
5. Navigate to another virtual desktop, that does not have that application open.
6. The widget should be squished.

I was able to reproduce this on my main account, and on another user account, and it happened pretty much consistently.

To note: panels and widgets also display this wrong resizing behaviour on login. I'm needing to constantly hover over the panel to correct 2 of them, and then switch virtual desktops to correct the third. This gets very frustrating very quickly.
Comment 2 Nate Graham 2025-08-13 22:58:23 UTC
This is unfortunately an NVIDIA GPU driver issue. Please report this issue to the NVIDIA folks, either by sending an email to linux-bugs@nvidia.com or making a post at https://forums.developer.nvidia.com/c/gpu-graphics/linux. It would be helpful to the NVIDIA developers if you could run `nvidia-bug-report.sh` and attach the resulting file in your report. Thanks!