Bug 380524

Summary: Downloaded window decoration are broken with Nvidia drivers
Product: [Plasma] kwin Reporter: Jesse <jessenzr>
Component: auroraeAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED FIXED    
Severity: normal CC: pavel223344, rikmills
Priority: NOR    
Version: 5.10.0   
Target Milestone: ---   
Platform: Arch Linux   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: downloaded themes are listed like that

Description Jesse 2017-06-03 22:41:44 UTC
Created attachment 105870 [details]
downloaded themes are listed like that

Custom window decorations are broken. Only the default ones -- Plasma, Plastik and Oxygen -- work. The downloaded themes are listed with glitches in system settings (see attachment). And, when applying one of the downloaded theme, the window decoration disappears. This issue seems to happen only with Nvidia cards with proprietary drivers (not sure if it works with nouveau).

How to reproduce:
1. Install Nvidia proprietary drivers
2. Open system settings and download a custom window decoration theme (like Arc KDE, for example)
3. The downloaded theme is listed with glitches (without the window buttons, or a black rectangle, etc, depending on the theme)
4. Try applying the downloaded theme and the window decoration disappears


I tried looking at the kwin output in the terminal when switching to a broken theme, but I don't think it's relevant:
kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-effect.desktop, tried ("/home/jesse/.local/share", "/usr/local/share", "/usr/share")
kf5.kcoreaddons.desktopparser: Could not locate service type file kservicetypes5/kwin-effect.desktop, tried ("/home/jesse/.local/share", "/usr/local/share", "/usr/share")
Comment 1 Rik Mills 2017-06-03 22:56:05 UTC
Had the same issue in Kubuntu 5.10 packages with a Nvidia box.

Reverting:

 https://cgit.kde.org/kwin.git/commit/?h=Plasma/5.10&id=bfbcd0197181657d5dfac953ad77dd3de2ee7e92 

seems to at least return the decorations to a working state (I don't use hidpi on that machine).
Comment 2 Jesse 2017-06-03 23:39:21 UTC
I tried building kwin previous to that commit Rik mentioned, and indeed, it brings back the decoration and fixes the glitched listing in system settings.
Comment 3 pavel223344 2017-06-04 08:33:22 UTC
I can confirm this bug on KDE Neon User edition with 5.10. I have a Nvidia 960GTX card and proprietary driver 375.66.
Comment 4 David Edmundson 2017-06-05 09:50:40 UTC
Git commit 5091feb8f60304a4a0cbb15a85f21f3d28b2e85f by David Edmundson.
Committed on 05/06/2017 at 09:50.
Pushed by davidedmundson into branch 'Plasma/5.10'.

Fix Aurorae decorations with non integer DPI

Summary:
As noted by Thomas L we're casting the scaleFactor to an int far too
early, which in the worst case means we end up with Aurorare themes not
rendering.

This moves the rounding to where it's used per border.

Test Plan:
Forced Xft.DPI to 95 with xrdb. Confirmed that it was broken
Applied this patch. Got decoration again

Reviewers: #plasma, mart

Reviewed By: #plasma, mart

Subscribers: mart, rikmills, plasma-devel, kwin, #kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D6099

M  +38   -38   plugins/kdecorations/aurorae/src/lib/themeconfig.cpp

https://commits.kde.org/kwin/5091feb8f60304a4a0cbb15a85f21f3d28b2e85f
Comment 5 Christoph Feck 2017-06-09 20:25:50 UTC
The commit has been reverted in master. Reopening until it is applied again.
Comment 6 Christoph Feck 2017-06-12 20:26:28 UTC
Fix from 5.10 branch was merged to master again.