Bug 333512 - Qt4 based windows are difficult to resize
Summary: Qt4 based windows are difficult to resize
Status: RESOLVED FIXED
Alias: None
Product: kwin
Classification: Unclassified
Component: core (show other bugs)
Version: 4.95.0
Platform: unspecified Linux
: NOR normal (vote)
Target Milestone: ---
Assignee: KWin default assignee
URL: https://git.reviewboard.kde.org/r/117...
Keywords:
Depends on:
Blocks:
 
Reported: 2014-04-16 16:23 UTC by Martin Flöser
Modified: 2014-04-28 05:49 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
mgraesslin: ReviewRequest+


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Martin Flöser 2014-04-16 16:23:24 UTC
It looks like the synced resize is somehow broken with Qt4 windows. If one starts a resize on window border it's possible to resize a few pixels and then it's stuck.

Resizing Qt 5 windows or GTK windows (tested with Firefox) do not show the problem.
Comment 1 Thomas Lübking 2014-04-16 18:09:55 UTC
After 10 seconds or so a failsafe timer should kick in and stop XSYNC support - yesno?
Comment 2 Martin Flöser 2014-04-16 18:23:28 UTC
> After 10 seconds or so a failsafe timer should kick in and stop XSYNC
> support - yesno?

yes, after some time it's possible to resize the window (just tried and it 
looks like 10 sec)

But the window doesn't resize to the cursorPos when the timer fires.
Comment 3 Martin Flöser 2014-04-28 05:49:55 UTC
Git commit 7d302b90398beb917e5d017e33c9ebe419f894de by Martin Gräßlin.
Committed on 24/04/2014 at 09:00.
Pushed by graesslin into branch 'master'.

Keep timestamp of last syncRequest and update with xTime on each sync

The sync protocol with e.g. Qt 4 windows is broken if our app time is
older than the one of the last sync alarm event. Thus we keep a timestamp
in the syncRequest struct of the last sent sync request. If the timestamp
is newer than our xTime when sending the next request, we update the
xTime to ensure that we have a new timestamp again.
REVIEW: 117734

M  +6    -0    client.cpp
M  +1    -0    client.h

http://commits.kde.org/kwin/7d302b90398beb917e5d017e33c9ebe419f894de