Commit 56f6252e authored by Tor Arne Vestbø's avatar Tor Arne Vestbø
Browse files

xcb: compare to previous state when sending geometry and expose events


By calculating the previous geometry and passing it on when calling
handleGeometryChange we can detect cases where setGeometry() on a
QWindow didn't result in the expected geometry. The new (actual)
geometry is delivered as a resize event.

This also allows us to only send expose events when the size of the
window has actually changed (instead of also sending when the window
has just moved).

Due to the async delivery of geometry changes on the xcb platform we
need to avoid using QWindowPrivate's cached state of the geometry, as
that will result in duplicate resize events when events are not flushed
in between two system resize events coming in with the same size.

Change-Id: I3d4abe4a1095dd96e6e354288d5b646c623c30dd
Reviewed-by: default avatarTor Arne Vestbø <tor.arne.vestbo@theqtcompany.com>
Showing with 27 additions and 6 deletions
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment