[plugins/qpa] Do not replace a valid FBO with an invalid one
ClosedPublic

Authored by graesslin on Apr 13 2017, 7:32 PM.

Details

Summary

With the TabBox I observed the following issue:
1: trigger TabBox through screen edge
2: exit TabBox
3: trigger TabBox again through screen edge

Actual behavior: in step 3 the GUI does not show. If now using Alt+Tab
to show the TabBox the gui shows, but through screen edge it stays
broken.

Investigation showed that the difference is a direct show in screen edge
case and a delayed show in Alt+Tab case. Futher investigation shows that
an invalid geometry gets requested in the broken case. While this might
indicate an issue in another area it makes sense to protect KWin
internally against it and not to break rendering.

Thus this change ensures that a valid FBO does not get replaced by an
invalid sized FBO.

Test Plan

Tested that Alt+Tab works correctly when triggered through
edge

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.
graesslin created this revision.Apr 13 2017, 7:32 PM
Restricted Application added a project: KWin. · View Herald TranscriptApr 13 2017, 7:32 PM
Restricted Application added subscribers: kwin, plasma-devel. · View Herald Transcript
mart accepted this revision.Apr 21 2017, 2:46 PM
This revision is now accepted and ready to land.Apr 21 2017, 2:46 PM
This revision was automatically updated to reflect the committed changes.