Bug 487664 - [BUG] Panel being drawn over desktop folder labels
Summary: [BUG] Panel being drawn over desktop folder labels
Status: CLOSED NOT A BUG
Alias: None
Product: plasmashell
Classification: Plasma
Component: Desktop icons & Folder View widget (other bugs)
Version First Reported In: master
Platform: Other Linux
: NOR normal
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-05-28 02:15 UTC by jman12316
Modified: 2024-05-30 20:26 UTC (History)
3 users (show)

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


Attachments
docks being drawn over desktop folder labels (440.00 KB, image/png)
2024-05-28 02:15 UTC, jman12316
Details

Note You need to log in before you can comment on or make changes to this bug.
Description jman12316 2024-05-28 02:15:30 UTC
Created attachment 169900 [details]
docks being drawn over desktop folder labels

Attached is an image of tint2 being drawn over desktop folder labels. This happens with any non KDE panel/dock. 

The problem, which I tried to trace, is that the FolderView.qml (which I think lays out folders and desktop shortcuts) is not taking _NET_WM_PARTIAL_STRUT, and _NET_WM_STRUT into account. https://specifications.freedesktop.org/wm-spec/1.3/ar01s05.html

Specifically, it seems that when using a panel which is not the default KDE panel, gridView.width and gridView.height are wrong too large as they don't negate the space that is taken up by the dock.

I tried figuring out how it was that the default KDE panel seemingly correctly negates the area it takes up from gridView.height, but it's written in qml and I'm not one of the 12 people who write qml.

Anyways, hopefully that's enough info, and hopefully that data (the actual geometry of the screen is accessible and can be fixed).

BTW: It seems that the correct gridView.width and height would be the: _NET_WORKAREA property which is exposed already. https://specifications.freedesktop.org/wm-spec/1.3/ar01s03.html

Thanks, and Good luck.
Comment 1 David Edmundson 2024-05-28 08:51:29 UTC
We have our own panel avoidance, rather than going through _NET_WORKAREA as that is not screen specific and therefore not usable enough.

This is a third party product breaking things, sorry.
Maybe on wayand we can do something better.
Comment 2 jman12316 2024-05-28 21:35:06 UTC
(In reply to David Edmundson from comment #1)
> We have our own panel avoidance, rather than going through _NET_WORKAREA as
> that is not screen specific and therefore not usable enough.
> 
> This is a third party product breaking things, sorry.
> Maybe on wayand we can do something better.

_NET_WORKAREA was just a guess. But KDE already has correct per screen information as when a window is maximized, it will not go into 'third-party' docks area. Therefore, the correct screen data already exists somewhere. This is not a problem specific with tint2. I don't use tint2, I only used it as it's common to have on different distro's. Every panel that is attempted to be used will have this problem.

Please re-open as a bug withing KDE as this is definitely not  a "a third party product breaking things". The code that lays out folders on the desktop is simply wrong. I understand this is annoying and somewhat hard to fix. If you need help. Let me know.
Comment 3 David Edmundson 2024-05-30 12:49:07 UTC
The window manager does, it's complicated logic that we're not duplicating.
Comment 4 jman12316 2024-05-30 20:26:41 UTC
(In reply to David Edmundson from comment #3)
> The window manager does, it's complicated logic that we're not duplicating.

I tried hard-coding the correct height for myself but it didn't seem to work. Can you direct me to where the KDE panel gets avoided so that I can piggyback off of that code and fix it for myself?