Merge lp://qastaging/~vanvugt/compiz/fix-reredirect-flicker into lp://qastaging/compiz/0.9.8

Proposed by Daniel van Vugt
Status: Merged
Approved by: Sam Spilsbury
Approved revision: 3381
Merged at revision: 3381
Proposed branch: lp://qastaging/~vanvugt/compiz/fix-reredirect-flicker
Merge into: lp://qastaging/compiz/0.9.8
Diff against target: 94 lines (+26/-0)
4 files modified
plugins/composite/include/composite/composite.h (+1/-0)
plugins/composite/src/privates.h (+1/-0)
plugins/composite/src/screen.cpp (+13/-0)
plugins/opengl/src/screen.cpp (+11/-0)
To merge this branch: bzr merge lp://qastaging/~vanvugt/compiz/fix-reredirect-flicker
Reviewer Review Type Date Requested Status
Sam Spilsbury Approve
jenkins (community) continuous-integration Approve
Review via email: mp+125443@code.qastaging.launchpad.net

Commit message

Changes to the composite output window's shape seem to take a full frame to be
realized by GLX/the server. This results in a single frame of flicker when an
unredirected window gets redirected, but the shape change is still not
realized.

To work around this flicker, just skip the one frame where it's going to
occur so you never see it.
(LP: #1046664)

Description of the change

See commit message.

Yes, I did try XSync to force shape changes to be realized before we render but it still doesn't work. Only skipping a frame seems to work.

To post a comment you must log in.
Revision history for this message
jenkins (martin-mrazik+qa) wrote :
review: Approve (continuous-integration)
Revision history for this message
Sam Spilsbury (smspillaz) wrote :

This is fine, although ideally we should probably move the unredirection code into paintOutputs and not paintOutputRegion - then we can update the output window and not worry about frame skips. That's nontrivial though, so lets leave it for later.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
The diff is not available at this time. You can reload the page or download it.

Subscribers

People subscribed via source and target branches