Avoid event processing infinite loop
ClosedPublic

Authored by davidedmundson on Sep 24 2019, 9:48 PM.

Details

Summary

Kwin on X11 overrides QCoreApplication::notify to get low level system
event.

If something handled by the low level filtering ever calls postEvent we
would end up in a loop. This was found when forwarding a key event into
a QQuickWindow in a similar manner that mouse events are forwarded.

Fortunately there's a flag to separate generated and core events

Test Plan

No more infinite loop
Kwin X11 still works fine

Diff Detail

Repository
R108 KWin
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
davidedmundson created this revision.Sep 24 2019, 9:48 PM
Restricted Application added a project: KWin. · View Herald TranscriptSep 24 2019, 9:48 PM
Restricted Application added a subscriber: kwin. · View Herald Transcript
davidedmundson requested review of this revision.Sep 24 2019, 9:48 PM
zzag accepted this revision.Sep 25 2019, 9:33 AM
This revision is now accepted and ready to land.Sep 25 2019, 9:33 AM
This revision was automatically updated to reflect the committed changes.