Skip to content

Conversation

@koalefant
Copy link
Contributor

This addresses cursor flickering in egui-miniquad-0.16.0.
See not-fl3/egui-miniquad#47

NOTE: This changes behavior of set_cursor(), it won't show the hidden the cursor on X11 and Wayland anymore. This is now consistent with Windows.

The problem is that neither Wayland nor X11 backend tracks cursor visibility separately from the icon. Every time the cursor is shown it is being reset to default cursor. And whenever cursor is changed it is being shown. This is different from Windows, where SetCursor() is independent from ShowCursor().

To address I track these states explicitly in native::linux_wayland::run() and X11Display.

Test steps:

  • Run X11 session
  • Run demo example from egui-miniquad-0.16.0
  • Try resizing an egui window and observe cursor icon not flickering anymore.
  • Run Wayland session in Plasma 6.5.3
  • Modify demo example to run on Wayland (default is X11)
  • Try resizing an egui window and observe cursor icon not flickering anymore.

…s used with a non-default cursor.

This addresses cursor flickering in egui-miniquad-0.16.0.

NOTE: This changes behavior of set_cursor(), it won't show reveal a hidden cursor on X11 and Wayland anymore. But the
new behavior is consistent with Windows.

The problem is that neither Wayland nor X11 backend tracks cusor visibility separately from the icon. Every time the
cursor is shown it is being reset to default cursor. And whenever cursor is changed it is being shown. This is different
from Windows, where SetCursor() is independent from ShowCursor().

To address I track these states explicitly in native::linux_wayland::run() and X11Display.

Test steps:
* Run X11 session
* Run demo example from egui-miniquad-0.16.0
* Try resizing an egui window and observe cursor not flickering anymore.
* Run Wayland session in Plasma 6.5.3
* Modify conf of demo to run on Wayland (default is X11)
* Try resizing an egui window and observe cursor not flickering anymore.
@not-fl3
Copy link
Owner

not-fl3 commented Jan 1, 2026

Thanks for PR!

@not-fl3 not-fl3 merged commit c9cef83 into not-fl3:master Jan 1, 2026
11 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants