| Summary: | [VLC] Playback panel is not aligned to the bottom in full screen mode | ||
|---|---|---|---|
| Product: | [Plasma] plasmashell | Reporter: | popov895 <popov895> |
| Component: | general | Assignee: | Plasma Bugs List <plasma-bugs-null> |
| Status: | RESOLVED DOWNSTREAM | ||
| Severity: | normal | CC: | kde, nate, popov895 |
| Priority: | NOR | ||
| Version First Reported In: | 5.24.5 | ||
| Target Milestone: | 1.0 | ||
| Platform: | Other | ||
| OS: | Linux | ||
| Latest Commit: | Version Fixed/Implemented In: | ||
| Sentry Crash Report: | |||
| Attachments: | Playback panel in full screen mode | ||
|
Description
popov895
2022-06-10 13:08:03 UTC
They may do nothing special for KDE, but they're clearly using a positioning API that takes into account the Plasma Panel position when determining placement. I am not aware of anything in Qt that would do this, since Plasma Panels are added in our code, not Qt. However it's possible I'm wrong and something in Qt does respect that due to the window flags we set on Plasma Panels. If so, they should use a different API for positioning the playback overlay that doesn't care about it. This needs investigation by VLC's developers. It's an app bug or a Qt bug, but it can't possibly be a KDE bug. The reason for this behavior is that the X11 doesn't allow to move a window outside the available screen geometry. Any idea how to get around this? The Plasma Panel isn't beyond the screen geometry, though. Qt won't see it that way at least. The Plasma Panel in NormalPanel mode sets the "strut" of itself (https://invent.kde.org/plasma/plasma-workspace/-/blob/master/shell/panelview.cpp#L1314), causing the VLC's playback panel can no longer be placed over the Plasma Panel. This is not a KDE bug, but an X11 (or KWin?) feature. But I have not yet found a solution how to get around this feature. Yes, the panel sets struts, but those are only take into account when KWin positions a window. If this is affecting VLC, is means the overlay is internally drawn as a separate window, which is probably not an ideal implementation. It should simply be drawn and positioned internally, by VLC itself. |