Merge lp://qastaging/~andreas-pokorny/mir/input-registrar-observer into lp://qastaging/mir
Status: | Rejected |
---|---|
Rejected by: | Andreas Pokorny |
Proposed branch: | lp://qastaging/~andreas-pokorny/mir/input-registrar-observer |
Merge into: | lp://qastaging/mir |
Prerequisite: | lp://qastaging/~andreas-pokorny/mir/custom_input_dispatcher |
Diff against target: |
1057 lines (+401/-124) 29 files modified
include/server/mir/input/input_dispatcher_configuration.h (+0/-1) include/server/mir/scene/input_registrar.h (+7/-16) include/server/mir/scene/input_registrar_observer.h (+60/-0) include/test/mir_test/fake_event_hub_input_configuration.h (+6/-1) include/test/mir_test_doubles/mock_input_registrar_observer.h (+3/-3) include/test/mir_test_doubles/stub_input_registrar.h (+53/-0) include/test/mir_test_doubles/stub_input_registrar_observer.h (+5/-5) src/server/input/android/android_input_registrar.h (+2/-2) src/server/input/android/input_dispatcher_configuration.cpp (+10/-13) src/server/input/android/input_dispatcher_configuration.h (+9/-3) src/server/input/default_configuration.cpp (+2/-10) src/server/input/null_input_configuration.cpp (+0/-21) src/server/scene/CMakeLists.txt (+1/-0) src/server/scene/default_configuration.cpp (+12/-0) src/server/scene/default_input_registrar.cpp (+63/-0) src/server/scene/default_input_registrar.h (+56/-0) src/server/scene/surface_stack.cpp (+2/-2) src/server/scene/surface_stack.h (+3/-3) tests/acceptance-tests/test_custom_input_dispatcher.cpp (+1/-5) tests/acceptance-tests/test_server_shutdown.cpp (+2/-1) tests/integration-tests/input/android/test_android_cursor_listener.cpp (+3/-1) tests/integration-tests/input/android/test_android_input_manager.cpp (+11/-8) tests/integration-tests/input/test_nested_input.cpp (+7/-18) tests/integration-tests/session_management.cpp (+1/-0) tests/mir_test_doubles/fake_event_hub_input_configuration.cpp (+8/-5) tests/mir_test_framework/input_testing_server_options.cpp (+2/-1) tests/unit-tests/scene/CMakeLists.txt (+1/-0) tests/unit-tests/scene/test_default_input_registrar.cpp (+66/-0) tests/unit-tests/scene/test_surface_stack.cpp (+5/-5) |
To merge this branch: | bzr merge lp://qastaging/~andreas-pokorny/mir/input-registrar-observer |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Alan Griffiths | Needs Fixing | ||
Robert Carr (community) | Needs Information | ||
PS Jenkins bot (community) | continuous-integration | Approve | |
Review via email:
|
Commit message
Allow multiple InputRegistrar
This change is allows to split out the the input send parts from droidinput:
Description of the change
This the first of the follow up branches of https:/
The interface InputRegistrar is used by the scene to indicate that surfaces enter and leave the scene. The android-input related code uses that information to create WindowHandles and pass those to the InputDispatcher as possible input targets. With this change InputRegistrar is renamed to InputRegistrarO
The new input sender implementation will need that information too, hence the other motivation for that change.
This change will become unnecessary if a racarrs SceneObserver comes in sooner - and if we decide that the InputReceptionMode is not a necessary configuration option or can be obtained in a different way.
Unmerged revisions
- 1548. By Andreas Pokorny
-
merged devel
- 1547. By Andreas Pokorny
-
* New upstream release 0.1.9 (https:/
/launchpad. net/mir/ +milestone/ 0.1.9)
- mirclient ABI unchanged, still at 7. Clients do not need rebuilding.
- mirserver ABI bumped to 19. Shells need rebuilding.
- More libmirserver class changes and reorganization, including;
. Moving things from shell:: to scene::
. Rewriting/refactoring surface factories.
- Added an id() to Renderable.
- Scene/Renderer interfaces:
. Scene is no longer responsible for its own iteration (no for_each
any more). Instead you should iterate over the list returned by
Scene::generate_ renderable_ list().
- Bugs fixed:
. TODO: fill in when proposing to Ubuntu
[ Daniel van Vugt ]
- mirserver ABI bumped to 18. Shells need rebuilding.
. graphics::Platform: :create_ display( ) has a new parameter allowing you
to customize the compositor's (E)GL configutation.
. Renderable::buffer( unsigned long frameno) is now:
Renderable::buffer( void const* user_id). See below.
. Renderable::should_ be_rendered_ in() is replaced by a more natural:
Renderable::visble( )
. input::Surface: :name() returns by value instead of reference now,
to ensure future thread safety.
- Switched EventHub device enumeration and hotplug to Udev. NOTE! This
means mir_test_* can't run natively on touch devices any more without
some setup first:
umockdev-run -- bin/mir_unit_tests
- Introduced "RenderableList" as the way to sample the Scene contents,
and started using that in the default compositor.
- Introduced physical length units and conversion (geometry::Length) in
preparation for arbitrary DPI rendering.
anti-aliased and high-DPI scalable.
- Multi-monitor frame sync has been redesigned to eliminate the need for
frame number tracking.
- Bugs (and enhancements) resolved:
. [enhancement] Please move input detection to libudev (LP: #1237784)
. [enhancement] Add a clamping resize mode to GLRenderer (LP: #1259887)
. [regression] Intermittent loss of multimonitor frame sync
(LP: #1290306)
. [enhancement] Make GL config options configurable (LP: #1290780)
. memcheck-test doesn't test anything when DISABLED_GTEST_DISCOVERY is
enabled (LP: #1291876)
. "Error opening DRM device" is always followed by "Unknown error -(some
negative number)" (LP: #1292384)
. Rendering/composition gets stopped early (LP: #1293896)
. Ubuntu Touch Settings and terminal apps are not rendering correctly on
rotate. (LP: #1294048)
. [regression] Apps are much slower to open (LP: #1294051)
. Settings app opens to a blank screen unless given enough time to render
or the app is touched (LP: #1294053)
. TestClientInput/DemoPrivatePro tobuf memory leak is causing regular CI
test failures (LP: #1295231)
. OSK touch events "fall through" and hit surface behind them
(LP: #1297878)
. [enhancement] add a test for composite of last client post
(LP: #1298596)
. [regression] Surfaces vanish as soon as their edges touch the edge of
screen (LP: #1301115)
* Cherry-picked from future release 0.1.9:
- Bug fix: mirplatformgraphics does not have boost program options in its
symbol table (LP: #1301040)
- Bug fix: unity8 crashed with SIGSEGV in glDeleteTextures() from
mir::scene: :GLPixelBuffer: :~GLPixelBuffer () from
mir::scene: :ThreadedSnapsh otStrategy: :~ThreadedSnaps hotStrategy( )
(LP: #1256360)
[ Ubuntu daily release ]
* New rebuild forced - 1546. By Andreas Pokorny
-
Allow multiple InputRegistrar
This change is necessary to split out the the input send parts from droidinput:
:InputDispatche r. InputRegistrar is copied to InputRegistrarO bserver, and two methods are added to InputRegistrar to register further InputRegistrarO bservers. The default implementation is no longer related to android integration code.
FAILED: Continuous integration, rev:1546 jenkins. qa.ubuntu. com/job/ mir-team- mir-development -branch- ci/1381/ jenkins. qa.ubuntu. com/job/ mir-android- trusty- i386-build/ 1678/console jenkins. qa.ubuntu. com/job/ mir-clang- trusty- amd64-build/ 1676/console jenkins. qa.ubuntu. com/job/ mir-mediumtests -trusty- touch/1251/ console jenkins. qa.ubuntu. com/job/ mir-team- mir-development -branch- trusty- amd64-ci/ 1113/console jenkins. qa.ubuntu. com/job/ mir-team- mir-development -branch- trusty- armhf-ci/ 1118/console jenkins. qa.ubuntu. com/job/ mir-mediumtests -builder- trusty- armhf/1253/ console
http://
Executed test runs:
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
FAILURE: http://
Click here to trigger a rebuild: s-jenkins. ubuntu- ci:8080/ job/mir- team-mir- development- branch- ci/1381/ rebuild
http://