Merge lp:~dandrader/qtmir/fixActiveFocusUpdate into lp:qtmir
| Status: | Merged |
|---|---|
| Approved by: | Nick Dedekind on 2016-06-01 |
| Approved revision: | 491 |
| Merged at revision: | 499 |
| Proposed branch: | lp:~dandrader/qtmir/fixActiveFocusUpdate |
| Merge into: | lp:qtmir |
| Diff against target: |
980 lines (+401/-217) 17 files modified
src/modules/Unity/Application/mirsurface.cpp (+21/-7) src/modules/Unity/Application/mirsurface.h (+7/-3) src/modules/Unity/Application/mirsurfaceinterface.h (+4/-3) src/modules/Unity/Application/mirsurfaceitem.cpp (+5/-11) src/modules/Unity/Application/mirsurfaceitem.h (+1/-1) tests/framework/CMakeLists.txt (+1/-1) tests/framework/fake_mirsurface.cpp (+0/-2) tests/framework/fake_mirsurface.h (+2/-1) tests/framework/fake_session.cpp (+2/-1) tests/framework/fake_session.h (+2/-0) tests/framework/fake_surface.h (+89/-69) tests/framework/mock_shell.h (+111/-0) tests/framework/stub_scene_surface.cpp (+0/-103) tests/modules/SessionManager/session_test.cpp (+0/-3) tests/modules/SurfaceManager/CMakeLists.txt (+1/-0) tests/modules/SurfaceManager/mirsurface_test.cpp (+10/-11) tests/modules/SurfaceManager/mirsurfaceitem_test.cpp (+145/-1) |
| To merge this branch: | bzr merge lp:~dandrader/qtmir/fixActiveFocusUpdate |
| Related bugs: |
| Reviewer | Review Type | Date Requested | Status |
|---|---|---|---|
| Nick Dedekind (community) | 2016-05-24 | Approve on 2016-06-01 | |
| Unity8 CI Bot | continuous-integration | 2016-05-24 | Approve on 2016-05-24 |
|
Review via email:
|
|||
This proposal supersedes a proposal from 2016-05-09.
Commit Message
Fix mir::scene::Surface focus attribute updates
Description of the Change
* Are there any related MPs required for this MP to build/function as expected? Please list.
No
* Did you perform an exploratory manual test run of your code change and any related functionality?
Yes.
* If you changed the packaging (debian), did you subscribe the ubuntu-unity team to this MP?
Not applicable.
| Nick Dedekind (nick-dedekind) wrote : | # |
I don't believe there's any real way to test this at the moment, since consumes input doesn't currently change, but was tested in mock by branch:
https:/
| Nick Dedekind (nick-dedekind) wrote : | # |
I think this may be wrong.
We encounter an issue with this in unity8 shell tests (FUNCTION=
Problem arises from the active focus not being passed through when consumesInput=
| Nick Dedekind (nick-dedekind) wrote : | # |
perhaps:
void MirSurfaceItem:
{
if (m_surface && m_surface->live()) {
}
}
| Nick Dedekind (nick-dedekind) wrote : | # |
and updateMirSurfac
| Daniel d'Andrada (dandrader) wrote : | # |
> and updateMirSurfac
> changes.
Imagine multiple views per surface:
- View A: hasActiveFocus(
- View B: hasActiveFocus(
- Surface: activeFocus=true (because of View A)
It's a wrong situation (two view consuming input for the same surface) but possible with the current API.
- m_consumesInput in View B turns false.
With the code you suggest, Surface would lose active focus despite of View A. That's why I only call update when m_consumesInput turns true (not obvious).
Looks like we might need a more involved solution...
| Unity8 CI Bot (unity8-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:490
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
FAILURE: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
FAILURE: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
FAILURE: https:/
Click here to trigger a rebuild:
https:/
| Daniel d'Andrada (dandrader) wrote : | # |
An all-new patch. Should work in all situations now.
| Unity8 CI Bot (unity8-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:490
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
Click here to trigger a rebuild:
https:/
- 491. By Daniel d'Andrada on 2016-05-24
-
Remove dead code
| Unity8 CI Bot (unity8-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:491
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/

FAILED: Continuous integration, rev:485 /unity8- jenkins. ubuntu. com/job/ lp-qtmir- ci/208/ /unity8- jenkins. ubuntu. com/job/ build-0- fetch/1545 /unity8- jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= vivid+overlay/ 1505 /unity8- jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= xenial+ overlay/ 1505 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=amd64, release= vivid+overlay/ 1505/console /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=amd64, release= xenial+ overlay/ 1505 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=amd64, release= xenial+ overlay/ 1505/artifact/ output/ *zip*/output. zip /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=armhf, release= vivid+overlay/ 1505 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=armhf, release= vivid+overlay/ 1505/artifact/ output/ *zip*/output. zip /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=armhf, release= xenial+ overlay/ 1505 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=armhf, release= xenial+ overlay/ 1505/artifact/ output/ *zip*/output. zip /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=i386, release= vivid+overlay/ 1505 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=i386, release= vivid+overlay/ 1505/artifact/ output/ *zip*/output. zip /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=i386, release= xenial+ overlay/ 1505 /unity8- jenkins. ubuntu. com/job/ build-2- binpkg/ arch=i386, release= xenial+ overlay/ 1505/artifact/ output/ *zip*/output. zip
https:/
Executed test runs:
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild: /unity8- jenkins. ubuntu. com/job/ lp-qtmir- ci/208/ rebuild
https:/