Avoid jumpy UI in Kicker Dialogs
AbandonedPublic

Authored by davidedmundson on Jan 30 2017, 12:52 PM.

Details

Reviewers
hein
Group Reviewers
Plasma
Summary

Under X11 we would see move events as two distinct jumpy frames.
The Dialog would move, and then resize.

This patch defers the move event until the same xcb flush as when we
update the NET_WM_SYNC_COUNTER with the new window. This means we move
and do the resize in the same event.

Test Plan

Ran under kwin, all buttery smooth
Ran under openbox, no better, but also no worse
Menu still appeared in the same place, and would still be restricted to fit on screen.

Diff Detail

Repository
R119 Plasma Desktop
Branch
master
Lint
No Linters Available
Unit
No Unit Test Coverage
davidedmundson retitled this revision from to Avoid jumpy UI in Kicker Dialogs.
davidedmundson updated this object.
davidedmundson edited the test plan for this revision. (Show Details)
davidedmundson added a reviewer: Plasma.
Restricted Application added a project: Plasma. · View Herald TranscriptJan 30 2017, 12:52 PM
Restricted Application added a subscriber: plasma-devel. · View Herald Transcript
hein accepted this revision.Jan 30 2017, 1:18 PM
hein added a reviewer: hein.
This revision is now accepted and ready to land.Jan 30 2017, 1:18 PM
graesslin added inline comments.
applets/kicker/plugin/submenu.cpp
33

why is it changed to Dock? A Dock is not a menu and this could have side-effects in how KWin manages the window.

hein added a comment.Jan 31 2017, 12:53 AM

For posterity: While the code looked OK to me, as talked about on IRC, the patch doesn't work for me. It actually makes things worse for now. Without the patch I get the "one bad frame during dialog resize" glitch while roving through the root level menu intermittently, with the patch almost always.

davidedmundson abandoned this revision.Aug 30 2017, 8:33 AM