Merge lp:~mir-team/qtmir/compatibility-with-mir-API-changes into lp:qtmir
Proposed by
Alan Griffiths
Status: | Rejected |
---|---|
Rejected by: | Alan Griffiths |
Proposed branch: | lp:~mir-team/qtmir/compatibility-with-mir-API-changes |
Merge into: | lp:qtmir |
Diff against target: |
259 lines (+49/-20) 13 files modified
CMakeLists.txt (+2/-1) debian/control (+2/-2) src/modules/Unity/Application/CMakeLists.txt (+0/-1) src/modules/Unity/Application/application_manager.cpp (+7/-4) src/platforms/mirserver/CMakeLists.txt (+1/-1) src/platforms/mirserver/displaywindow.cpp (+16/-2) src/platforms/mirserver/displaywindow.h (+3/-1) src/platforms/mirserver/mirserver.h (+0/-1) src/platforms/mirserver/mirserverintegration.cpp (+11/-4) src/platforms/mirserver/mirshell.cpp (+3/-1) src/platforms/mirserver/surfaceobserver.h (+1/-0) tests/modules/common/mock_surface.h (+2/-1) tests/modules/common/stub_scene_surface.h (+1/-1) |
To merge this branch: | bzr merge lp:~mir-team/qtmir/compatibility-with-mir-API-changes |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Gerry Boland (community) | code | Needs Fixing | |
PS Jenkins bot (community) | continuous-integration | Needs Fixing | |
Review via email: mp+252589@code.launchpad.net |
Commit message
Compatibility with recent API changes in Mir development
Description of the change
Compatibility with recent API changes in Mir development
To post a comment you must log in.
- g++-4.9:native,
+# g++-4.9:native,
oopsie :)
- m_displayBuffer ->flip( ); >post() ;
+ m_displayGroup-
so this exposes a QtMir architecture problem now, as DisplayWindow is supposed to wrap a mg::DisplayBuffer. We use Qt's multithreaded renderer, where each DisplayWindow is rendered to relatively independently, and post() called also individually.
But in multimonitor case where a DisplaySyncGroup contains 2 DisplayBuffers, one post() call will submit both mg::DisplayBuffers for flipping, which can happen before the other DisplayWindow has been rendered to, causing visual artifacts. I suggest a quick TODO/FIXME, just to point this out.
Rest looks ok