Bug 516267 - [6.0.0-beta1] Brush outline lags a lot under X11 (Xwayland), but not under native wayland.
Summary: [6.0.0-beta1] Brush outline lags a lot under X11 (Xwayland), but not under na...
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: General (other bugs)
Version First Reported In: 6.0.0-beta1
Platform: Appimage Linux
: NOR normal
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2026-02-19 02:22 UTC by Protoniv
Modified: 2026-03-04 14:17 UTC (History)
1 user (show)

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


Attachments
Brush outline lag under X11 / Xwayland (36.88 KB, video/webm)
2026-02-19 02:22 UTC, Protoniv
Details
disable vsync / native wayland mode without brush outline lag (36.23 KB, video/webm)
2026-02-19 02:23 UTC, Protoniv
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Protoniv 2026-02-19 02:22:40 UTC
Created attachment 189784 [details]
Brush outline lag under X11 / Xwayland

SUMMARY
Krita 6.0 Brush outline lags a lot under X11 (Xwayland),  the issue does not appear under 5.3
Currently two workarounds:
1) `vblank_mode=0` to force disable vsync
2) `QT_QPA_PLATFORM=wayland` to launch with native wayland mode.


SOFTWARE/OS VERSIONS
Operating System: Debian GNU/Linux 13
KDE Plasma Version: 6.5.4
KDE Frameworks Version: 6.20.0
Qt Version: 6.9.2
Kernel Version: 6.18.9+deb14-amd64 (64-bit)
Graphics Platform: Wayland
Graphics Processor : Intel UHD 770
Comment 1 Protoniv 2026-02-19 02:23:47 UTC
Created attachment 189785 [details]
disable vsync / native wayland mode without brush outline lag
Comment 2 Dmitry Kazakov 2026-02-19 08:44:48 UTC
Hi, Protoniv!

Could you please tell, how many displays you have? Do they have the same framerate?
Comment 3 Dmitry Kazakov 2026-02-19 08:55:55 UTC
Just a side note: 

The bug might be related to bug 515571, which has the same effects, but is also related to a multi-monitor setup.
Comment 5 Protoniv 2026-02-19 11:59:04 UTC
(In reply to Dmitry Kazakov from comment #2)
> Hi, Protoniv!
> 
> Could you please tell, how many displays you have? Do they have the same
> framerate?

Hi, Dmitry!

Have tested on 2 PCs, each with one monitor only:

1) 1920x1080, 60hz, single monitor, AMD radeon 780M, Mesa driver
2) 1920x1200, 60hz, single monitor, Intel igpu UHD770, Mesa driver

The lag only appears under **krita 6.0 + X11 (Xwayland)** combo, does not happened to me with krita 5.3, or 6.0+Wayland

Related krita-artist post:
https://krita-artists.org/t/krita-5-3-6-0-beta-1-released/165015/57
Comment 6 Dmitry Kazakov 2026-02-20 07:21:30 UTC
Hi, Protoniv!

What compositor do you use KWin or something else? 

PS:
I can reproduce the issue on KWin, and I'm just gathering info for the proper fix
Comment 7 Protoniv 2026-02-20 09:28:01 UTC
(In reply to Dmitry Kazakov from comment #6)
> Hi, Protoniv!
> 
> What compositor do you use KWin or something else? 
> 

Hi, Dmitry!

I use KWin on all tested device.
Comment 8 Dmitry Kazakov 2026-02-23 12:27:48 UTC
Git commit b9be7b8b2e0dde06897c371520f6be3561dbdf61 by Dmitry Kazakov.
Committed on 23/02/2026 at 12:27.
Pushed by dkazakov into branch 'transition.now/qt6'.

[qt][xcb] Implement QT_GLX_SWAP_INTERVAL_SYNC_WORKAROUND
Related: bug 515571

M  +1    -1    ext_qt/CMakeLists.txt

https://invent.kde.org/packaging/krita-deps-management/-/commit/b9be7b8b2e0dde06897c371520f6be3561dbdf61
Comment 9 Dmitry Kazakov 2026-02-23 22:06:06 UTC
Git commit bd6975bd3843faa42347744ac33f1bc1ab453551 by Dmitry Kazakov.
Committed on 23/02/2026 at 22:05.
Pushed by dkazakov into branch 'master'.

Implement a switch between EGL and GLX API on X11/XWayland

This is an alternative version of the workaround for the GLX bug
in Qt6. It allows the user to switch the openGL provider API from
GLX to EGL, hence avoid this bug. This might be necessary for
Krita builds provided by Linux distributions.

M  +9    -1    krita/main.cc
M  +8    -0    libs/ui/CMakeLists.txt
M  +35   -0    libs/ui/dialogs/kis_dlg_preferences.cc
M  +89   -78   libs/ui/forms/wdgdisplaysettings.ui
M  +19   -0    libs/ui/kis_config.cc
M  +4    -0    libs/ui/kis_config.h
M  +17   -0    libs/ui/opengl/KisOpenGLModeProber.cpp
M  +5    -0    libs/ui/opengl/KisOpenGLModeProber.h
M  +6    -0    libs/ui/opengl/kis_opengl.cpp
M  +7    -0    libs/ui/opengl/kis_opengl.h

https://invent.kde.org/graphics/krita/-/commit/bd6975bd3843faa42347744ac33f1bc1ab453551
Comment 10 Bug Janitor Service 2026-03-03 16:42:15 UTC
A possibly relevant merge request was started @ https://invent.kde.org/graphics/krita/-/merge_requests/2671
Comment 11 Dmitry Kazakov 2026-03-04 07:49:52 UTC
Git commit 70c4ccf8fa63f8ec4d0a7a5b938525faf6485048 by Dmitry Kazakov.
Committed on 04/03/2026 at 07:48.
Pushed by dkazakov into branch 'krita/6.0'.

Implement a switch between EGL and GLX API on X11/XWayland

This is an alternative version of the workaround for the GLX bug
in Qt6. It allows the user to switch the openGL provider API from
GLX to EGL, hence avoid this bug. This might be necessary for
Krita builds provided by Linux distributions.

M  +9    -1    krita/main.cc
M  +8    -0    libs/ui/CMakeLists.txt
M  +35   -0    libs/ui/dialogs/kis_dlg_preferences.cc
M  +89   -78   libs/ui/forms/wdgdisplaysettings.ui
M  +19   -0    libs/ui/kis_config.cc
M  +4    -0    libs/ui/kis_config.h
M  +17   -0    libs/ui/opengl/KisOpenGLModeProber.cpp
M  +5    -0    libs/ui/opengl/KisOpenGLModeProber.h
M  +6    -0    libs/ui/opengl/kis_opengl.cpp
M  +7    -0    libs/ui/opengl/kis_opengl.h

https://invent.kde.org/graphics/krita/-/commit/70c4ccf8fa63f8ec4d0a7a5b938525faf6485048
Comment 12 Dmitry Kazakov 2026-03-04 14:17:46 UTC
Git commit cf2458569ffee175499fc9700521f5d1e9782220 by Dmitry Kazakov.
Committed on 04/03/2026 at 14:17.
Pushed by dkazakov into branch 'release/6.0.0'.

Implement a switch between EGL and GLX API on X11/XWayland

This is an alternative version of the workaround for the GLX bug
in Qt6. It allows the user to switch the openGL provider API from
GLX to EGL, hence avoid this bug. This might be necessary for
Krita builds provided by Linux distributions.

M  +9    -1    krita/main.cc
M  +8    -0    libs/ui/CMakeLists.txt
M  +35   -0    libs/ui/dialogs/kis_dlg_preferences.cc
M  +89   -78   libs/ui/forms/wdgdisplaysettings.ui
M  +19   -0    libs/ui/kis_config.cc
M  +4    -0    libs/ui/kis_config.h
M  +17   -0    libs/ui/opengl/KisOpenGLModeProber.cpp
M  +5    -0    libs/ui/opengl/KisOpenGLModeProber.h
M  +6    -0    libs/ui/opengl/kis_opengl.cpp
M  +7    -0    libs/ui/opengl/kis_opengl.h

https://invent.kde.org/graphics/krita/-/commit/cf2458569ffee175499fc9700521f5d1e9782220