When redrawing the folder view on the desktop, all the icon text labels get white and corrupted. This happens when resuming from sleep, for example, or something else that invalidates the buffer (I think). Attached is a screenshot. This happens with nvidia-drivers-370.28. Reproducible: Always
Created attachment 101586 [details] Symptom
Please don't randomly assign bugs to me.
Apologies.
Don't see how this can be in our code.
Alright, I posted it over at the NVIDIA form, then: https://devtalk.nvidia.com/default/topic/971972/linux/icon-text-label-corruption-with-kde-plasma-5-desktop-folder-view/
Looks like you need to use GL_NV_robustness_video_memory_purge. From an NVIDIA developer: "This is probably the result of a quirk of the way the nvidia driver manages memory for "volatile" data like framebuffer objects. The contents of FBOs are not preserved across VT switches, which includes suspend and resume. Recent drivers support an extension called GL_NV_robustness_video_memory_purge that applications can use to be notified when they need to re-render FBO contents."
https://www.opengl.org/registry/specs/NV/robustness_video_memory_purge.txt
The relevant rendering code is in Qt, not KDE.
Okay then. Reported to Qt: https://bugreports.qt.io/browse/QTBUG-56610
*** Bug 386093 has been marked as a duplicate of this bug. ***
I used to restart plasmashell, but now i'm using the following to force an update of folderviews and taskmanager (may leave other widgets corrupted if you use them): #!/bin/bash #This is for folderview: qdbus org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.evaluateScript "$(cat ./folderview.re-align.js)" #This is for taskmanager: qdbus org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.toggleDashboard qdbus org.kde.plasmashell /PlasmaShell org.kde.PlasmaShell.toggleDashboard #-------------- folderview.re-align.js is the following: for (i=0;i<activityIds.length;i++) {{ desktop=desktopById(activityIds[i]) for (Wid=0;Wid<desktop.widgetIds.length;Wid++) {{ WidgetID=desktop.widgetIds[Wid] MyWidget=desktop.widgetById(WidgetID) if ( MyWidget.type == "org.kde.plasma.folder") { old=MyWidget.readConfig("alignment") if (old == 0) { MyWidget.writeConfig("alignment",1) MyWidget.reloadConfig() } else { MyWidget.writeConfig("alignment",0) MyWidget.reloadConfig() } MyWidget.writeConfig("alignment",old) MyWidget.reloadConfig() } }} }}
Same Here in Opensuse Tumbleewed. System: Nvidia 390.67 QT 5.11.1 KDE Frameworks 5.47 Plasma 5.13.2 Kernel 4.17.4
*** This bug has been marked as a duplicate of bug 364766 ***