diff --git a/src/main_wayland.cpp b/src/main_wayland.cpp index 000178c59e..66e4cd8369 100644 --- a/src/main_wayland.cpp +++ b/src/main_wayland.cpp @@ -285,6 +285,11 @@ int main(int argc, char *argv[]) // enforce our internal qpa plugin, unfortunately command line switch has precedence setenv("QT_QPA_PLATFORM", "wayland-org.kde.kwin.qpa", true); + // The shader (currently) causes a blocking disk flush on load and save of every QQuickWindow + // Because it's on load, it will happen every time not just occasionally + // The gains are minimal, disable until it's fixed + QCoreApplication::setAttribute(Qt::AA_DisableShaderDiskCache); + KWin::ApplicationWayland a(argc, argv); // reset QT_QPA_PLATFORM so we don't propagate it to our children (e.g. apps launched from the overview effect) diff --git a/src/main_x11.cpp b/src/main_x11.cpp index 3506eb07ed..b3729c8704 100644 --- a/src/main_x11.cpp +++ b/src/main_x11.cpp @@ -400,6 +400,11 @@ int main(int argc, char *argv[]) // For sharing thumbnails between our scene graph and qtquick. QCoreApplication::setAttribute(Qt::AA_ShareOpenGLContexts); + // The shader (currently) causes a blocking disk flush on load and save of every QQuickWindow + // Because it's on load, it will happen every time not just occasionally + // The gains are minimal, disable until it's fixed + QCoreApplication::setAttribute(Qt::AA_DisableShaderDiskCache); + QSurfaceFormat format = QSurfaceFormat::defaultFormat(); // shared opengl contexts must have the same reset notification policy format.setOptions(QSurfaceFormat::ResetNotification);