You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The modifier key state changes are only reaching egui on the next key event. For example, if you press and hold Ctrl and don't press any other key, egui will not know about it. If you then release it, egui will now think it is being held down, until some future key event.
As I understand it, miniquad is passing through (from X11) key up/down events whose modifier state does not include the effect of that event itself. Next, egui-miniquad stores that pre-event modifier state and discards the key event since egui doesn't care about those. It then sends that incorrect state to egui for new frames and with events where miniquad doesn't include the modifier state (e.g. mouse events).
Test program (using egui-miniquad v0.12.0 and miniquad v0.3.13)
This similar issue in glfw has some informative discussion: glfw/glfw#1630
I've realized I can easily work around it by changing the keymods in my event handlers, but it's not a general solution since it doesn't properly account for keymaps and likely a bunch of other cases. It now seems that this will need changes in miniquad instead.
The modifier key state changes are only reaching
egui
on the next key event. For example, if you press and holdCtrl
and don't press any other key,egui
will not know about it. If you then release it,egui
will now think it is being held down, until some future key event.As I understand it,
miniquad
is passing through (fromX11
) key up/down events whose modifier state does not include the effect of that event itself. Next,egui-miniquad
stores that pre-event modifier state and discards the key event sinceegui
doesn't care about those. It then sends that incorrect state toegui
for new frames and with events whereminiquad
doesn't include the modifier state (e.g. mouse events).Test program (using egui-miniquad v0.12.0 and miniquad v0.3.13)
The text was updated successfully, but these errors were encountered: