Merge lp:~mir-team/mir/remove-eol-whitespace into lp:mir
- remove-eol-whitespace
- Merge into development-branch
Status: | Rejected |
---|---|
Rejected by: | Daniel van Vugt |
Proposed branch: | lp:~mir-team/mir/remove-eol-whitespace |
Merge into: | lp:mir |
Diff against target: |
10229 lines (+1141/-1142) 348 files modified
COPYING.GPL (+2/-2) HACKING.md (+2/-2) benchmarks/frame-uniformity/CMakeLists.txt (+1/-1) benchmarks/frame-uniformity/frame_uniformity_test.h (+4/-4) benchmarks/frame-uniformity/main.cpp (+10/-10) benchmarks/frame-uniformity/touch_measuring_client.cpp (+6/-6) benchmarks/frame-uniformity/touch_measuring_client.h (+4/-4) benchmarks/frame-uniformity/touch_producing_server.cpp (+3/-3) benchmarks/frame-uniformity/touch_producing_server.h (+7/-7) benchmarks/frame-uniformity/touch_samples.cpp (+1/-1) benchmarks/frame-uniformity/touch_samples.h (+2/-2) benchmarks/frame-uniformity/vsync_simulating_graphics_platform.cpp (+4/-4) benchmarks/frame-uniformity/vsync_simulating_graphics_platform.h (+3/-3) benchmarks/touch_event_latency.py (+1/-1) cmake/ABICheck.cmake (+4/-4) cmake/Debian.cmake (+2/-2) cmake/FindBoost.cmake (+1/-1) cmake/FindLcov.cmake (+1/-1) cmake/FindLibHardware.cmake (+1/-1) cmake/Findgcovr.cmake (+1/-1) cmake/MirCommon.cmake (+1/-1) cmake/ParseArguments.cmake (+8/-8) cross-compile-chroot.sh (+6/-6) debian/changelog (+60/-60) doc/android_new_device_bringup.md (+15/-15) doc/android_technical_details.md (+2/-2) doc/building_source_for_arm.md (+6/-6) doc/building_source_for_pc.md (+4/-4) doc/demo_server_controls.md (+1/-1) doc/dso_versioning_guide.md (+1/-1) doc/extra.css (+1/-1) doc/installing_prebuilt_on_android.md (+2/-2) doc/mainpage.md (+11/-11) doc/setup_kvm_for_mir.md (+3/-3) doc/setup_vmware_for_mir.md (+2/-2) doc/using_mir_on_android.md (+1/-1) doc/using_mir_on_pc.md (+9/-9) examples/animated_cursor_demo_client.c (+3/-3) examples/client_helpers.cpp (+2/-2) examples/client_helpers.h (+1/-1) examples/client_touch_validator.cpp (+6/-6) examples/cursors_demo_client.c (+2/-2) examples/demo_client_display_config.c (+2/-2) examples/eglapp.c (+4/-4) examples/eglsquare.cpp (+4/-4) examples/fingerpaint.c (+8/-8) examples/input_shapes.cpp (+4/-4) examples/multiwin.c (+4/-4) examples/progressbar.c (+4/-4) examples/server_example_adorning_compositor.cpp (+1/-1) examples/server_example_adorning_compositor.h (+1/-1) examples/server_example_canonical_window_manager.cpp (+1/-1) examples/server_example_window_management_info.cpp (+2/-2) examples/xcursor.c (+1/-1) examples/xcursor_loader.cpp (+5/-5) guides/cppguide.xml (+22/-22) guides/styleguide.xsl (+6/-6) include/client/mir/events/event_builders.h (+1/-1) include/client/mir_toolkit/events/event.h (+2/-2) include/client/mir_toolkit/events/input/input_event.h (+3/-3) include/client/mir_toolkit/events/input/keyboard_event.h (+1/-1) include/client/mir_toolkit/events/input/pointer_event.h (+2/-2) include/client/mir_toolkit/events/input/touch_event.h (+2/-2) include/client/mir_toolkit/events/input_configuration_event.h (+1/-1) include/client/mir_toolkit/events/resize_event.h (+2/-2) include/client/mir_toolkit/events/surface_placement.h (+1/-1) include/client/mir_toolkit/mir_buffer_stream.h (+12/-12) include/client/mir_toolkit/mir_cursor_configuration.h (+1/-1) include/client/mir_toolkit/mir_screencast.h (+2/-2) include/client/mir_toolkit/mir_surface.h (+4/-4) include/client/mir_toolkit/version.h (+1/-1) include/common/mir/fd.h (+1/-1) include/common/mir/uncaught.h (+1/-1) include/core/mir/geometry/rectangle.h (+1/-1) include/platform/mir/graphics/cursor_image.h (+2/-2) include/platform/mir/graphics/display.h (+1/-1) include/platform/mir/graphics/display_buffer.h (+2/-2) include/platform/mir/graphics/platform_ipc_operations.h (+4/-4) include/renderers/sw/mir/renderer/sw/pixel_source.h (+1/-1) include/server/mir/compositor/scene_element.h (+1/-1) include/server/mir/frontend/buffer_stream.h (+3/-3) include/server/mir/input/seat_report.h (+1/-1) include/server/mir/input/touch_visualizer.h (+3/-3) include/server/mir/scene/observer.h (+1/-1) include/server/mir/scene/surface.h (+2/-2) include/server/mir/server.h (+1/-1) include/server/mir/shell/surface_specification.h (+1/-1) include/test/mir/test/doubles/nested_mock_egl.h (+1/-1) include/test/mir/test/doubles/null_display.h (+1/-1) include/test/mir/test/event_factory.h (+1/-1) include/test/mir/test/event_matchers.h (+8/-8) include/test/mir_test_framework/declarative_placement_window_manage_policy.h (+1/-1) playground/demo-shell/demo_compositor.cpp (+4/-4) playground/demo-shell/demo_renderer.h (+1/-1) playground/demo-shell/window_manager.cpp (+7/-7) playground/demo-shell/window_manager.h (+2/-2) playground/mir_demo_client_chain_jumping_buffers.c (+1/-1) playground/mir_demo_client_prerendered_frames.c (+5/-5) src/client/buffer.cpp (+1/-1) src/client/buffer_factory.cpp (+1/-1) src/client/buffer_stream.cpp (+3/-3) src/client/buffer_vault.cpp (+4/-4) src/client/client_buffer_stream.h (+1/-1) src/client/connection_surface_map.cpp (+1/-1) src/client/cursor_configuration.h (+2/-2) src/client/event.cpp (+3/-3) src/client/event_printer.cpp (+1/-1) src/client/events/event_builders.cpp (+5/-5) src/client/input/android/event_conversion_helpers.cpp (+2/-2) src/client/input/input_event.cpp (+9/-9) src/client/lttng/CMakeLists.txt (+1/-1) src/client/lttng/input_receiver_report.cpp (+2/-2) src/client/lttng/input_receiver_report.h (+1/-1) src/client/mir_buffer_api.cpp (+3/-3) src/client/mir_connection.cpp (+5/-5) src/client/mir_connection.h (+0/-1) src/client/mir_cursor_api.cpp (+3/-3) src/client/mir_surface.cpp (+4/-4) src/client/mir_surface.h (+1/-1) src/client/mir_surface_api.cpp (+3/-3) src/client/rpc/CMakeLists.txt (+1/-1) src/client/rpc/mir_protobuf_rpc_channel.cpp (+4/-4) src/client/surface_map.h (+1/-1) src/client/symbols-debug.map (+1/-1) src/client/symbols.map (+6/-6) src/common/fd/fd.cpp (+1/-1) src/common/fd/fd_socket_transmission.cpp (+4/-4) src/common/sharedlibrary/CMakeLists.txt (+1/-1) src/common/sharedlibrary/module_deleter.cpp (+3/-3) src/common/symbols.map (+1/-1) src/cookie/authority.cpp (+1/-1) src/cookie/hmac_cookie.cpp (+1/-1) src/include/client/mir_toolkit/mir_buffer.h (+3/-3) src/include/client/mir_toolkit/mir_buffer_private.h (+1/-1) src/include/client/mir_toolkit/mir_presentation_chain.h (+4/-4) src/include/common/mir/events/event_private.h (+1/-1) src/include/common/mir/protobuf/protocol_version.h (+1/-1) src/include/server/mir/frontend/fd_sets.h (+1/-1) src/include/server/mir/input/scene.h (+1/-1) src/include/server/mir/scene/legacy_scene_change_notification.h (+3/-3) src/platform/symbols.map (+4/-4) src/platforms/CMakeLists.txt (+2/-2) src/platforms/android/client/buffer.cpp (+7/-7) src/platforms/android/client/buffer.h (+1/-1) src/platforms/android/client/egl_native_surface_interpreter.cpp (+2/-2) src/platforms/android/common/android_native_buffer.cpp (+1/-1) src/platforms/android/common/egl_sync_fence.cpp (+1/-1) src/platforms/android/common/native_window_report.cpp (+5/-5) src/platforms/android/include/android/native_window.h (+1/-1) src/platforms/android/include/command_stream_sync.h (+1/-1) src/platforms/android/server/buffer.cpp (+2/-2) src/platforms/android/server/device_quirks.h (+1/-1) src/platforms/android/server/display.cpp (+4/-4) src/platforms/android/server/display_device.h (+2/-2) src/platforms/android/server/fb_device.cpp (+1/-1) src/platforms/android/server/graphic_buffer_allocator.h (+1/-1) src/platforms/android/server/hwc_device.cpp (+2/-2) src/platforms/android/server/hwc_fallback_gl_renderer.cpp (+1/-1) src/platforms/android/server/hwc_fb_device.cpp (+1/-1) src/platforms/android/server/hwc_fb_device.h (+1/-1) src/platforms/android/server/hwc_layerlist.cpp (+3/-3) src/platforms/android/server/hwc_layers.cpp (+4/-4) src/platforms/android/server/hwc_layers.h (+3/-3) src/platforms/android/server/hwc_loggers.cpp (+5/-5) src/platforms/android/server/hwc_wrapper.h (+1/-1) src/platforms/android/server/real_hwc_wrapper.cpp (+1/-1) src/platforms/android/server/resource_factory.cpp (+1/-1) src/platforms/android/utils/test_android_hardware_sanity.cpp (+2/-2) src/platforms/common/server/kms-utils/kms_connector.cpp (+1/-1) src/platforms/eglstream-kms/client/client_platform.cpp (+1/-1) src/platforms/evdev/CMakeLists.txt (+1/-1) src/platforms/mesa/server/buffer_allocator.cpp (+2/-2) src/platforms/mesa/server/kms/cursor.cpp (+5/-5) src/platforms/mesa/server/kms/cursor.h (+1/-1) src/platforms/mesa/server/kms/display_buffer.cpp (+1/-1) src/platforms/mesa/server/kms/guest_platform.h (+1/-1) src/platforms/mesa/server/x11/graphics/display.cpp (+1/-1) src/platforms/mesa/server/x11/symbols.map.in (+2/-2) src/protobuf/mir_protobuf.proto (+8/-8) src/server/compositor/CMakeLists.txt (+1/-1) src/server/compositor/buffer_map.cpp (+1/-1) src/server/compositor/buffer_map.h (+1/-1) src/server/compositor/multi_monitor_arbiter.cpp (+2/-2) src/server/compositor/multi_monitor_arbiter.h (+1/-1) src/server/compositor/occlusion.cpp (+1/-1) src/server/compositor/stream.cpp (+7/-7) src/server/compositor/stream.h (+1/-1) src/server/display_server.cpp (+2/-2) src/server/frontend/protobuf_message_processor.cpp (+1/-1) src/server/frontend/session_mediator.cpp (+8/-8) src/server/graphics/nested/cursor.h (+1/-1) src/server/graphics/nested/host_connection.h (+1/-1) src/server/graphics/nested/input_platform.cpp (+1/-1) src/server/graphics/nested/ipc_operations.cpp (+1/-1) src/server/graphics/nested/mir_client_host_connection.cpp (+2/-2) src/server/graphics/nested/platform.cpp (+2/-2) src/server/graphics/nested/platform.h (+4/-4) src/server/input/cursor_controller.cpp (+2/-2) src/server/input/cursor_controller.h (+1/-1) src/server/input/default_configuration.cpp (+1/-1) src/server/input/event_filter_chain_dispatcher.cpp (+2/-2) src/server/input/event_filter_chain_dispatcher.h (+2/-2) src/server/input/surface_input_dispatcher.cpp (+7/-7) src/server/input/surface_input_dispatcher.h (+2/-2) src/server/input/touchspot_controller.cpp (+13/-13) src/server/input/touchspot_controller.h (+3/-3) src/server/input/touchspot_image.c (+1/-1) src/server/report/logging/display_configuration_report.cpp (+5/-5) src/server/report/lttng/CMakeLists.txt (+1/-1) src/server/scene/application_session.cpp (+4/-4) src/server/scene/basic_surface.cpp (+11/-11) src/server/scene/basic_surface.h (+2/-2) src/server/scene/legacy_scene_change_notification.cpp (+2/-2) src/server/scene/session_manager.cpp (+1/-1) src/server/scene/session_manager.h (+1/-1) src/server/scene/surface_stack.cpp (+4/-4) src/server/scene/surface_stack.h (+4/-4) src/server/shell/abstract_shell.cpp (+1/-1) src/server/shell/canonical_window_manager.cpp (+1/-1) src/server/shell/graphics_display_layout.cpp (+1/-1) src/server/shell/system_compositor_window_manager.cpp (+1/-1) src/server/symbols.map (+1/-1) src/server/version.h.in (+1/-1) src/utils/vanity.c (+1/-1) tests/acceptance-tests/test_client_header_version.cpp (+5/-5) tests/acceptance-tests/test_client_input.cpp (+5/-5) tests/acceptance-tests/test_client_library.cpp (+1/-1) tests/acceptance-tests/test_client_scaling.cpp (+1/-1) tests/acceptance-tests/test_client_surface_events.cpp (+2/-2) tests/acceptance-tests/test_client_surfaces.cpp (+3/-3) tests/acceptance-tests/test_latency.cpp (+1/-1) tests/acceptance-tests/test_nested_input.cpp (+4/-4) tests/acceptance-tests/test_render_override.cpp (+2/-2) tests/acceptance-tests/test_surface_modifications.cpp (+1/-1) tests/acceptance-tests/test_surface_raise.cpp (+4/-4) tests/acceptance-tests/test_surfaces_with_output_id.cpp (+1/-1) tests/acceptance-tests/test_unresponsive_client.cpp (+3/-3) tests/acceptance-tests/throwback/test_client_cursor_api.cpp (+5/-5) tests/acceptance-tests/throwback/test_presentation_chain.cpp (+3/-3) tests/include/mir/test/doubles/fd_matcher.h (+1/-1) tests/include/mir/test/doubles/mock_client_buffer_stream.h (+1/-1) tests/include/mir/test/doubles/mock_frontend_surface.h (+2/-2) tests/include/mir/test/doubles/mock_hwc_report.h (+1/-1) tests/include/mir/test/doubles/mock_mir_buffer.h (+1/-1) tests/include/mir/test/doubles/mock_protobuf_server.h (+1/-1) tests/include/mir/test/doubles/mock_scene_session.h (+1/-1) tests/include/mir/test/doubles/stub_display_builder.h (+3/-3) tests/include/mir/test/doubles/stub_driver_interpreter.h (+1/-1) tests/include/mir/test/doubles/stub_gbm_native_buffer.h (+1/-1) tests/include/mir/test/doubles/stub_host_connection.h (+2/-2) tests/include/mir/test/doubles/stub_input_scene.h (+1/-1) tests/include/mir/test/doubles/stub_input_surface.h (+1/-1) tests/include/mir/test/doubles/stub_renderable.h (+1/-1) tests/include/mir/test/doubles/stub_session.h (+1/-1) tests/include/mir_test_framework/command_line_server_configuration.h (+1/-1) tests/include/mir_test_framework/stub_platform_native_buffer.h (+1/-1) tests/integration-tests/compositor/test_swapping_swappers.cpp (+5/-5) tests/integration-tests/graphics/mesa/CMakeLists.txt (+2/-2) tests/integration-tests/test_buffer_scheduling.cpp (+20/-20) tests/integration-tests/test_submit_buffer.cpp (+8/-8) tests/integration-tests/test_surface_first_frame_sync.cpp (+2/-2) tests/integration-tests/test_surface_stack_with_compositor.cpp (+3/-3) tests/integration-tests/test_test_framework.cpp (+2/-2) tests/integration-tests/test_touchspot_visualization.cpp (+6/-6) tests/mir_test/spin_wait.cpp (+2/-2) tests/mir_test_doubles/mock_egl.cpp (+1/-1) tests/mir_test_doubles/mock_timer.cpp (+1/-1) tests/mir_test_framework/CMakeLists.txt (+2/-2) tests/mir_test_framework/any_surface.cpp (+2/-2) tests/mir_test_framework/declarative_placement_window_manage_policy.cpp (+2/-2) tests/mir_test_framework/headless_display_buffer_compositor_factory.cpp (+1/-1) tests/mir_test_framework/interprocess_client_server_test.cpp (+1/-1) tests/mir_test_framework/placement_applying_shell.cpp (+3/-3) tests/mir_test_framework/stub_client_platform_factory.cpp (+1/-1) tests/mir_test_framework/symbols-client.map (+1/-1) tests/mir_test_framework/udev_environment.cpp (+1/-1) tests/performance-tests/test_glmark2-es2-mir.cpp (+1/-1) tests/test-clients/impolite-shutdown/scroll.cpp (+2/-2) tests/test-clients/mir-stress/CMakeLists.txt (+1/-1) tests/unit-tests/client/test_aging_buffer.cpp (+1/-1) tests/unit-tests/client/test_buffer_vault.cpp (+4/-4) tests/unit-tests/client/test_client_buffer_stream.cpp (+8/-8) tests/unit-tests/client/test_client_mir_surface.cpp (+10/-10) tests/unit-tests/client/test_connection_resource_map.cpp (+1/-1) tests/unit-tests/client/test_mir_buffer.cpp (+4/-4) tests/unit-tests/client/test_mir_connection.cpp (+3/-3) tests/unit-tests/client/test_presentation_chain.cpp (+1/-1) tests/unit-tests/client/test_protobuf_rpc_channel.cpp (+3/-3) tests/unit-tests/client/test_screencast_stream.cpp (+4/-4) tests/unit-tests/compositor/test_dropping_schedule.cpp (+2/-2) tests/unit-tests/compositor/test_multi_monitor_arbiter.cpp (+8/-8) tests/unit-tests/compositor/test_multi_threaded_compositor.cpp (+3/-3) tests/unit-tests/compositor/test_occlusion.cpp (+2/-2) tests/unit-tests/compositor/test_stream.cpp (+3/-3) tests/unit-tests/dispatch/test_multiplexing_dispatchable.cpp (+1/-1) tests/unit-tests/frontend/test_event_sender.cpp (+1/-1) tests/unit-tests/frontend/test_resource_cache.cpp (+2/-2) tests/unit-tests/frontend/test_session_mediator.cpp (+4/-4) tests/unit-tests/graphics/test_software_cursor.cpp (+1/-1) tests/unit-tests/input/android/test_android_input_lexicon.cpp (+1/-1) tests/unit-tests/input/test_event_builders.cpp (+2/-2) tests/unit-tests/input/test_event_filter_chain_dispatcher.cpp (+2/-2) tests/unit-tests/input/test_input_event.cpp (+12/-12) tests/unit-tests/input/test_seat_input_device_tracker.cpp (+3/-3) tests/unit-tests/input/test_surface_input_dispatcher.cpp (+19/-19) tests/unit-tests/input/test_touchspot_controller.cpp (+10/-10) tests/unit-tests/input/test_validator.cpp (+4/-4) tests/unit-tests/platforms/android/client/test_buffer.cpp (+2/-2) tests/unit-tests/platforms/android/client/test_egl_native_surface_interpreter.cpp (+4/-4) tests/unit-tests/platforms/android/server/hwc_struct_helpers.h (+3/-3) tests/unit-tests/platforms/android/server/test_anw_logger.cpp (+1/-1) tests/unit-tests/platforms/android/server/test_buffer_tex_bind.cpp (+2/-2) tests/unit-tests/platforms/android/server/test_display.cpp (+10/-10) tests/unit-tests/platforms/android/server/test_display_buffer.cpp (+9/-9) tests/unit-tests/platforms/android/server/test_display_group.cpp (+1/-1) tests/unit-tests/platforms/android/server/test_display_hotplug.cpp (+2/-2) tests/unit-tests/platforms/android/server/test_egl_sync_fence.cpp (+7/-7) tests/unit-tests/platforms/android/server/test_fb_device.cpp (+1/-1) tests/unit-tests/platforms/android/server/test_hwc_configuration.cpp (+1/-1) tests/unit-tests/platforms/android/server/test_hwc_device.cpp (+7/-7) tests/unit-tests/platforms/android/server/test_hwc_fallback_gl_renderer.cpp (+8/-8) tests/unit-tests/platforms/android/server/test_hwc_layerlist.cpp (+1/-1) tests/unit-tests/platforms/android/server/test_hwc_logger.cpp (+37/-37) tests/unit-tests/platforms/android/server/test_hwc_wrapper.cpp (+6/-6) tests/unit-tests/platforms/android/server/test_ipc_operations.cpp (+1/-1) tests/unit-tests/platforms/android/server/test_output_builder.cpp (+5/-5) tests/unit-tests/platforms/android/server/test_platform.cpp (+1/-1) tests/unit-tests/platforms/android/server/test_server_interpreter.cpp (+1/-1) tests/unit-tests/platforms/mesa/client/test_client_buffer.cpp (+3/-3) tests/unit-tests/platforms/mesa/client/test_native_surface.cpp (+1/-1) tests/unit-tests/platforms/mesa/kms/test_buffer_allocator.cpp (+5/-5) tests/unit-tests/platforms/mesa/kms/test_cursor.cpp (+6/-6) tests/unit-tests/platforms/mesa/kms/test_display_buffer.cpp (+1/-1) tests/unit-tests/platforms/mesa/kms/test_drm_helper.cpp (+9/-9) tests/unit-tests/platforms/mesa/x11/test_display.cpp (+1/-1) tests/unit-tests/platforms/nested/test_nested_display_buffer.cpp (+16/-16) tests/unit-tests/renderers/gl/test_gl_renderer.cpp (+1/-1) tests/unit-tests/scene/test_application_session.cpp (+10/-10) tests/unit-tests/scene/test_basic_surface.cpp (+8/-8) tests/unit-tests/scene/test_legacy_scene_change_notification.cpp (+4/-4) tests/unit-tests/scene/test_surface.cpp (+3/-3) tests/unit-tests/scene/test_surface_impl.cpp (+2/-2) tests/unit-tests/scene/test_surface_stack.cpp (+6/-6) tests/unit-tests/scene/test_timeout_application_not_responding_detector.cpp (+6/-6) tools/detect_fd_leaks.bash (+1/-1) tools/process_doxygen_xml.py (+18/-18) tools/setup-partial-armhf-chroot.sh (+6/-6) tools/valgrind_suppressions_glibc_2.23 (+9/-9) |
To merge this branch: | bzr merge lp:~mir-team/mir/remove-eol-whitespace |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Mir CI Bot | continuous-integration | Approve | |
Kevin DuBois (community) | Abstain | ||
Cemil Azizoglu (community) | Disapprove | ||
Alan Griffiths | Abstain | ||
Chris Halse Rogers | Disapprove | ||
Review via email: mp+302625@code.launchpad.net |
Commit message
Delete whitespace at ends of lines, everywhere except 3rd_party.
Description of the change
I didn't expect there to be this much, and wonder if the diff size will hurt us later in portability of patches/
On the other hand, the diff will only be this large once, in theory.
Mir CI Bot (mir-ci-bot) wrote : | # |
- 3642. By Daniel van Vugt
-
Ping
Chris Halse Rogers (raof) wrote : | # |
So, I guess the meta-review is: is this valuable enough to outweigh the cost (lots of in-flight branches will conflict, as you say, patch backporting becomes more difficult).
I'm of the opinion that it isn't sufficiently valuable - in an ideal world there wouldn't be trailing whitespace, but it's *whitespace* so the only harm is that it very slightly increases the size of our source tree.
What does everyone else think?
-----
Outside the meta-review, needs-fixing: please don't change debian/changelog entries for versions that are already in the archive.
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3642
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
Daniel van Vugt (vanvugt) wrote : | # |
I understand and half of me agrees with what you said.
Although on the topic of changelog, we mess that up significantly on occasion and do have to fix it retrospectively anyway. :(
Daniel van Vugt (vanvugt) wrote : | # |
On the topic of avoiding conflicts, I thought it would be a problem but on the other hand if you look closely most files touched only have one or two lines changed in each. So the potential for significant conflicts is low.
Alan Griffiths (alan-griffiths) wrote : | # |
I think I proposed something similar in the past and it got rejected for the same reasons
Cemil Azizoglu (cemil-azizoglu) wrote : | # |
Getting rid of whitespace is good, but without protection against it in the future, it'll happen again. E.g. some codereview tools show the trailing whitespace in red. Unfortunately not launchpad. Or we could have a script that would format each branch before merging. This way we could ensure it doesn't happen in the future. However, without these, we'll soon be back to where we are now.
Daniel van Vugt (vanvugt) wrote : | # |
I can write an automated test for it, and it would never happen again. However the precondition to that would be for this to land.
The three main reasons to reject this branch are easy to argue/disprove, so it's worth going over them again:
1. It would create too many conflicts. Actually only 15% of files are touched here and most of those that are changed only have a couple of lines modified. So the risk and pain of resolving any conflicts in future is quite low.
2. changelog should not be modified. I can undo that one if necessary however we have a history of writing incorrect documentation and changelog entries that need fixing after the fact.
3. It would happen again. Actually it wouldn't -- I can write an automated test to prevent that very easily.
- 3643. By Daniel van Vugt
-
Merge latest trunk and fix conflicts
Mir CI Bot (mir-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:3643
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
FAILURE: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
- 3644. By Daniel van Vugt
-
Again
Mir CI Bot (mir-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:3644
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
FAILURE: https:/
Click here to trigger a rebuild:
https:/
Daniel van Vugt (vanvugt) wrote : | # |
Failures are unrelated to this branch...
[ FAILED ] NestedServer.
[ FAILED ] NestedServer.
- 3645. By Daniel van Vugt
-
Merge latest trunk
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3645
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3646. By Daniel van Vugt
-
Merge latest trunk
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3646
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3647. By Daniel van Vugt
-
Merge latest trunk
- 3648. By Daniel van Vugt
-
Merge latest trunk
- 3649. By Daniel van Vugt
-
Remove a couple more new spaces
Mir CI Bot (mir-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:3649
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Daniel van Vugt (vanvugt) wrote : | # |
^^^
Failures are bug 1523621 and bug 1563210
- 3650. By Daniel van Vugt
-
Merge latest trunk
Mir CI Bot (mir-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:3650
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
FAILURE: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
- 3651. By Daniel van Vugt
-
Merge latest trunk
- 3652. By Daniel van Vugt
-
Fix some newly-introduced EOL whitespace
Daniel van Vugt (vanvugt) wrote : | # |
^^^
Failure is bug 1523621
Mir CI Bot (mir-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:3652
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
FAILURE: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Daniel van Vugt (vanvugt) wrote : | # |
^^^
Clang is missing on the CI machine? This is the second branch to hit this problem today...
05:01:00 The CMAKE_C_COMPILER:
05:01:00
05:01:00 /usr/bin/clang
05:01:00
05:01:00 is not a full path to an existing compiler tool.
- 3653. By Daniel van Vugt
-
Try again
Mir CI Bot (mir-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:3653
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
FAILURE: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
FAILURE: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Daniel van Vugt (vanvugt) wrote : | # |
^^^
04:20:58 clang: error: invalid argument '/build/mir' to -fdebug-prefix-map ... What?
and
Configuration device-runtests-mir ? krillin is still in the queue: Waiting for next available executor on krillin-01
device-runtests-mir ? krillin completed with result ABORTED
Finished: ABORTED
- 3654. By Daniel van Vugt
-
Merge latest trunk
Mir CI Bot (mir-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:3654
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
FAILURE: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Daniel van Vugt (vanvugt) wrote : | # |
^^^
Only krillin failing. That's a good improvement.
02:27:32 Triggering device-runtests-mir ? krillin
02:54:09 Configuration device-runtests-mir ? krillin is still in the queue: Waiting for next available executor on krillin-01
03:02:34 device-runtests-mir ? krillin completed with result ABORTED
03:02:34 Finished: ABORTED
- 3655. By Daniel van Vugt
-
Merge latest trunk and fix a conflict
- 3656. By Daniel van Vugt
-
Fix more EOL whitespace
Mir CI Bot (mir-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:3656
https:/
Executed test runs:
FAILURE: https:/
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:/
FAILURE: https:/
Click here to trigger a rebuild:
https:/
Daniel van Vugt (vanvugt) wrote : | # |
^^^
Bug 1570327
- 3657. By Daniel van Vugt
-
Try again
Mir CI Bot (mir-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:3657
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
FAILURE: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
Click here to trigger a rebuild:
https:/
Daniel van Vugt (vanvugt) wrote : | # |
^^^
Bug 1563210
- 3658. By Daniel van Vugt
-
Try again
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3658
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3659. By Daniel van Vugt
-
Merge latest trunk
- 3660. By Daniel van Vugt
-
Fix more whitespace
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3660
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3661. By Daniel van Vugt
-
Merge latest trunk
- 3662. By Daniel van Vugt
-
Remove more whitespace
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3662
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3663. By Daniel van Vugt
-
Merge latest trunk
- 3664. By Daniel van Vugt
-
Remove one more whitespace chunk
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3664
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
Daniel van Vugt (vanvugt) wrote : | # |
Bump. My comment on 12 August hasn't been answered.
- 3665. By Daniel van Vugt
-
Merge latest trunk
- 3666. By Daniel van Vugt
-
Merge latest trunk and fix conflict
- 3667. By Daniel van Vugt
-
Remove more whitespace
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3667
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3668. By Daniel van Vugt
-
Merge latest trunk and fix conflicts
- 3669. By Daniel van Vugt
-
Fix new whitespace
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3669
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
Kevin DuBois (kdub) wrote : | # |
I feel pretty neutrally about this. Whitespace is a small annoyance imho. OTOH, sweeping whitespace changes all accross the codebase can be annoying with merges and conflicts... Seems the middle way is to add a script, and gradually eliminate whitespace. I suppose abstain from me.
- 3670. By Daniel van Vugt
-
Merge latest trunk
- 3671. By Daniel van Vugt
-
Merge latest trunk
- 3672. By Daniel van Vugt
-
Merge latest trunk and fix a conflict
- 3673. By Daniel van Vugt
-
Remove more whitespace
Daniel van Vugt (vanvugt) wrote : | # |
Well I've been updating this branch regularly for a month now and I'm only encountering minor conflicts every few days or so. The headaches appear to be minimal.
The diff is only large once, and it's simple to script an automated test after that.
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3673
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
Cemil Azizoglu (cemil-azizoglu) wrote : | # |
I guess the worry is the script may come too late and the code gets unwanted whitespace again. I'd be more in favor if there were a script that Jenkaas runs on every MP.
Daniel van Vugt (vanvugt) wrote : | # |
"Too late" I think would mean we have as big a diff as this again. That's not going to happen because that would take years to eventuate.
More likely the script would come with zero or a couple of additional whitespace fixes. In fact it's better if it does for the sake of testing the test.
- 3674. By Daniel van Vugt
-
Merge latest trunk
- 3675. By Daniel van Vugt
-
Merge latest trunk and fix conflicts
- 3676. By Daniel van Vugt
-
And fix another whitespace
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3676
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3677. By Daniel van Vugt
-
Merge latest trunk and fix a conflict.
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3677
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3678. By Daniel van Vugt
-
Merge latest trunk and fix conflicts
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3678
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3679. By Daniel van Vugt
-
Merge latest trunk
- 3680. By Daniel van Vugt
-
Merge latest trunk
- 3681. By Daniel van Vugt
-
Merge latest trunk
- 3682. By Daniel van Vugt
-
Merge latest trunk
- 3683. By Daniel van Vugt
-
Remove more whitespace
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3683
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3684. By Daniel van Vugt
-
Merge latest trunk and fix conflicts
Mir CI Bot (mir-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:3684
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
SUCCESS: https:/
deb: https:/
FAILURE: https:/
Click here to trigger a rebuild:
https:/
Daniel van Vugt (vanvugt) wrote : | # |
^^^
Bug 1523621 as usual
- 3685. By Daniel van Vugt
-
Merge latest trunk and fix a conflict
- 3686. By Daniel van Vugt
-
Remove more whitespace
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3686
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3687. By Daniel van Vugt
-
Merge latest trunk and fix conflicts
- 3688. By Daniel van Vugt
-
Fix more whitespace
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3688
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3689. By Daniel van Vugt
-
Merge latest trunk and fix conflicts.
- 3690. By Daniel van Vugt
-
Remove more EOL whitespace
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3690
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3691. By Daniel van Vugt
-
Merge latest trunk
- 3692. By Daniel van Vugt
-
Merge latest trunk
- 3693. By Daniel van Vugt
-
Merge latest trunk and resolve conflicts (from kdub's massive
code removal)
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3693
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3694. By Daniel van Vugt
-
Merge latest trunk
- 3695. By Daniel van Vugt
-
Merge latest trunk
- 3696. By Daniel van Vugt
-
Merge latest trunk and fix a conflict.
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3696
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3697. By Daniel van Vugt
-
Merge latest trunk and fix conflicts.
- 3698. By Daniel van Vugt
-
Fix more EOL whitespace
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3698
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3699. By Daniel van Vugt
-
Merge latest trunk and fix conflicts.
- 3700. By Daniel van Vugt
-
Remove more whitespace
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3700
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3701. By Daniel van Vugt
-
Merge latest trunk
- 3702. By Daniel van Vugt
-
Fix more whitespace
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3702
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
Daniel van Vugt (vanvugt) wrote : | # |
Eventually I will get around to proposing the automated test for this..
- 3703. By Daniel van Vugt
-
Merge latest trunk
- 3704. By Daniel van Vugt
-
Remove another EOL whitespace
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3704
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3705. By Daniel van Vugt
-
Merge latest trunk
Mir CI Bot (mir-ci-bot) wrote : | # |
FAILED: Continuous integration, rev:3705
https:/
Executed test runs:
FAILURE: https:/
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:/
FAILURE: https:/
Click here to trigger a rebuild:
https:/
- 3706. By Daniel van Vugt
-
Merge latest trunk
Daniel van Vugt (vanvugt) wrote : | # |
^^^
Bug 1633920
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3706
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3707. By Daniel van Vugt
-
Merge latest trunk and fix a conflict
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3707
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
- 3708. By Daniel van Vugt
-
Merge latest trunk and fix conflicts
- 3709. By Daniel van Vugt
-
Merge latest trunk
- 3710. By Daniel van Vugt
-
Fix more whitespace
Mir CI Bot (mir-ci-bot) wrote : | # |
PASSED: Continuous integration, rev:3710
https:/
Executed test runs:
SUCCESS: https:/
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:/
Click here to trigger a rebuild:
https:/
Unmerged revisions
- 3710. By Daniel van Vugt
-
Fix more whitespace
- 3709. By Daniel van Vugt
-
Merge latest trunk
- 3708. By Daniel van Vugt
-
Merge latest trunk and fix conflicts
- 3707. By Daniel van Vugt
-
Merge latest trunk and fix a conflict
- 3706. By Daniel van Vugt
-
Merge latest trunk
- 3705. By Daniel van Vugt
-
Merge latest trunk
- 3704. By Daniel van Vugt
-
Remove another EOL whitespace
- 3703. By Daniel van Vugt
-
Merge latest trunk
- 3702. By Daniel van Vugt
-
Fix more whitespace
- 3701. By Daniel van Vugt
-
Merge latest trunk
Preview Diff
1 | === modified file 'COPYING.GPL' | |||
2 | --- COPYING.GPL 2013-03-04 15:57:30 +0000 | |||
3 | +++ COPYING.GPL 2016-10-27 03:52:22 +0000 | |||
4 | @@ -77,7 +77,7 @@ | |||
5 | 77 | 77 | ||
6 | 78 | "Copyright" also means copyright-like laws that apply to other kinds of | 78 | "Copyright" also means copyright-like laws that apply to other kinds of |
7 | 79 | works, such as semiconductor masks. | 79 | works, such as semiconductor masks. |
9 | 80 | 80 | ||
10 | 81 | "The Program" refers to any copyrightable work licensed under this | 81 | "The Program" refers to any copyrightable work licensed under this |
11 | 82 | License. Each licensee is addressed as "you". "Licensees" and | 82 | License. Each licensee is addressed as "you". "Licensees" and |
12 | 83 | "recipients" may be individuals or organizations. | 83 | "recipients" may be individuals or organizations. |
13 | @@ -510,7 +510,7 @@ | |||
14 | 510 | covered work in a country, or your recipient's use of the covered work | 510 | covered work in a country, or your recipient's use of the covered work |
15 | 511 | in a country, would infringe one or more identifiable patents in that | 511 | in a country, would infringe one or more identifiable patents in that |
16 | 512 | country that you have reason to believe are valid. | 512 | country that you have reason to believe are valid. |
18 | 513 | 513 | ||
19 | 514 | If, pursuant to or in connection with a single transaction or | 514 | If, pursuant to or in connection with a single transaction or |
20 | 515 | arrangement, you convey, or propagate by procuring conveyance of, a | 515 | arrangement, you convey, or propagate by procuring conveyance of, a |
21 | 516 | covered work, and grant a patent license to some of the parties | 516 | covered work, and grant a patent license to some of the parties |
22 | 517 | 517 | ||
23 | === modified file 'HACKING.md' | |||
24 | --- HACKING.md 2013-06-17 15:35:53 +0000 | |||
25 | +++ HACKING.md 2016-10-27 03:52:22 +0000 | |||
26 | @@ -90,7 +90,7 @@ | |||
27 | 90 | strong and no-throw guarantees. http://www.boost.org/community/exception_safety.html | 90 | strong and no-throw guarantees. http://www.boost.org/community/exception_safety.html |
28 | 91 | 91 | ||
29 | 92 | A function is not required to check its preconditions (there should be no | 92 | A function is not required to check its preconditions (there should be no |
31 | 93 | tests that preconditions failures are reported). This means that | 93 | tests that preconditions failures are reported). This means that |
32 | 94 | preconditions may be verified using the "assert" macro - which may or may | 94 | preconditions may be verified using the "assert" macro - which may or may |
33 | 95 | not report problems (depending upon the NDEBUG define). | 95 | not report problems (depending upon the NDEBUG define). |
34 | 96 | 96 | ||
35 | @@ -103,7 +103,7 @@ | |||
36 | 103 | expected to refer to valid objects. This avoids repetitive tests for | 103 | expected to refer to valid objects. This avoids repetitive tests for |
37 | 104 | validity. Unless otherwise documented functions and constructors that | 104 | validity. Unless otherwise documented functions and constructors that |
38 | 105 | take pointer parameters have validity of the referenced objects as a | 105 | take pointer parameters have validity of the referenced objects as a |
40 | 106 | precondition. Exceptions to the rule must be of limited scope and | 106 | precondition. Exceptions to the rule must be of limited scope and |
41 | 107 | documented. | 107 | documented. |
42 | 108 | 108 | ||
43 | 109 | 109 | ||
44 | 110 | 110 | ||
45 | === modified file 'benchmarks/frame-uniformity/CMakeLists.txt' | |||
46 | --- benchmarks/frame-uniformity/CMakeLists.txt 2016-08-19 07:49:12 +0000 | |||
47 | +++ benchmarks/frame-uniformity/CMakeLists.txt 2016-10-27 03:52:22 +0000 | |||
48 | @@ -36,7 +36,7 @@ | |||
49 | 36 | mirserver | 36 | mirserver |
50 | 37 | mirclient | 37 | mirclient |
51 | 38 | mirplatform | 38 | mirplatform |
53 | 39 | 39 | ||
54 | 40 | mir-test-assist | 40 | mir-test-assist |
55 | 41 | 41 | ||
56 | 42 | # needed for fake_event_hub_server_configuration.h (which relies on private APIs) | 42 | # needed for fake_event_hub_server_configuration.h (which relies on private APIs) |
57 | 43 | 43 | ||
58 | === modified file 'benchmarks/frame-uniformity/frame_uniformity_test.h' | |||
59 | --- benchmarks/frame-uniformity/frame_uniformity_test.h 2015-06-25 03:00:08 +0000 | |||
60 | +++ benchmarks/frame-uniformity/frame_uniformity_test.h 2016-10-27 03:52:22 +0000 | |||
61 | @@ -46,13 +46,13 @@ | |||
62 | 46 | public: | 46 | public: |
63 | 47 | FrameUniformityTest(FrameUniformityTestParameters const& parameters); | 47 | FrameUniformityTest(FrameUniformityTestParameters const& parameters); |
64 | 48 | virtual ~FrameUniformityTest() = default; | 48 | virtual ~FrameUniformityTest() = default; |
66 | 49 | 49 | ||
67 | 50 | mir::DefaultServerConfiguration& server_config() override; | 50 | mir::DefaultServerConfiguration& server_config() override; |
69 | 51 | 51 | ||
70 | 52 | void run_test(); | 52 | void run_test(); |
72 | 53 | 53 | ||
73 | 54 | std::shared_ptr<TouchSamples> client_results(); | 54 | std::shared_ptr<TouchSamples> client_results(); |
75 | 55 | 55 | ||
76 | 56 | TouchProducingServer::TouchTimings server_timings(); | 56 | TouchProducingServer::TouchTimings server_timings(); |
77 | 57 | 57 | ||
78 | 58 | private: | 58 | private: |
79 | 59 | 59 | ||
80 | === modified file 'benchmarks/frame-uniformity/main.cpp' | |||
81 | --- benchmarks/frame-uniformity/main.cpp 2015-04-28 07:54:10 +0000 | |||
82 | +++ benchmarks/frame-uniformity/main.cpp 2016-10-27 03:52:22 +0000 | |||
83 | @@ -46,7 +46,7 @@ | |||
84 | 46 | touch_start_time.time_since_epoch().count(); | 46 | touch_start_time.time_since_epoch().count(); |
85 | 47 | 47 | ||
86 | 48 | double alpha = elapsed_interval / total_interval; | 48 | double alpha = elapsed_interval / total_interval; |
88 | 49 | 49 | ||
89 | 50 | return touch_start + alpha*(touch_end-touch_start); | 50 | return touch_start + alpha*(touch_end-touch_start); |
90 | 51 | } | 51 | } |
91 | 52 | 52 | ||
92 | @@ -73,7 +73,7 @@ | |||
93 | 73 | double sum = 0; | 73 | double sum = 0; |
94 | 74 | for (auto const& sample : results) | 74 | for (auto const& sample : results) |
95 | 75 | { | 75 | { |
97 | 76 | auto distance = pixel_lag_for_sample_at_time(touch_start_point, touch_end_point, touch_start_time, | 76 | auto distance = pixel_lag_for_sample_at_time(touch_start_point, touch_end_point, touch_start_time, |
98 | 77 | touch_end_time, sample); | 77 | touch_end_time, sample); |
99 | 78 | sum += distance; | 78 | sum += distance; |
100 | 79 | } | 79 | } |
101 | @@ -93,11 +93,11 @@ | |||
102 | 93 | { | 93 | { |
103 | 94 | auto average_pixel_offset = compute_average_frame_offset(results, touch_start_point, touch_end_point, | 94 | auto average_pixel_offset = compute_average_frame_offset(results, touch_start_point, touch_end_point, |
104 | 95 | touch_start_time, touch_end_time); | 95 | touch_start_time, touch_end_time); |
106 | 96 | 96 | ||
107 | 97 | double sum = 0; | 97 | double sum = 0; |
108 | 98 | for (auto const& sample : results) | 98 | for (auto const& sample : results) |
109 | 99 | { | 99 | { |
111 | 100 | auto distance = pixel_lag_for_sample_at_time(touch_start_point, touch_end_point, touch_start_time, | 100 | auto distance = pixel_lag_for_sample_at_time(touch_start_point, touch_end_point, touch_start_time, |
112 | 101 | touch_end_time, sample); | 101 | touch_end_time, sample); |
113 | 102 | sum += (distance-average_pixel_offset)*(distance-average_pixel_offset); | 102 | sum += (distance-average_pixel_offset)*(distance-average_pixel_offset); |
114 | 103 | } | 103 | } |
115 | @@ -115,7 +115,7 @@ | |||
116 | 115 | geom::Point const touch_start_point{0, 0}; | 115 | geom::Point const touch_start_point{0, 0}; |
117 | 116 | geom::Point const touch_end_point{1024, 1024}; | 116 | geom::Point const touch_end_point{1024, 1024}; |
118 | 117 | std::chrono::milliseconds touch_duration{1000}; | 117 | std::chrono::milliseconds touch_duration{1000}; |
120 | 118 | 118 | ||
121 | 119 | int const run_count = 1; | 119 | int const run_count = 1; |
122 | 120 | double average_lag = 0, average_uniformity = 0; | 120 | double average_lag = 0, average_uniformity = 0; |
123 | 121 | 121 | ||
124 | @@ -123,13 +123,13 @@ | |||
125 | 123 | setenv("MIR_CLIENT_PLATFORM_PATH", | 123 | setenv("MIR_CLIENT_PLATFORM_PATH", |
126 | 124 | (mtf::library_path() + "/client-modules").c_str(), | 124 | (mtf::library_path() + "/client-modules").c_str(), |
127 | 125 | true); | 125 | true); |
129 | 126 | 126 | ||
130 | 127 | for (int i = 0; i < run_count; i++) | 127 | for (int i = 0; i < run_count; i++) |
131 | 128 | { | 128 | { |
132 | 129 | FrameUniformityTest t({screen_size, touch_start_point, touch_end_point, touch_duration}); | 129 | FrameUniformityTest t({screen_size, touch_start_point, touch_end_point, touch_duration}); |
133 | 130 | 130 | ||
134 | 131 | t.run_test(); | 131 | t.run_test(); |
136 | 132 | 132 | ||
137 | 133 | auto touch_timings = t.server_timings(); | 133 | auto touch_timings = t.server_timings(); |
138 | 134 | auto touch_start_time = touch_timings.touch_start; | 134 | auto touch_start_time = touch_timings.touch_start; |
139 | 135 | auto touch_end_time = touch_timings.touch_end; | 135 | auto touch_end_time = touch_timings.touch_end; |
140 | @@ -137,14 +137,14 @@ | |||
141 | 137 | 137 | ||
142 | 138 | auto results = compute_frame_uniformity(samples, touch_start_point, touch_end_point, | 138 | auto results = compute_frame_uniformity(samples, touch_start_point, touch_end_point, |
143 | 139 | touch_start_time, touch_end_time); | 139 | touch_start_time, touch_end_time); |
145 | 140 | 140 | ||
146 | 141 | average_lag += results.average_pixel_offset; | 141 | average_lag += results.average_pixel_offset; |
147 | 142 | average_uniformity += results.frame_uniformity; | 142 | average_uniformity += results.frame_uniformity; |
148 | 143 | } | 143 | } |
150 | 144 | 144 | ||
151 | 145 | average_lag /= run_count; | 145 | average_lag /= run_count; |
152 | 146 | average_uniformity /= run_count; | 146 | average_uniformity /= run_count; |
154 | 147 | 147 | ||
155 | 148 | std::cout << "Average pixel lag: " << average_lag << "px" << std::endl; | 148 | std::cout << "Average pixel lag: " << average_lag << "px" << std::endl; |
156 | 149 | std::cout << "Frame Uniformity (smaller scores are more uniform): " << average_uniformity << "px per sample\n" | 149 | std::cout << "Frame Uniformity (smaller scores are more uniform): " << average_uniformity << "px per sample\n" |
157 | 150 | << std::endl; | 150 | << std::endl; |
158 | 151 | 151 | ||
159 | === modified file 'benchmarks/frame-uniformity/touch_measuring_client.cpp' | |||
160 | --- benchmarks/frame-uniformity/touch_measuring_client.cpp 2015-06-17 05:20:42 +0000 | |||
161 | +++ benchmarks/frame-uniformity/touch_measuring_client.cpp 2016-10-27 03:52:22 +0000 | |||
162 | @@ -42,7 +42,7 @@ | |||
163 | 42 | 42 | ||
164 | 43 | auto surface = mir_surface_create_sync(spec); | 43 | auto surface = mir_surface_create_sync(spec); |
165 | 44 | mir_surface_spec_release(spec); | 44 | mir_surface_spec_release(spec); |
167 | 45 | 45 | ||
168 | 46 | if (!mir_surface_is_valid(surface)) | 46 | if (!mir_surface_is_valid(surface)) |
169 | 47 | { | 47 | { |
170 | 48 | std::cerr << "Surface creation failed: " << mir_surface_get_error_message(surface) << std::endl; | 48 | std::cerr << "Surface creation failed: " << mir_surface_get_error_message(surface) << std::endl; |
171 | @@ -55,14 +55,14 @@ | |||
172 | 55 | void input_callback(MirSurface * /* surface */, MirEvent const* event, void* context) | 55 | void input_callback(MirSurface * /* surface */, MirEvent const* event, void* context) |
173 | 56 | { | 56 | { |
174 | 57 | auto results = static_cast<TouchSamples*>(context); | 57 | auto results = static_cast<TouchSamples*>(context); |
176 | 58 | 58 | ||
177 | 59 | results->record_pointer_coordinates(std::chrono::high_resolution_clock::now(), *event); | 59 | results->record_pointer_coordinates(std::chrono::high_resolution_clock::now(), *event); |
178 | 60 | } | 60 | } |
179 | 61 | 61 | ||
180 | 62 | void collect_input_and_frame_timing(MirSurface *surface, mt::Barrier& client_ready, std::chrono::high_resolution_clock::duration duration, std::shared_ptr<TouchSamples> const& results) | 62 | void collect_input_and_frame_timing(MirSurface *surface, mt::Barrier& client_ready, std::chrono::high_resolution_clock::duration duration, std::shared_ptr<TouchSamples> const& results) |
181 | 63 | { | 63 | { |
182 | 64 | mir_surface_set_event_handler(surface, input_callback, results.get()); | 64 | mir_surface_set_event_handler(surface, input_callback, results.get()); |
184 | 65 | 65 | ||
185 | 66 | client_ready.ready(); | 66 | client_ready.ready(); |
186 | 67 | 67 | ||
187 | 68 | // May be better if end time were relative to the first input event | 68 | // May be better if end time were relative to the first input event |
188 | @@ -99,17 +99,17 @@ | |||
189 | 99 | std::cerr << "Connection to Mir failed: " << mir_connection_get_error_message(connection) << std::endl; | 99 | std::cerr << "Connection to Mir failed: " << mir_connection_get_error_message(connection) << std::endl; |
190 | 100 | exit(1); | 100 | exit(1); |
191 | 101 | } | 101 | } |
193 | 102 | 102 | ||
194 | 103 | /* | 103 | /* |
195 | 104 | * Set a null callback to avoid killing the process | 104 | * Set a null callback to avoid killing the process |
196 | 105 | * (default callback raises SIGHUP). | 105 | * (default callback raises SIGHUP). |
197 | 106 | */ | 106 | */ |
198 | 107 | mir_connection_set_lifecycle_event_callback(connection, null_lifecycle_callback, nullptr); | 107 | mir_connection_set_lifecycle_event_callback(connection, null_lifecycle_callback, nullptr); |
200 | 108 | 108 | ||
201 | 109 | auto surface = create_surface(connection); | 109 | auto surface = create_surface(connection); |
202 | 110 | 110 | ||
203 | 111 | collect_input_and_frame_timing(surface, client_ready, touch_duration, results_); | 111 | collect_input_and_frame_timing(surface, client_ready, touch_duration, results_); |
205 | 112 | 112 | ||
206 | 113 | mir_surface_release_sync(surface); | 113 | mir_surface_release_sync(surface); |
207 | 114 | mir_connection_release(connection); | 114 | mir_connection_release(connection); |
208 | 115 | } | 115 | } |
209 | 116 | 116 | ||
210 | === modified file 'benchmarks/frame-uniformity/touch_measuring_client.h' | |||
211 | --- benchmarks/frame-uniformity/touch_measuring_client.h 2015-06-25 03:00:08 +0000 | |||
212 | +++ benchmarks/frame-uniformity/touch_measuring_client.h 2016-10-27 03:52:22 +0000 | |||
213 | @@ -31,16 +31,16 @@ | |||
214 | 31 | public: | 31 | public: |
215 | 32 | TouchMeasuringClient(mir::test::Barrier& client_ready, | 32 | TouchMeasuringClient(mir::test::Barrier& client_ready, |
216 | 33 | std::chrono::high_resolution_clock::duration const& touch_duration); | 33 | std::chrono::high_resolution_clock::duration const& touch_duration); |
218 | 34 | 34 | ||
219 | 35 | void run(std::string const& connect_string); | 35 | void run(std::string const& connect_string); |
221 | 36 | 36 | ||
222 | 37 | std::shared_ptr<TouchSamples> results(); | 37 | std::shared_ptr<TouchSamples> results(); |
223 | 38 | 38 | ||
224 | 39 | private: | 39 | private: |
225 | 40 | mir::test::Barrier& client_ready; | 40 | mir::test::Barrier& client_ready; |
227 | 41 | 41 | ||
228 | 42 | std::chrono::high_resolution_clock::duration const touch_duration; | 42 | std::chrono::high_resolution_clock::duration const touch_duration; |
230 | 43 | 43 | ||
231 | 44 | std::shared_ptr<TouchSamples> results_; | 44 | std::shared_ptr<TouchSamples> results_; |
232 | 45 | }; | 45 | }; |
233 | 46 | 46 | ||
234 | 47 | 47 | ||
235 | === modified file 'benchmarks/frame-uniformity/touch_producing_server.cpp' | |||
236 | --- benchmarks/frame-uniformity/touch_producing_server.cpp 2016-01-29 08:18:22 +0000 | |||
237 | +++ benchmarks/frame-uniformity/touch_producing_server.cpp 2016-10-27 03:52:22 +0000 | |||
238 | @@ -61,7 +61,7 @@ | |||
239 | 61 | 61 | ||
240 | 62 | if (!graphics_platform) | 62 | if (!graphics_platform) |
241 | 63 | graphics_platform = std::make_shared<VsyncSimulatingPlatform>(screen_dimensions.size, refresh_rate_in_hz); | 63 | graphics_platform = std::make_shared<VsyncSimulatingPlatform>(screen_dimensions.size, refresh_rate_in_hz); |
243 | 64 | 64 | ||
244 | 65 | return graphics_platform; | 65 | return graphics_platform; |
245 | 66 | } | 66 | } |
246 | 67 | 67 | ||
247 | @@ -86,7 +86,7 @@ | |||
248 | 86 | std::chrono::milliseconds const pause_between_events{10}; | 86 | std::chrono::milliseconds const pause_between_events{10}; |
249 | 87 | 87 | ||
250 | 88 | client_ready.ready(); | 88 | client_ready.ready(); |
252 | 89 | 89 | ||
253 | 90 | auto start = std::chrono::high_resolution_clock::now(); | 90 | auto start = std::chrono::high_resolution_clock::now(); |
254 | 91 | auto end = start + touch_duration; | 91 | auto end = start + touch_duration; |
255 | 92 | auto now = start; | 92 | auto now = start; |
256 | @@ -100,7 +100,7 @@ | |||
257 | 100 | if (touch_start_time == std::chrono::high_resolution_clock::time_point::min()) | 100 | if (touch_start_time == std::chrono::high_resolution_clock::time_point::min()) |
258 | 101 | touch_start_time = now; | 101 | touch_start_time = now; |
259 | 102 | touch_end_time = now; | 102 | touch_end_time = now; |
261 | 103 | 103 | ||
262 | 104 | double alpha = (now.time_since_epoch().count()-start.time_since_epoch().count()) / static_cast<double>(end.time_since_epoch().count()-start.time_since_epoch().count()); | 104 | double alpha = (now.time_since_epoch().count()-start.time_since_epoch().count()) / static_cast<double>(end.time_since_epoch().count()-start.time_since_epoch().count()); |
263 | 105 | auto point = touch_start + alpha*(touch_end-touch_start); | 105 | auto point = touch_start + alpha*(touch_end-touch_start); |
264 | 106 | synthesize_event_at(point); | 106 | synthesize_event_at(point); |
265 | 107 | 107 | ||
266 | === modified file 'benchmarks/frame-uniformity/touch_producing_server.h' | |||
267 | --- benchmarks/frame-uniformity/touch_producing_server.h 2016-01-29 08:18:22 +0000 | |||
268 | +++ benchmarks/frame-uniformity/touch_producing_server.h 2016-10-27 03:52:22 +0000 | |||
269 | @@ -32,16 +32,16 @@ | |||
270 | 32 | { | 32 | { |
271 | 33 | public: | 33 | public: |
272 | 34 | TouchProducingServer(mir::geometry::Rectangle screen_dimensions, mir::geometry::Point touch_start, mir::geometry::Point touch_end, std::chrono::high_resolution_clock::duration touch_duration, mir::test::Barrier& client_ready); | 34 | TouchProducingServer(mir::geometry::Rectangle screen_dimensions, mir::geometry::Point touch_start, mir::geometry::Point touch_end, std::chrono::high_resolution_clock::duration touch_duration, mir::test::Barrier& client_ready); |
274 | 35 | 35 | ||
275 | 36 | struct TouchTimings { | 36 | struct TouchTimings { |
276 | 37 | std::chrono::high_resolution_clock::time_point touch_start; | 37 | std::chrono::high_resolution_clock::time_point touch_start; |
277 | 38 | std::chrono::high_resolution_clock::time_point touch_end; | 38 | std::chrono::high_resolution_clock::time_point touch_end; |
278 | 39 | }; | 39 | }; |
279 | 40 | TouchTimings touch_timings(); | 40 | TouchTimings touch_timings(); |
281 | 41 | 41 | ||
282 | 42 | std::shared_ptr<mir::graphics::Platform> the_graphics_platform() override; | 42 | std::shared_ptr<mir::graphics::Platform> the_graphics_platform() override; |
283 | 43 | 43 | ||
285 | 44 | ~TouchProducingServer(); | 44 | ~TouchProducingServer(); |
286 | 45 | private: | 45 | private: |
287 | 46 | mir::geometry::Rectangle const screen_dimensions; | 46 | mir::geometry::Rectangle const screen_dimensions; |
288 | 47 | 47 | ||
289 | @@ -50,14 +50,14 @@ | |||
290 | 50 | std::chrono::high_resolution_clock::duration const touch_duration; | 50 | std::chrono::high_resolution_clock::duration const touch_duration; |
291 | 51 | 51 | ||
292 | 52 | mir::test::Barrier& client_ready; | 52 | mir::test::Barrier& client_ready; |
294 | 53 | 53 | ||
295 | 54 | std::thread input_injection_thread; | 54 | std::thread input_injection_thread; |
297 | 55 | 55 | ||
298 | 56 | std::chrono::high_resolution_clock::time_point touch_start_time; | 56 | std::chrono::high_resolution_clock::time_point touch_start_time; |
299 | 57 | std::chrono::high_resolution_clock::time_point touch_end_time; | 57 | std::chrono::high_resolution_clock::time_point touch_end_time; |
301 | 58 | 58 | ||
302 | 59 | std::shared_ptr<mir::graphics::Platform> graphics_platform; | 59 | std::shared_ptr<mir::graphics::Platform> graphics_platform; |
304 | 60 | 60 | ||
305 | 61 | void synthesize_event_at(mir::geometry::Point const& point); | 61 | void synthesize_event_at(mir::geometry::Point const& point); |
306 | 62 | void thread_function(); | 62 | void thread_function(); |
307 | 63 | 63 | ||
308 | 64 | 64 | ||
309 | === modified file 'benchmarks/frame-uniformity/touch_samples.cpp' | |||
310 | --- benchmarks/frame-uniformity/touch_samples.cpp 2015-06-17 05:20:42 +0000 | |||
311 | +++ benchmarks/frame-uniformity/touch_samples.cpp 2016-10-27 03:52:22 +0000 | |||
312 | @@ -28,7 +28,7 @@ | |||
313 | 28 | } | 28 | } |
314 | 29 | samples_being_prepared.clear(); | 29 | samples_being_prepared.clear(); |
315 | 30 | } | 30 | } |
317 | 31 | 31 | ||
318 | 32 | void TouchSamples::record_pointer_coordinates(std::chrono::high_resolution_clock::time_point reception_time, | 32 | void TouchSamples::record_pointer_coordinates(std::chrono::high_resolution_clock::time_point reception_time, |
319 | 33 | MirEvent const& event) | 33 | MirEvent const& event) |
320 | 34 | { | 34 | { |
321 | 35 | 35 | ||
322 | === modified file 'benchmarks/frame-uniformity/touch_samples.h' | |||
323 | --- benchmarks/frame-uniformity/touch_samples.h 2014-10-22 14:08:51 +0000 | |||
324 | +++ benchmarks/frame-uniformity/touch_samples.h 2016-10-27 03:52:22 +0000 | |||
325 | @@ -30,7 +30,7 @@ | |||
326 | 30 | public: | 30 | public: |
327 | 31 | TouchSamples() = default; | 31 | TouchSamples() = default; |
328 | 32 | ~TouchSamples() = default; | 32 | ~TouchSamples() = default; |
330 | 33 | 33 | ||
331 | 34 | // A touch sample | 34 | // A touch sample |
332 | 35 | struct Sample | 35 | struct Sample |
333 | 36 | { | 36 | { |
334 | @@ -43,7 +43,7 @@ | |||
335 | 43 | std::chrono::high_resolution_clock::time_point frame_time; | 43 | std::chrono::high_resolution_clock::time_point frame_time; |
336 | 44 | }; | 44 | }; |
337 | 45 | std::vector<Sample> get(); | 45 | std::vector<Sample> get(); |
339 | 46 | 46 | ||
340 | 47 | void record_frame_time(std::chrono::high_resolution_clock::time_point time); | 47 | void record_frame_time(std::chrono::high_resolution_clock::time_point time); |
341 | 48 | void record_pointer_coordinates(std::chrono::high_resolution_clock::time_point reception_time, | 48 | void record_pointer_coordinates(std::chrono::high_resolution_clock::time_point reception_time, |
342 | 49 | MirEvent const& ev); | 49 | MirEvent const& ev); |
343 | 50 | 50 | ||
344 | === modified file 'benchmarks/frame-uniformity/vsync_simulating_graphics_platform.cpp' | |||
345 | --- benchmarks/frame-uniformity/vsync_simulating_graphics_platform.cpp 2016-01-29 08:18:22 +0000 | |||
346 | +++ benchmarks/frame-uniformity/vsync_simulating_graphics_platform.cpp 2016-10-27 03:52:22 +0000 | |||
347 | @@ -54,10 +54,10 @@ | |||
348 | 54 | { | 54 | { |
349 | 55 | auto now = std::chrono::high_resolution_clock::now(); | 55 | auto now = std::chrono::high_resolution_clock::now(); |
350 | 56 | auto next_sync = last_sync + std::chrono::seconds(1) / vsync_rate_in_hz; | 56 | auto next_sync = last_sync + std::chrono::seconds(1) / vsync_rate_in_hz; |
352 | 57 | 57 | ||
353 | 58 | if (now < next_sync) | 58 | if (now < next_sync) |
354 | 59 | std::this_thread::sleep_for(next_sync - now); | 59 | std::this_thread::sleep_for(next_sync - now); |
356 | 60 | 60 | ||
357 | 61 | last_sync = now; | 61 | last_sync = now; |
358 | 62 | } | 62 | } |
359 | 63 | 63 | ||
360 | @@ -65,7 +65,7 @@ | |||
361 | 65 | { | 65 | { |
362 | 66 | return std::chrono::milliseconds::zero(); | 66 | return std::chrono::milliseconds::zero(); |
363 | 67 | } | 67 | } |
365 | 68 | 68 | ||
366 | 69 | double const vsync_rate_in_hz; | 69 | double const vsync_rate_in_hz; |
367 | 70 | 70 | ||
368 | 71 | std::chrono::high_resolution_clock::time_point last_sync; | 71 | std::chrono::high_resolution_clock::time_point last_sync; |
369 | @@ -80,7 +80,7 @@ | |||
370 | 80 | group(output_size, vsync_rate_in_hz) | 80 | group(output_size, vsync_rate_in_hz) |
371 | 81 | { | 81 | { |
372 | 82 | } | 82 | } |
374 | 83 | 83 | ||
375 | 84 | void for_each_display_sync_group(std::function<void(mg::DisplaySyncGroup&)> const& exec) override | 84 | void for_each_display_sync_group(std::function<void(mg::DisplaySyncGroup&)> const& exec) override |
376 | 85 | { | 85 | { |
377 | 86 | exec(group); | 86 | exec(group); |
378 | 87 | 87 | ||
379 | === modified file 'benchmarks/frame-uniformity/vsync_simulating_graphics_platform.h' | |||
380 | --- benchmarks/frame-uniformity/vsync_simulating_graphics_platform.h 2016-01-29 08:18:22 +0000 | |||
381 | +++ benchmarks/frame-uniformity/vsync_simulating_graphics_platform.h 2016-10-27 03:52:22 +0000 | |||
382 | @@ -29,13 +29,13 @@ | |||
383 | 29 | public: | 29 | public: |
384 | 30 | VsyncSimulatingPlatform(mir::geometry::Size const& output_size, int vsync_rate_in_hz); | 30 | VsyncSimulatingPlatform(mir::geometry::Size const& output_size, int vsync_rate_in_hz); |
385 | 31 | ~VsyncSimulatingPlatform() = default; | 31 | ~VsyncSimulatingPlatform() = default; |
387 | 32 | 32 | ||
388 | 33 | mir::UniqueModulePtr<mir::graphics::GraphicBufferAllocator> create_buffer_allocator(); | 33 | mir::UniqueModulePtr<mir::graphics::GraphicBufferAllocator> create_buffer_allocator(); |
390 | 34 | 34 | ||
391 | 35 | mir::UniqueModulePtr<mir::graphics::Display> create_display( | 35 | mir::UniqueModulePtr<mir::graphics::Display> create_display( |
392 | 36 | std::shared_ptr<mir::graphics::DisplayConfigurationPolicy> const& initial_conf_policy, | 36 | std::shared_ptr<mir::graphics::DisplayConfigurationPolicy> const& initial_conf_policy, |
393 | 37 | std::shared_ptr<mir::graphics::GLConfig> const& gl_config); | 37 | std::shared_ptr<mir::graphics::GLConfig> const& gl_config); |
395 | 38 | 38 | ||
396 | 39 | mir::UniqueModulePtr<mir::graphics::PlatformIpcOperations> make_ipc_operations() const; | 39 | mir::UniqueModulePtr<mir::graphics::PlatformIpcOperations> make_ipc_operations() const; |
397 | 40 | 40 | ||
398 | 41 | private: | 41 | private: |
399 | 42 | 42 | ||
400 | === modified file 'benchmarks/touch_event_latency.py' | |||
401 | --- benchmarks/touch_event_latency.py 2015-07-02 14:40:40 +0000 | |||
402 | +++ benchmarks/touch_event_latency.py 2016-10-27 03:52:22 +0000 | |||
403 | @@ -25,7 +25,7 @@ | |||
404 | 25 | evdev.ecodes.BTN_TOUCH, | 25 | evdev.ecodes.BTN_TOUCH, |
405 | 26 | ] | 26 | ] |
406 | 27 | } | 27 | } |
408 | 28 | 28 | ||
409 | 29 | self.ui = evdev.UInput(events=allowed_events, name="autopilot-finger") | 29 | self.ui = evdev.UInput(events=allowed_events, name="autopilot-finger") |
410 | 30 | 30 | ||
411 | 31 | def get_resolution(self): | 31 | def get_resolution(self): |
412 | 32 | 32 | ||
413 | === modified file 'cmake/ABICheck.cmake' | |||
414 | --- cmake/ABICheck.cmake 2016-07-18 07:38:38 +0000 | |||
415 | +++ cmake/ABICheck.cmake 2016-10-27 03:52:22 +0000 | |||
416 | @@ -50,11 +50,11 @@ | |||
417 | 50 | cmake_policy(SET CMP0026 OLD) | 50 | cmake_policy(SET CMP0026 OLD) |
418 | 51 | endif() | 51 | endif() |
419 | 52 | get_property(LIB_DESC_LIBS TARGET ${libname} PROPERTY LOCATION) | 52 | get_property(LIB_DESC_LIBS TARGET ${libname} PROPERTY LOCATION) |
421 | 53 | 53 | ||
422 | 54 | get_includes(${libname} LIB_DESC_INCLUDE_PATHS) | 54 | get_includes(${libname} LIB_DESC_INCLUDE_PATHS) |
423 | 55 | set(LIB_DESC_GCC_OPTS "${CMAKE_CXX_FLAGS}") | 55 | set(LIB_DESC_GCC_OPTS "${CMAKE_CXX_FLAGS}") |
424 | 56 | 56 | ||
426 | 57 | # Optional EXCLUDE_HEADERS - a list | 57 | # Optional EXCLUDE_HEADERS - a list |
427 | 58 | # while attempting an abi dump | 58 | # while attempting an abi dump |
428 | 59 | get_value_for_key("${ARGN}" "EXCLUDE_HEADERS" LIB_DESC_SKIP_HEADERS) | 59 | get_value_for_key("${ARGN}" "EXCLUDE_HEADERS" LIB_DESC_SKIP_HEADERS) |
429 | 60 | 60 | ||
430 | @@ -90,8 +90,8 @@ | |||
431 | 90 | add_custom_target(abi-dump-${libname} DEPENDS ${ABI_DUMP_NAME}) | 90 | add_custom_target(abi-dump-${libname} DEPENDS ${ABI_DUMP_NAME}) |
432 | 91 | endmacro(_define_abi_dump_for) | 91 | endmacro(_define_abi_dump_for) |
433 | 92 | 92 | ||
436 | 93 | macro(_define_abi_check_for libname) | 93 | macro(_define_abi_check_for libname) |
437 | 94 | add_custom_target(abi-check-${libname} | 94 | add_custom_target(abi-check-${libname} |
438 | 95 | COMMAND /bin/bash -c '${CMAKE_SOURCE_DIR}/tools/abi_check.sh ${libname} ${ABI_DUMPS_DIR} ${CMAKE_SOURCE_DIR}' | 95 | COMMAND /bin/bash -c '${CMAKE_SOURCE_DIR}/tools/abi_check.sh ${libname} ${ABI_DUMPS_DIR} ${CMAKE_SOURCE_DIR}' |
439 | 96 | DEPENDS abi-dump-${libname} | 96 | DEPENDS abi-dump-${libname} |
440 | 97 | ) | 97 | ) |
441 | 98 | 98 | ||
442 | === modified file 'cmake/Debian.cmake' | |||
443 | --- cmake/Debian.cmake 2012-11-12 12:27:40 +0000 | |||
444 | +++ cmake/Debian.cmake 2016-10-27 03:52:22 +0000 | |||
445 | @@ -9,13 +9,13 @@ | |||
446 | 9 | OUTPUT_VARIABLE DPKG_BUILDFLAGS_CFLAGS | 9 | OUTPUT_VARIABLE DPKG_BUILDFLAGS_CFLAGS |
447 | 10 | OUTPUT_STRIP_TRAILING_WHITESPACE | 10 | OUTPUT_STRIP_TRAILING_WHITESPACE |
448 | 11 | ) | 11 | ) |
450 | 12 | 12 | ||
451 | 13 | execute_process( | 13 | execute_process( |
452 | 14 | COMMAND ${DPKG_BUILDFLAGS} "--get" "CPPFLAGS" | 14 | COMMAND ${DPKG_BUILDFLAGS} "--get" "CPPFLAGS" |
453 | 15 | OUTPUT_VARIABLE DPKG_BUILDFLAGS_CPPFLAGS | 15 | OUTPUT_VARIABLE DPKG_BUILDFLAGS_CPPFLAGS |
454 | 16 | OUTPUT_STRIP_TRAILING_WHITESPACE | 16 | OUTPUT_STRIP_TRAILING_WHITESPACE |
455 | 17 | ) | 17 | ) |
457 | 18 | 18 | ||
458 | 19 | execute_process( | 19 | execute_process( |
459 | 20 | COMMAND ${DPKG_BUILDFLAGS} "--get" "CXXFLAGS" | 20 | COMMAND ${DPKG_BUILDFLAGS} "--get" "CXXFLAGS" |
460 | 21 | OUTPUT_VARIABLE DPKG_BUILDFLAGS_CXXFLAGS | 21 | OUTPUT_VARIABLE DPKG_BUILDFLAGS_CXXFLAGS |
461 | 22 | 22 | ||
462 | === modified file 'cmake/FindBoost.cmake' | |||
463 | --- cmake/FindBoost.cmake 2012-08-10 10:05:29 +0000 | |||
464 | +++ cmake/FindBoost.cmake 2016-10-27 03:52:22 +0000 | |||
465 | @@ -1194,7 +1194,7 @@ | |||
466 | 1194 | set(Boost_LIBRARIES ${Boost_LIBRARIES} ${Boost_${UPPERCOMPONENT}_LIBRARY}) | 1194 | set(Boost_LIBRARIES ${Boost_LIBRARIES} ${Boost_${UPPERCOMPONENT}_LIBRARY}) |
467 | 1195 | if(${UPPERCOMPONENT} STREQUAL "THREAD" AND UNIX) | 1195 | if(${UPPERCOMPONENT} STREQUAL "THREAD" AND UNIX) |
468 | 1196 | find_package (Threads) | 1196 | find_package (Threads) |
470 | 1197 | set(Boost_LIBRARIES | 1197 | set(Boost_LIBRARIES |
471 | 1198 | ${Boost_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT}) | 1198 | ${Boost_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT}) |
472 | 1199 | endif(${UPPERCOMPONENT} STREQUAL "THREAD" AND UNIX) | 1199 | endif(${UPPERCOMPONENT} STREQUAL "THREAD" AND UNIX) |
473 | 1200 | endif( Boost_${UPPERCOMPONENT}_FOUND ) | 1200 | endif( Boost_${UPPERCOMPONENT}_FOUND ) |
474 | 1201 | 1201 | ||
475 | === modified file 'cmake/FindLcov.cmake' | |||
476 | --- cmake/FindLcov.cmake 2012-07-26 07:03:35 +0000 | |||
477 | +++ cmake/FindLcov.cmake 2016-10-27 03:52:22 +0000 | |||
478 | @@ -1,4 +1,4 @@ | |||
480 | 1 | # - Find lcov | 1 | # - Find lcov |
481 | 2 | # Will define: | 2 | # Will define: |
482 | 3 | # | 3 | # |
483 | 4 | # LCOV_EXECUTABLE - the lcov binary | 4 | # LCOV_EXECUTABLE - the lcov binary |
484 | 5 | 5 | ||
485 | === modified file 'cmake/FindLibHardware.cmake' | |||
486 | --- cmake/FindLibHardware.cmake 2016-07-18 07:38:38 +0000 | |||
487 | +++ cmake/FindLibHardware.cmake 2016-10-27 03:52:22 +0000 | |||
488 | @@ -12,7 +12,7 @@ | |||
489 | 12 | 12 | ||
490 | 13 | find_library(LIBHARDWARE_LIBRARY | 13 | find_library(LIBHARDWARE_LIBRARY |
491 | 14 | NAMES libhardware.so.2 | 14 | NAMES libhardware.so.2 |
493 | 15 | libhardware.so | 15 | libhardware.so |
494 | 16 | ) | 16 | ) |
495 | 17 | 17 | ||
496 | 18 | set(LIBHARDWARE_LIBRARIES ${LIBHARDWARE_LIBRARY}) | 18 | set(LIBHARDWARE_LIBRARIES ${LIBHARDWARE_LIBRARY}) |
497 | 19 | 19 | ||
498 | === modified file 'cmake/Findgcovr.cmake' | |||
499 | --- cmake/Findgcovr.cmake 2012-07-26 07:03:35 +0000 | |||
500 | +++ cmake/Findgcovr.cmake 2016-10-27 03:52:22 +0000 | |||
501 | @@ -1,4 +1,4 @@ | |||
503 | 1 | # - Find gcovr scrip | 1 | # - Find gcovr scrip |
504 | 2 | # Will define: | 2 | # Will define: |
505 | 3 | # | 3 | # |
506 | 4 | # GCOVR_EXECUTABLE - the gcovr script | 4 | # GCOVR_EXECUTABLE - the gcovr script |
507 | 5 | 5 | ||
508 | === modified file 'cmake/MirCommon.cmake' | |||
509 | --- cmake/MirCommon.cmake 2016-08-10 07:57:05 +0000 | |||
510 | +++ cmake/MirCommon.cmake 2016-10-27 03:52:22 +0000 | |||
511 | @@ -79,7 +79,7 @@ | |||
512 | 79 | set(TSAN_EXTRA_OPTIONS "external_symbolizer_path=${LLVM_SYMBOLIZER}") | 79 | set(TSAN_EXTRA_OPTIONS "external_symbolizer_path=${LLVM_SYMBOLIZER}") |
513 | 80 | endif() | 80 | endif() |
514 | 81 | endif() | 81 | endif() |
516 | 82 | # Space after ${TSAN_EXTRA_OPTIONS} works around bug in TSAN env. variable parsing | 82 | # Space after ${TSAN_EXTRA_OPTIONS} works around bug in TSAN env. variable parsing |
517 | 83 | list(APPEND test_env "TSAN_OPTIONS=\"suppressions=${CMAKE_SOURCE_DIR}/tools/tsan-suppressions second_deadlock_stack=1 halt_on_error=1 history_size=7 die_after_fork=0 ${TSAN_EXTRA_OPTIONS} \"") | 83 | list(APPEND test_env "TSAN_OPTIONS=\"suppressions=${CMAKE_SOURCE_DIR}/tools/tsan-suppressions second_deadlock_stack=1 halt_on_error=1 history_size=7 die_after_fork=0 ${TSAN_EXTRA_OPTIONS} \"") |
518 | 84 | # TSan does not support starting threads after fork | 84 | # TSan does not support starting threads after fork |
519 | 85 | set(test_exclusion_filter "${test_exclusion_filter}:ThreadedDispatcherSignalTest.keeps_dispatching_after_signal_interruption") | 85 | set(test_exclusion_filter "${test_exclusion_filter}:ThreadedDispatcherSignalTest.keeps_dispatching_after_signal_interruption") |
520 | 86 | 86 | ||
521 | === modified file 'cmake/ParseArguments.cmake' | |||
522 | --- cmake/ParseArguments.cmake 2012-07-26 07:03:35 +0000 | |||
523 | +++ cmake/ParseArguments.cmake 2016-10-27 03:52:22 +0000 | |||
524 | @@ -18,29 +18,29 @@ | |||
525 | 18 | # * ARG_OPTION2: TRUE | 18 | # * ARG_OPTION2: TRUE |
526 | 19 | # * ARG_OPTION3: TRUE | 19 | # * ARG_OPTION3: TRUE |
527 | 20 | # | 20 | # |
529 | 21 | # taken from http://www.cmake.org/Wiki/CMakeMacroParseArguments | 21 | # taken from http://www.cmake.org/Wiki/CMakeMacroParseArguments |
530 | 22 | 22 | ||
531 | 23 | MACRO(PARSE_ARGUMENTS prefix arg_names option_names) | 23 | MACRO(PARSE_ARGUMENTS prefix arg_names option_names) |
532 | 24 | SET(DEFAULT_ARGS) | 24 | SET(DEFAULT_ARGS) |
534 | 25 | FOREACH(arg_name ${arg_names}) | 25 | FOREACH(arg_name ${arg_names}) |
535 | 26 | SET(${prefix}_${arg_name}) | 26 | SET(${prefix}_${arg_name}) |
536 | 27 | ENDFOREACH(arg_name) | 27 | ENDFOREACH(arg_name) |
537 | 28 | FOREACH(option ${option_names}) | 28 | FOREACH(option ${option_names}) |
538 | 29 | SET(${prefix}_${option} FALSE) | 29 | SET(${prefix}_${option} FALSE) |
539 | 30 | ENDFOREACH(option) | 30 | ENDFOREACH(option) |
541 | 31 | 31 | ||
542 | 32 | SET(current_arg_name DEFAULT_ARGS) | 32 | SET(current_arg_name DEFAULT_ARGS) |
543 | 33 | SET(current_arg_list) | 33 | SET(current_arg_list) |
547 | 34 | FOREACH(arg ${ARGN}) | 34 | FOREACH(arg ${ARGN}) |
548 | 35 | SET(larg_names ${arg_names}) | 35 | SET(larg_names ${arg_names}) |
549 | 36 | LIST(FIND larg_names "${arg}" is_arg_name) | 36 | LIST(FIND larg_names "${arg}" is_arg_name) |
550 | 37 | IF (is_arg_name GREATER -1) | 37 | IF (is_arg_name GREATER -1) |
551 | 38 | SET(${prefix}_${current_arg_name} ${current_arg_list}) | 38 | SET(${prefix}_${current_arg_name} ${current_arg_list}) |
552 | 39 | SET(current_arg_name ${arg}) | 39 | SET(current_arg_name ${arg}) |
553 | 40 | SET(current_arg_list) | 40 | SET(current_arg_list) |
554 | 41 | ELSE (is_arg_name GREATER -1) | 41 | ELSE (is_arg_name GREATER -1) |
557 | 42 | SET(loption_names ${option_names}) | 42 | SET(loption_names ${option_names}) |
558 | 43 | LIST(FIND loption_names "${arg}" is_option) | 43 | LIST(FIND loption_names "${arg}" is_option) |
559 | 44 | IF (is_option GREATER -1) | 44 | IF (is_option GREATER -1) |
560 | 45 | SET(${prefix}_${arg} TRUE) | 45 | SET(${prefix}_${arg} TRUE) |
561 | 46 | ELSE (is_option GREATER -1) | 46 | ELSE (is_option GREATER -1) |
562 | 47 | 47 | ||
563 | === modified file 'cross-compile-chroot.sh' | |||
564 | --- cross-compile-chroot.sh 2016-08-09 08:13:02 +0000 | |||
565 | +++ cross-compile-chroot.sh 2016-10-27 03:52:22 +0000 | |||
566 | @@ -22,7 +22,7 @@ | |||
567 | 22 | NUM_JOBS=$(( $(grep -c ^processor /proc/cpuinfo) + 1 )) | 22 | NUM_JOBS=$(( $(grep -c ^processor /proc/cpuinfo) + 1 )) |
568 | 23 | _do_update_chroot=0 | 23 | _do_update_chroot=0 |
569 | 24 | 24 | ||
571 | 25 | # Default to vivid as we don't seem to have any working wily devices right now | 25 | # Default to vivid as we don't seem to have any working wily devices right now |
572 | 26 | dist=vivid | 26 | dist=vivid |
573 | 27 | clean=0 | 27 | clean=0 |
574 | 28 | update_build_dir=0 | 28 | update_build_dir=0 |
575 | @@ -84,12 +84,12 @@ | |||
576 | 84 | export MIR_NDK_PATH=~/.cache/mir-${target_arch}-chroot-${dist} | 84 | export MIR_NDK_PATH=~/.cache/mir-${target_arch}-chroot-${dist} |
577 | 85 | fi | 85 | fi |
578 | 86 | 86 | ||
580 | 87 | if [ ! -d ${MIR_NDK_PATH} ]; then | 87 | if [ ! -d ${MIR_NDK_PATH} ]; then |
581 | 88 | echo "no partial chroot dir detected. attempting to create one" | 88 | echo "no partial chroot dir detected. attempting to create one" |
582 | 89 | _do_update_chroot=1 | 89 | _do_update_chroot=1 |
583 | 90 | fi | 90 | fi |
584 | 91 | 91 | ||
586 | 92 | if [ ! -d ${BUILD_DIR} ]; then | 92 | if [ ! -d ${BUILD_DIR} ]; then |
587 | 93 | mkdir ${BUILD_DIR} | 93 | mkdir ${BUILD_DIR} |
588 | 94 | fi | 94 | fi |
589 | 95 | 95 | ||
590 | @@ -157,7 +157,7 @@ | |||
591 | 157 | clean_build_dir ${BUILD_DIR} | 157 | clean_build_dir ${BUILD_DIR} |
592 | 158 | fi | 158 | fi |
593 | 159 | 159 | ||
595 | 160 | pushd ${BUILD_DIR} > /dev/null | 160 | pushd ${BUILD_DIR} > /dev/null |
596 | 161 | 161 | ||
597 | 162 | export PKG_CONFIG_PATH="${MIR_NDK_PATH}/usr/lib/pkgconfig:${MIR_NDK_PATH}/usr/lib/${target_machine}/pkgconfig" | 162 | export PKG_CONFIG_PATH="${MIR_NDK_PATH}/usr/lib/pkgconfig:${MIR_NDK_PATH}/usr/lib/${target_machine}/pkgconfig" |
598 | 163 | export PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 | 163 | export PKG_CONFIG_ALLOW_SYSTEM_CFLAGS=1 |
599 | @@ -171,8 +171,8 @@ | |||
600 | 171 | cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/LinuxCrossCompile.cmake \ | 171 | cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/LinuxCrossCompile.cmake \ |
601 | 172 | -DMIR_PLATFORM=${mir_platform} -DMIR_ENABLE_TESTS=${enable_tests}\ | 172 | -DMIR_PLATFORM=${mir_platform} -DMIR_ENABLE_TESTS=${enable_tests}\ |
602 | 173 | -DMIR_USE_PRECOMPILED_HEADERS=OFF \ | 173 | -DMIR_USE_PRECOMPILED_HEADERS=OFF \ |
604 | 174 | .. | 174 | .. |
605 | 175 | 175 | ||
606 | 176 | make -j${NUM_JOBS} $@ | 176 | make -j${NUM_JOBS} $@ |
607 | 177 | 177 | ||
609 | 178 | popd > /dev/null | 178 | popd > /dev/null |
610 | 179 | 179 | ||
611 | === modified file 'debian/changelog' | |||
612 | --- debian/changelog 2016-08-25 08:16:10 +0000 | |||
613 | +++ debian/changelog 2016-10-27 03:52:22 +0000 | |||
614 | @@ -92,9 +92,9 @@ | |||
615 | 92 | . ftbfs in linking libmir-test-assist.a in xenial+overlay and | 92 | . ftbfs in linking libmir-test-assist.a in xenial+overlay and |
616 | 93 | yakkety+overlay (LP: #1601810) | 93 | yakkety+overlay (LP: #1601810) |
617 | 94 | . [testsfail] failure in NestedInput.on_input_device_state_nested_* | 94 | . [testsfail] failure in NestedInput.on_input_device_state_nested_* |
619 | 95 | (LP: #1602646) | 95 | (LP: #1602646) |
620 | 96 | . mirtest-dev provides an incorrect .pc file (LP: #1603080) | 96 | . mirtest-dev provides an incorrect .pc file (LP: #1603080) |
622 | 97 | . mir_test_framework::server_platform_path(), | 97 | . mir_test_framework::server_platform_path(), |
623 | 98 | mir_test_framework::server_platform() don't support use in a downstream | 98 | mir_test_framework::server_platform() don't support use in a downstream |
624 | 99 | test built against mir-test-assist (LP: #1603091) | 99 | test built against mir-test-assist (LP: #1603091) |
625 | 100 | . Servers based on Mir need a hook to execute code when the server is | 100 | . Servers based on Mir need a hook to execute code when the server is |
626 | @@ -105,7 +105,7 @@ | |||
627 | 105 | count, fixing dpi to 25.4 (LP: #1596051) | 105 | count, fixing dpi to 25.4 (LP: #1596051) |
628 | 106 | . Mir build and test failures with gcc-6 and LTO (LP: #1610215) | 106 | . Mir build and test failures with gcc-6 and LTO (LP: #1610215) |
629 | 107 | . [regression] Trust prompt not shown when starting camera (LP: #1612256) | 107 | . [regression] Trust prompt not shown when starting camera (LP: #1612256) |
631 | 108 | 108 | ||
632 | 109 | -- Kevin DuBois <kevin.dubois@canonical.com> Mon, 15 Aug 2016 16:29:03 +0000 | 109 | -- Kevin DuBois <kevin.dubois@canonical.com> Mon, 15 Aug 2016 16:29:03 +0000 |
633 | 110 | 110 | ||
634 | 111 | mir (0.23.5+16.10.20160729-0ubuntu2) yakkety; urgency=medium | 111 | mir (0.23.5+16.10.20160729-0ubuntu2) yakkety; urgency=medium |
635 | @@ -170,7 +170,7 @@ | |||
636 | 170 | . No ABI changes in any libraries. Bugfix release only. | 170 | . No ABI changes in any libraries. Bugfix release only. |
637 | 171 | - Bugs fixed: | 171 | - Bugs fixed: |
638 | 172 | . Turn off NBS as workaround to LP: #1590765 | 172 | . Turn off NBS as workaround to LP: #1590765 |
640 | 173 | 173 | ||
641 | 174 | [ Daniel van Vugt, Kevin DuBois ] | 174 | [ Daniel van Vugt, Kevin DuBois ] |
642 | 175 | * Mir 0.23.1 bugfix release. Fix flickering issue seen with onscreen | 175 | * Mir 0.23.1 bugfix release. Fix flickering issue seen with onscreen |
643 | 176 | keyboard (LP: 1590765) | 176 | keyboard (LP: 1590765) |
644 | @@ -192,7 +192,7 @@ | |||
645 | 192 | . mirinputplatform ABI unchanged at 5 | 192 | . mirinputplatform ABI unchanged at 5 |
646 | 193 | - Enhancements: | 193 | - Enhancements: |
647 | 194 | . Enable internal usage of more flexible graphics buffer submission, | 194 | . Enable internal usage of more flexible graphics buffer submission, |
649 | 195 | precursing client API additions. | 195 | precursing client API additions. |
650 | 196 | - Bug fixes: | 196 | - Bug fixes: |
651 | 197 | . Potential NBS performance loss after resize (LP: #1579076) | 197 | . Potential NBS performance loss after resize (LP: #1579076) |
652 | 198 | . Performance loss with NBS and overlays on (LP: #1578159) | 198 | . Performance loss with NBS and overlays on (LP: #1578159) |
653 | @@ -207,7 +207,7 @@ | |||
654 | 207 | . Virtual display output configuration is set to LVDS (LP: #1573782) | 207 | . Virtual display output configuration is set to LVDS (LP: #1573782) |
655 | 208 | . Mir-on-X11 doesn't pass Alt+primary button drag to Mir (LP: #1575765) | 208 | . Mir-on-X11 doesn't pass Alt+primary button drag to Mir (LP: #1575765) |
656 | 209 | . Mir-on-X11 breaks mir_proving_server resize logic (LP: #1575192) | 209 | . Mir-on-X11 breaks mir_proving_server resize logic (LP: #1575192) |
658 | 210 | . Resizing can crash mir_demo_server (LP: #1575211) | 210 | . Resizing can crash mir_demo_server (LP: #1575211) |
659 | 211 | . [regression] Cursor stops at phantom edge on M10 and N7 (LP: #1580774) | 211 | . [regression] Cursor stops at phantom edge on M10 and N7 (LP: #1580774) |
660 | 212 | . [regression] MIR_CLIENT_PERF_REPORT is showing bogus render times and | 212 | . [regression] MIR_CLIENT_PERF_REPORT is showing bogus render times and |
661 | 213 | buffer lag (LP: #1581368) | 213 | buffer lag (LP: #1581368) |
662 | @@ -259,31 +259,31 @@ | |||
663 | 259 | upgrade to ld-2.23 (LP: #1560415) | 259 | upgrade to ld-2.23 (LP: #1560415) |
664 | 260 | . [regression] failure in CI on ThreadedDispatcherSignalTest.keeps_ | 260 | . [regression] failure in CI on ThreadedDispatcherSignalTest.keeps_ |
665 | 261 | dispatching_after_signal_interruption under Valgrind (LP: #1499229) | 261 | dispatching_after_signal_interruption under Valgrind (LP: #1499229) |
667 | 262 | . [regression] Cursor mostly does not move at all in response to slow | 262 | . [regression] Cursor mostly does not move at all in response to slow |
668 | 263 | mouse movement, but then sometimes jumps (LP: #1528109) | 263 | mouse movement, but then sometimes jumps (LP: #1528109) |
669 | 264 | . Sometimes devices don't suspend - display turns back on immediately | 264 | . Sometimes devices don't suspend - display turns back on immediately |
670 | 265 | (LP: #1549701) | 265 | (LP: #1549701) |
671 | 266 | . CI failure in NestedServer.display_orientation_changes_are_forwarded_to_ | 266 | . CI failure in NestedServer.display_orientation_changes_are_forwarded_to_ |
672 | 267 | host (LP: #1555074) | 267 | host (LP: #1555074) |
674 | 268 | . NBS fullscreen overlay benchmark performance is much lower than | 268 | . NBS fullscreen overlay benchmark performance is much lower than |
675 | 269 | BufferQueue (LP: #1557962) | 269 | BufferQueue (LP: #1557962) |
676 | 270 | . server crashes when shutting down in smoke tests (LP: #1560900) | 270 | . server crashes when shutting down in smoke tests (LP: #1560900) |
677 | 271 | . [regression] [OTA-10] Spread animation stutters badly with only a few | 271 | . [regression] [OTA-10] Spread animation stutters badly with only a few |
678 | 272 | apps opened (LP: #1563287) | 272 | apps opened (LP: #1563287) |
679 | 273 | . nested mir_demo_server crashes on startup (LP: #1570362) | 273 | . nested mir_demo_server crashes on startup (LP: #1570362) |
681 | 274 | . mir_acceptance_tests & mir_unit_tests dump core files (even when | 274 | . mir_acceptance_tests & mir_unit_tests dump core files (even when |
682 | 275 | everything passes) (LP: #1342092) | 275 | everything passes) (LP: #1342092) |
683 | 276 | . [regression] Tests fail with: std::exception::what: Failed to read from | 276 | . [regression] Tests fail with: std::exception::what: Failed to read from |
684 | 277 | device: /dev/random after: 30 seconds (LP: #1541188) | 277 | device: /dev/random after: 30 seconds (LP: #1541188) |
685 | 278 | . [testsfail] ClientLatency.throttled_input_rate_yields_lower_latency | 278 | . [testsfail] ClientLatency.throttled_input_rate_yields_lower_latency |
686 | 279 | (LP: #1554572) | 279 | (LP: #1554572) |
688 | 280 | . NBS causes sudden loss of performance after un-fullscreening a swap | 280 | . NBS causes sudden loss of performance after un-fullscreening a swap |
689 | 281 | interval zero client (LP: #1557442) | 281 | interval zero client (LP: #1557442) |
690 | 282 | . surface creation with non-default buffer streams is ignored by server | 282 | . surface creation with non-default buffer streams is ignored by server |
691 | 283 | (LP: #1563278) | 283 | (LP: #1563278) |
692 | 284 | . [regression] mir_integration_tests take significantly longer (27x | 284 | . [regression] mir_integration_tests take significantly longer (27x |
693 | 285 | longer) when running with ctest (LP: #1568966) | 285 | longer) when running with ctest (LP: #1568966) |
695 | 286 | . CI failure in TestClientInput.receives_one_touch_event_per_frame | 286 | . CI failure in TestClientInput.receives_one_touch_event_per_frame |
696 | 287 | (LP: #1570698) | 287 | (LP: #1570698) |
697 | 288 | . Racy shutdown in mir_demo_client_scroll causes SEGFAULT (LP: #1560943) | 288 | . Racy shutdown in mir_demo_client_scroll causes SEGFAULT (LP: #1560943) |
698 | 289 | . mir_demo_client_target does not quit after SIGTERM/SIGINT (LP: #1562340) | 289 | . mir_demo_client_target does not quit after SIGTERM/SIGINT (LP: #1562340) |
699 | @@ -501,7 +501,7 @@ | |||
700 | 501 | - Bugs fixed: | 501 | - Bugs fixed: |
701 | 502 | . Lock ordering issues causing deadlocks between input and display | 502 | . Lock ordering issues causing deadlocks between input and display |
702 | 503 | configuration (LP: #1538632, LP: #1543594, LP: #1532607) | 503 | configuration (LP: #1538632, LP: #1543594, LP: #1532607) |
704 | 504 | . Workaound for a g++ 4.9 bug where std::uncaught_exception() | 504 | . Workaound for a g++ 4.9 bug where std::uncaught_exception() |
705 | 505 | unexpectedly returns true | 505 | unexpectedly returns true |
706 | 506 | 506 | ||
707 | 507 | [ CI Train Bot ] | 507 | [ CI Train Bot ] |
708 | @@ -618,7 +618,7 @@ | |||
709 | 618 | - No ABI changes. Bug fix release only. | 618 | - No ABI changes. Bug fix release only. |
710 | 619 | - Bug fixed: | 619 | - Bug fixed: |
711 | 620 | . [regression] pinch to zoom not working reliably (LP: #1531517) | 620 | . [regression] pinch to zoom not working reliably (LP: #1531517) |
713 | 621 | 621 | ||
714 | 622 | 622 | ||
715 | 623 | [ CI Train Bot ] | 623 | [ CI Train Bot ] |
716 | 624 | * No-change rebuild. | 624 | * No-change rebuild. |
717 | @@ -903,7 +903,7 @@ | |||
718 | 903 | (LP: #1488500) | 903 | (LP: #1488500) |
719 | 904 | . CI test failure in ClientLatency.triple_buffered_client_uses_all_buffers | 904 | . CI test failure in ClientLatency.triple_buffered_client_uses_all_buffers |
720 | 905 | (LP: #1491876) | 905 | (LP: #1491876) |
722 | 906 | . Intermittent CI failure in | 906 | . Intermittent CI failure in |
723 | 907 | DisplayConfigurationTest.changing_focus_from_client_with_config_to_client_without_config_configures_display | 907 | DisplayConfigurationTest.changing_focus_from_client_with_config_to_client_without_config_configures_display |
724 | 908 | (LP: #1494663) | 908 | (LP: #1494663) |
725 | 909 | . acceptance test ClientLatency.double_buffered_client_uses_all_buffers | 909 | . acceptance test ClientLatency.double_buffered_client_uses_all_buffers |
726 | @@ -912,10 +912,10 @@ | |||
727 | 912 | . make ptest returns 0 when tests fail (LP: #1454250) | 912 | . make ptest returns 0 when tests fail (LP: #1454250) |
728 | 913 | . [regression] Mir is holding buffers much longer than it used to | 913 | . [regression] Mir is holding buffers much longer than it used to |
729 | 914 | (LP: #1480164) | 914 | (LP: #1480164) |
731 | 915 | . Acceptance test fails under debuild: | 915 | . Acceptance test fails under debuild: |
732 | 916 | ClientCredsTestFixture.session_authorizer_receives_pid_of_connecting_clients | 916 | ClientCredsTestFixture.session_authorizer_receives_pid_of_connecting_clients |
733 | 917 | (LP: #1483097) | 917 | (LP: #1483097) |
735 | 918 | . dpkg-shlibdeps: warning: | 918 | . dpkg-shlibdeps: warning: |
736 | 919 | debian/mir-platform-graphics-mesa-x4/usr/lib/x86_64-linux-gnu/mir/server-platform/server-mesa-x11.so.4 | 919 | debian/mir-platform-graphics-mesa-x4/usr/lib/x86_64-linux-gnu/mir/server-platform/server-mesa-x11.so.4 |
737 | 920 | contains an unresolvable reference to symbol | 920 | contains an unresolvable reference to symbol |
738 | 921 | _ZN3mir6events10make_eventElNSt6chrono8durationIlSt5ratioILl1ELl1000000000EEEE17MirKeyboardActionjij: | 921 | _ZN3mir6events10make_eventElNSt6chrono8durationIlSt5ratioILl1ELl1000000000EEEE17MirKeyboardActionjij: |
739 | @@ -1004,12 +1004,12 @@ | |||
740 | 1004 | . Fix focus issues breaking autopilot tests entering text (LP: #1468029) | 1004 | . Fix focus issues breaking autopilot tests entering text (LP: #1468029) |
741 | 1005 | . Fix mir tests failure on armhf with GCC5 (LP: #1478213) | 1005 | . Fix mir tests failure on armhf with GCC5 (LP: #1478213) |
742 | 1006 | . mir_buffer_stream_swap_buffers_sync can hang constraints (LP: #1479899) | 1006 | . mir_buffer_stream_swap_buffers_sync can hang constraints (LP: #1479899) |
744 | 1007 | . Loading libmirclient.so twice leads to a segfault in libmirprotobuf.so | 1007 | . Loading libmirclient.so twice leads to a segfault in libmirprotobuf.so |
745 | 1008 | (LP: #1391976) | 1008 | (LP: #1391976) |
746 | 1009 | . Visible corruption in SDL apps (LP: #1460149) | 1009 | . Visible corruption in SDL apps (LP: #1460149) |
747 | 1010 | . MultiThreadedCompositor::destroy_compositing_threads hangs/deadlocks on | 1010 | . MultiThreadedCompositor::destroy_compositing_threads hangs/deadlocks on |
748 | 1011 | shutdown or display reconfiguration (LP: #1471909) | 1011 | shutdown or display reconfiguration (LP: #1471909) |
750 | 1012 | . ctest/"make test" reports 100% tests pass even when some fail. | 1012 | . ctest/"make test" reports 100% tests pass even when some fail. |
751 | 1013 | (LP: #1472911) | 1013 | (LP: #1472911) |
752 | 1014 | . Mir server crashed - GLib-CRITICAL **: g_source_get_context: assertion | 1014 | . Mir server crashed - GLib-CRITICAL **: g_source_get_context: assertion |
753 | 1015 | 'source->context != NULL || !SOURCE_DESTROYED (source)' failed | 1015 | 'source->context != NULL || !SOURCE_DESTROYED (source)' failed |
754 | @@ -1018,7 +1018,7 @@ | |||
755 | 1018 | hwc prepare()] (LP: #1474891) | 1018 | hwc prepare()] (LP: #1474891) |
756 | 1019 | . [regression] Input focus delay after switching app back into focus | 1019 | . [regression] Input focus delay after switching app back into focus |
757 | 1020 | (LP: #1480654) | 1020 | (LP: #1480654) |
759 | 1021 | . GLibMainLoopTest.propagates_exception_from_server_action fails with | 1021 | . GLibMainLoopTest.propagates_exception_from_server_action fails with |
760 | 1022 | GCC 5 in armhf (LP: #1482274) | 1022 | GCC 5 in armhf (LP: #1482274) |
761 | 1023 | . [enhancement] Mir lacks relative mouse support (LP: #1276322) | 1023 | . [enhancement] Mir lacks relative mouse support (LP: #1276322) |
762 | 1024 | . ShmBuffer ignores pixel_format (LP: #1424909) | 1024 | . ShmBuffer ignores pixel_format (LP: #1424909) |
763 | @@ -1028,7 +1028,7 @@ | |||
764 | 1028 | (LP: #1439078) | 1028 | (LP: #1439078) |
765 | 1029 | . [regression] The software cursor has a rectangular shadow around it | 1029 | . [regression] The software cursor has a rectangular shadow around it |
766 | 1030 | in mir_proving_server (LP: #1447911) | 1030 | in mir_proving_server (LP: #1447911) |
768 | 1031 | . TestClientCursorAPI.cursor_passed_through_nested_server fails | 1031 | . TestClientCursorAPI.cursor_passed_through_nested_server fails |
769 | 1032 | intermittently (LP: #1462088) | 1032 | intermittently (LP: #1462088) |
770 | 1033 | . [enhancement] Add support for high colour (15/16-bit colour) clients | 1033 | . [enhancement] Add support for high colour (15/16-bit colour) clients |
771 | 1034 | (LP: #1469673) | 1034 | (LP: #1469673) |
772 | @@ -1072,7 +1072,7 @@ | |||
773 | 1072 | . Mircommon ABI bumped to 5 | 1072 | . Mircommon ABI bumped to 5 |
774 | 1073 | . Mirplatform ABI bumped to 8 | 1073 | . Mirplatform ABI bumped to 8 |
775 | 1074 | - Enhancements: | 1074 | - Enhancements: |
777 | 1075 | . mir_demo_server: tweaks, features and improvements | 1075 | . mir_demo_server: tweaks, features and improvements |
778 | 1076 | . More MirEvent-2.0 related changes and unifications | 1076 | . More MirEvent-2.0 related changes and unifications |
779 | 1077 | . New SurfaceInputDispatcher to replace the android InputDispatcher | 1077 | . New SurfaceInputDispatcher to replace the android InputDispatcher |
780 | 1078 | . New Threaded dispatcher for Dispatchable added | 1078 | . New Threaded dispatcher for Dispatchable added |
781 | @@ -1093,12 +1093,12 @@ | |||
782 | 1093 | server start-up has finished (LP: #1451844) | 1093 | server start-up has finished (LP: #1451844) |
783 | 1094 | . build-dependency on g++-4.9 dropped (LP: #1452320) | 1094 | . build-dependency on g++-4.9 dropped (LP: #1452320) |
784 | 1095 | - Bug fixes: | 1095 | - Bug fixes: |
786 | 1096 | . Crash because uncaught exception in mir::events::add_touch | 1096 | . Crash because uncaught exception in mir::events::add_touch |
787 | 1097 | (LP: #1437357) | 1097 | (LP: #1437357) |
788 | 1098 | . [vegetahd] android buffer allocator does consider hwc alignment | 1098 | . [vegetahd] android buffer allocator does consider hwc alignment |
789 | 1099 | constraints (LP: #1461314) | 1099 | constraints (LP: #1461314) |
790 | 1100 | . [regression] Touch input does not work at all any more (LP: #1464174) | 1100 | . [regression] Touch input does not work at all any more (LP: #1464174) |
792 | 1101 | . Mir emits a mir_motion_action_hover_exit event before of a | 1101 | . Mir emits a mir_motion_action_hover_exit event before of a |
793 | 1102 | mir_motion_action_pointer_down (LP: #1419048) | 1102 | mir_motion_action_pointer_down (LP: #1419048) |
794 | 1103 | . [testsfail] NestedInput.nested_event_filter_receives_keyboard_from_host | 1103 | . [testsfail] NestedInput.nested_event_filter_receives_keyboard_from_host |
795 | 1104 | failure in CI (LP: #1462033) | 1104 | failure in CI (LP: #1462033) |
796 | @@ -1376,8 +1376,8 @@ | |||
797 | 1376 | [ Alberto Aguirre ] | 1376 | [ Alberto Aguirre ] |
798 | 1377 | * New upstream release 0.12.0 (https://launchpad.net/mir/+milestone/0.12.0) | 1377 | * New upstream release 0.12.0 (https://launchpad.net/mir/+milestone/0.12.0) |
799 | 1378 | - Packaging changes: | 1378 | - Packaging changes: |
802 | 1379 | . Client platform packages now include the Mir client platform ABI | 1379 | . Client platform packages now include the Mir client platform ABI |
803 | 1380 | number. Thusly, mir-client-platform-(mesa|android) is replaced by | 1380 | number. Thusly, mir-client-platform-(mesa|android) is replaced by |
804 | 1381 | mir-client-platform-(mesa|android)2 | 1381 | mir-client-platform-(mesa|android)2 |
805 | 1382 | . Server graphics platform packages now include the Mir graphics | 1382 | . Server graphics platform packages now include the Mir graphics |
806 | 1383 | platform ABI number. Thusly, mir-platform-graphics-(mesa|android) | 1383 | platform ABI number. Thusly, mir-platform-graphics-(mesa|android) |
807 | @@ -1391,7 +1391,7 @@ | |||
808 | 1391 | . [regression] Platform libraries and packages are not versioned thus | 1391 | . [regression] Platform libraries and packages are not versioned thus |
809 | 1392 | are not installable in parallel (LP: #1423591) | 1392 | are not installable in parallel (LP: #1423591) |
810 | 1393 | . [regression] Deadlock in TimeoutFrameDroppingPolicy logic (LP: #1421255) | 1393 | . [regression] Deadlock in TimeoutFrameDroppingPolicy logic (LP: #1421255) |
812 | 1394 | 1394 | ||
813 | 1395 | [ CI Train Bot ] | 1395 | [ CI Train Bot ] |
814 | 1396 | * New rebuild forced. | 1396 | * New rebuild forced. |
815 | 1397 | 1397 | ||
816 | @@ -1492,7 +1492,7 @@ | |||
817 | 1492 | - ABI summary: Servers need rebuilding, but clients do not; | 1492 | - ABI summary: Servers need rebuilding, but clients do not; |
818 | 1493 | . Mirclient ABI unchanged at 8 | 1493 | . Mirclient ABI unchanged at 8 |
819 | 1494 | . Mircommon ABI unchanged at 3 | 1494 | . Mircommon ABI unchanged at 3 |
821 | 1495 | . Mirplatform ABI bumped to 5 | 1495 | . Mirplatform ABI bumped to 5 |
822 | 1496 | . Mirserver ABI bumped to 28 | 1496 | . Mirserver ABI bumped to 28 |
823 | 1497 | - Bug fixes: | 1497 | - Bug fixes: |
824 | 1498 | . [regression] Mir servers (since 0.9) randomly crash in malloc due to | 1498 | . [regression] Mir servers (since 0.9) randomly crash in malloc due to |
825 | @@ -1583,7 +1583,7 @@ | |||
826 | 1583 | - Bug fixes: | 1583 | - Bug fixes: |
827 | 1584 | . Add a debug interface to translate from surface to screen coordinates | 1584 | . Add a debug interface to translate from surface to screen coordinates |
828 | 1585 | (LP: #1346633) | 1585 | (LP: #1346633) |
830 | 1586 | . Ensure a buffer requested by a surface is not delivered | 1586 | . Ensure a buffer requested by a surface is not delivered |
831 | 1587 | after the surface is deleted (LP: #1376324) | 1587 | after the surface is deleted (LP: #1376324) |
832 | 1588 | . Overlays are not displayed onscreen in some positions (LP: #1378326) | 1588 | . Overlays are not displayed onscreen in some positions (LP: #1378326) |
833 | 1589 | . Server aborts when an exception is thrown from the main thread | 1589 | . Server aborts when an exception is thrown from the main thread |
834 | @@ -1597,14 +1597,14 @@ | |||
835 | 1597 | (LP: #1303817) | 1597 | (LP: #1303817) |
836 | 1598 | . A prompt session with an invalid application pid should be an error | 1598 | . A prompt session with an invalid application pid should be an error |
837 | 1599 | (LP: #1377968) | 1599 | (LP: #1377968) |
839 | 1600 | . When XDG_RUNTIME_DIR is defined but pointing to a non-existing | 1600 | . When XDG_RUNTIME_DIR is defined but pointing to a non-existing |
840 | 1601 | directory use "/tmp" (LP: #1304873) | 1601 | directory use "/tmp" (LP: #1304873) |
842 | 1602 | . [regression] demo-shell bypass is not used on fullscreen surfaces if | 1602 | . [regression] demo-shell bypass is not used on fullscreen surfaces if |
843 | 1603 | there are windowed surfaces behind (LP: #1378706) | 1603 | there are windowed surfaces behind (LP: #1378706) |
844 | 1604 | . Mir upgrade through dist-upgrade installs incorrect platform | 1604 | . Mir upgrade through dist-upgrade installs incorrect platform |
845 | 1605 | (LP: #1378995) | 1605 | (LP: #1378995) |
846 | 1606 | . Fix Mir progressbar example using internal glibc defines(LP: #239272) | 1606 | . Fix Mir progressbar example using internal glibc defines(LP: #239272) |
848 | 1607 | . Stop the default_lifecycle_event_handler raising SIGHUP while | 1607 | . Stop the default_lifecycle_event_handler raising SIGHUP while |
849 | 1608 | disconnecting (LP: #1386185) | 1608 | disconnecting (LP: #1386185) |
850 | 1609 | . [regression] Mir fails to build with MIR_ENABLE_TESTS=OFF (LP: #1388539) | 1609 | . [regression] Mir fails to build with MIR_ENABLE_TESTS=OFF (LP: #1388539) |
851 | 1610 | . [regression] mir_demo_server_basic does not start (LP: #1391923) | 1610 | . [regression] mir_demo_server_basic does not start (LP: #1391923) |
852 | @@ -1722,7 +1722,7 @@ | |||
853 | 1722 | * New upstream release 0.7.3 (https://launchpad.net/mir/+milestone/0.7.3) | 1722 | * New upstream release 0.7.3 (https://launchpad.net/mir/+milestone/0.7.3) |
854 | 1723 | - Bug fixes | 1723 | - Bug fixes |
855 | 1724 | . Fix constructor syntax errors (LP: #1369389) | 1724 | . Fix constructor syntax errors (LP: #1369389) |
857 | 1725 | . server: Workaround for unresponsive clients causing the server to hang | 1725 | . server: Workaround for unresponsive clients causing the server to hang |
858 | 1726 | (LP: #1350207) | 1726 | (LP: #1350207) |
859 | 1727 | . Relax strict dependencies of graphics drivers on an exact version | 1727 | . Relax strict dependencies of graphics drivers on an exact version |
860 | 1728 | of the libmirplatform2 package. It's blocking CI. (LP: #1370866) | 1728 | of the libmirplatform2 package. It's blocking CI. (LP: #1370866) |
861 | @@ -1747,7 +1747,7 @@ | |||
862 | 1747 | [ Alberto Aguirre ] | 1747 | [ Alberto Aguirre ] |
863 | 1748 | * New upstream release 0.7.1 (https://launchpad.net/mir/+milestone/0.7.1) | 1748 | * New upstream release 0.7.1 (https://launchpad.net/mir/+milestone/0.7.1) |
864 | 1749 | - Bug fixes | 1749 | - Bug fixes |
866 | 1750 | . Recycle compositor threads by using a thread pool (LP: #1362841) | 1750 | . Recycle compositor threads by using a thread pool (LP: #1362841) |
867 | 1751 | 1751 | ||
868 | 1752 | -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Tue, 09 Sep 2014 18:28:01 +0000 | 1752 | -- Ubuntu daily release <ps-jenkins@lists.canonical.com> Tue, 09 Sep 2014 18:28:01 +0000 |
869 | 1753 | 1753 | ||
870 | @@ -1796,7 +1796,7 @@ | |||
871 | 1796 | drawn (LP: #1348330) | 1796 | drawn (LP: #1348330) |
872 | 1797 | . Client: Fix SIGTERM dispatch in our default lifecycle event handler | 1797 | . Client: Fix SIGTERM dispatch in our default lifecycle event handler |
873 | 1798 | (LP: #1353867) | 1798 | (LP: #1353867) |
875 | 1799 | . DemoRenderer: Don't try to create a texture of width zero. | 1799 | . DemoRenderer: Don't try to create a texture of width zero. |
876 | 1800 | (LP: #1358210) | 1800 | (LP: #1358210) |
877 | 1801 | . Fix CI failures (LP: #1358698) | 1801 | . Fix CI failures (LP: #1358698) |
878 | 1802 | . Fix build failure: "variable ‘rc’ set but not used" which happens in | 1802 | . Fix build failure: "variable ‘rc’ set but not used" which happens in |
879 | @@ -1974,7 +1974,7 @@ | |||
880 | 1974 | - Bugs fixed: | 1974 | - Bugs fixed: |
881 | 1975 | . Nexus 10 leaks during overlay operations (LP: #1331769) | 1975 | . Nexus 10 leaks during overlay operations (LP: #1331769) |
882 | 1976 | . MultiThreadedCompositor deadlocks (LP: #1335311) | 1976 | . MultiThreadedCompositor deadlocks (LP: #1335311) |
884 | 1977 | . Intermittent test failure in ClientSurfaceEvents can client query | 1977 | . Intermittent test failure in ClientSurfaceEvents can client query |
885 | 1978 | orientation (LP: #1335741) | 1978 | orientation (LP: #1335741) |
886 | 1979 | . Intermittent test failure in ClientSurfaceEvents/OrientationEvents | 1979 | . Intermittent test failure in ClientSurfaceEvents/OrientationEvents |
887 | 1980 | (LP: #1335752) | 1980 | (LP: #1335752) |
888 | @@ -2115,7 +2115,7 @@ | |||
889 | 2115 | where id is an opaque compositor ID of your choosing. | 2115 | where id is an opaque compositor ID of your choosing. |
890 | 2116 | . Scene::set_change_callback() replaced by the more generic: | 2116 | . Scene::set_change_callback() replaced by the more generic: |
891 | 2117 | add_observer() and remove_observer() functions. | 2117 | add_observer() and remove_observer() functions. |
893 | 2118 | . Added default implementation for SceneObserver. | 2118 | . Added default implementation for SceneObserver. |
894 | 2119 | . SessionCreator renamed to ConnectionCreator. | 2119 | . SessionCreator renamed to ConnectionCreator. |
895 | 2120 | . ConnectedSessions renamed to Connections. | 2120 | . ConnectedSessions renamed to Connections. |
896 | 2121 | . ProtobufSessionCreator renamed to ProtobufConnectionCreator. | 2121 | . ProtobufSessionCreator renamed to ProtobufConnectionCreator. |
897 | @@ -2145,9 +2145,9 @@ | |||
898 | 2145 | the mouse pointer is on. | 2145 | the mouse pointer is on. |
899 | 2146 | . New shell controls documented. | 2146 | . New shell controls documented. |
900 | 2147 | - A new testing category, performance test, was introduced. It currently | 2147 | - A new testing category, performance test, was introduced. It currently |
902 | 2148 | runs glmark2-es2 and compares the result to a minimum threshold. | 2148 | runs glmark2-es2 and compares the result to a minimum threshold. |
903 | 2149 | - MIR_VERSION_MINOR is tied to MIRSERVER_ABI in the sense that a change | 2149 | - MIR_VERSION_MINOR is tied to MIRSERVER_ABI in the sense that a change |
905 | 2150 | in the former now requires dependent projects that a rebuild is | 2150 | in the former now requires dependent projects that a rebuild is |
906 | 2151 | necessary. | 2151 | necessary. |
907 | 2152 | - SwitchingBundle was replaced by BufferQueue. | 2152 | - SwitchingBundle was replaced by BufferQueue. |
908 | 2153 | - Expand credentials to include uid/gid for session authorizer. | 2153 | - Expand credentials to include uid/gid for session authorizer. |
909 | @@ -2173,7 +2173,7 @@ | |||
910 | 2173 | . [regression] unity8 fails to load libmirplatformgraphics | 2173 | . [regression] unity8 fails to load libmirplatformgraphics |
911 | 2174 | (undefined symbol: _ZN3mir8graphics9GLProgramD1Ev). (LP: #1317200) | 2174 | (undefined symbol: _ZN3mir8graphics9GLProgramD1Ev). (LP: #1317200) |
912 | 2175 | . [regression] unity8 rendering artifacts. (LP: #1317260) | 2175 | . [regression] unity8 rendering artifacts. (LP: #1317260) |
914 | 2176 | . [regression] [BufferQueue] | 2176 | . [regression] [BufferQueue] |
915 | 2177 | BufferQueueTest.compositor_never_owns_client_buffers occasionally | 2177 | BufferQueueTest.compositor_never_owns_client_buffers occasionally |
916 | 2178 | crashes with: what(): unexpected release: buffer was not given to | 2178 | crashes with: what(): unexpected release: buffer was not given to |
917 | 2179 | compositor. (LP: #1317801) | 2179 | compositor. (LP: #1317801) |
918 | @@ -2185,16 +2185,16 @@ | |||
919 | 2185 | and toolkit/apps are laggy/throttled. (LP: #1321886) | 2185 | and toolkit/apps are laggy/throttled. (LP: #1321886) |
920 | 2186 | . [regression] [BufferQueue] current_buffer_users vector memory usage | 2186 | . [regression] [BufferQueue] current_buffer_users vector memory usage |
921 | 2187 | grows unbounded. (LP: #1317808) | 2187 | grows unbounded. (LP: #1317808) |
923 | 2188 | . Intermittent test failures in | 2188 | . Intermittent test failures in |
924 | 2189 | CustomInputDispatcherFixture.custom_input_dispatcher_receives_input. | 2189 | CustomInputDispatcherFixture.custom_input_dispatcher_receives_input. |
925 | 2190 | (LP: #1318587) | 2190 | (LP: #1318587) |
927 | 2191 | . [regression] [BufferQueue] Race condition in | 2191 | . [regression] [BufferQueue] Race condition in |
928 | 2192 | BufferQueue::compositor_acquire could underflow shared_ptr refcount and | 2192 | BufferQueue::compositor_acquire could underflow shared_ptr refcount and |
929 | 2193 | delete prematurely, crash. (LP: #1318632) | 2193 | delete prematurely, crash. (LP: #1318632) |
931 | 2194 | . Overflow in | 2194 | . Overflow in |
932 | 2195 | mir::client::rpc::MirSocketRpcChannel::receive_file_descriptors as | 2195 | mir::client::rpc::MirSocketRpcChannel::receive_file_descriptors as |
933 | 2196 | reported by address sanitizer. (LP: #1320821) | 2196 | reported by address sanitizer. (LP: #1320821) |
935 | 2197 | . [regression] [input] Scroll events are now always zero: | 2197 | . [regression] [input] Scroll events are now always zero: |
936 | 2198 | event.motion.pointer_coordinates[0].vscroll. (LP: #1321077) | 2198 | event.motion.pointer_coordinates[0].vscroll. (LP: #1321077) |
937 | 2199 | . CI failures in CustomInputDispatcherFixture | 2199 | . CI failures in CustomInputDispatcherFixture |
938 | 2200 | .custom_input_dispatcher_gets_started_and_stopped. (LP: #1321215) | 2200 | .custom_input_dispatcher_gets_started_and_stopped. (LP: #1321215) |
939 | @@ -2214,7 +2214,7 @@ | |||
940 | 2214 | client connects to Mir. (LP: #1314574) | 2214 | client connects to Mir. (LP: #1314574) |
941 | 2215 | . [regression] Clients can't acquire multiple buffers any more. | 2215 | . [regression] Clients can't acquire multiple buffers any more. |
942 | 2216 | (LP: #1315302) | 2216 | (LP: #1315302) |
944 | 2217 | . [regression] Enabling SwitchingBundleTest | 2217 | . [regression] Enabling SwitchingBundleTest |
945 | 2218 | DISABLED_synchronous_clients_only_get_two_real_buffers now crashes with | 2218 | DISABLED_synchronous_clients_only_get_two_real_buffers now crashes with |
946 | 2219 | no usable stack trace. It used to only fail. (LP: #1315312) | 2219 | no usable stack trace. It used to only fail. (LP: #1315312) |
947 | 2220 | . [regression] [BufferQueue] double-buffered client freezes as no buffer | 2220 | . [regression] [BufferQueue] double-buffered client freezes as no buffer |
948 | @@ -2247,29 +2247,29 @@ | |||
949 | 2247 | - Bugs fixed: | 2247 | - Bugs fixed: |
950 | 2248 | . Stale socket issue. (LP: #1285215) | 2248 | . Stale socket issue. (LP: #1285215) |
951 | 2249 | . Qt render gets blocked on EGLSwapBuffers. (LP: #1292306) | 2249 | . Qt render gets blocked on EGLSwapBuffers. (LP: #1292306) |
953 | 2250 | . Lock order violated found in helgrind (potential deadlock). | 2250 | . Lock order violated found in helgrind (potential deadlock). |
954 | 2251 | (LP: #1296544) | 2251 | (LP: #1296544) |
956 | 2252 | . [regression] SwitchingBundle in framedropping mode can hang. | 2252 | . [regression] SwitchingBundle in framedropping mode can hang. |
957 | 2253 | (LP: #1306464) | 2253 | (LP: #1306464) |
958 | 2254 | . [DPMS] Display backlight turns back on almost immediately after | 2254 | . [DPMS] Display backlight turns back on almost immediately after |
959 | 2255 | being turned off. (LP: #1231857) | 2255 | being turned off. (LP: #1231857) |
960 | 2256 | . Wrong frame is seen on wake up/resume/unlock. (LP: #1233564) | 2256 | . Wrong frame is seen on wake up/resume/unlock. (LP: #1233564) |
961 | 2257 | . Nested platform is not testable (LP: #1299101) | 2257 | . Nested platform is not testable (LP: #1299101) |
963 | 2258 | . [regression] mir_demo_server_shell crashes on display resume. | 2258 | . [regression] mir_demo_server_shell crashes on display resume. |
964 | 2259 | (LP: #1308941) | 2259 | (LP: #1308941) |
965 | 2260 | . Multi-threaded composition is actually mostly serialized by | 2260 | . Multi-threaded composition is actually mostly serialized by |
966 | 2261 | SurfaceStack::guard. (LP: #1234018) | 2261 | SurfaceStack::guard. (LP: #1234018) |
968 | 2262 | . Mirscreencast slows down compositing and makes it very jerky. | 2262 | . Mirscreencast slows down compositing and makes it very jerky. |
969 | 2263 | (LP: #1280938) | 2263 | (LP: #1280938) |
970 | 2264 | . Mirscreencast can cause clients to render faster than the screen | 2264 | . Mirscreencast can cause clients to render faster than the screen |
971 | 2265 | refresh rate. (LP: #1294361) | 2265 | refresh rate. (LP: #1294361) |
972 | 2266 | . Screen turns on when a new session/surface appears. (LP: #1297876) | 2266 | . Screen turns on when a new session/surface appears. (LP: #1297876) |
974 | 2267 | . mir-doc package is >56MB in size, expands to >100MB of files. | 2267 | . mir-doc package is >56MB in size, expands to >100MB of files. |
975 | 2268 | (LP: #1304998) | 2268 | (LP: #1304998) |
976 | 2269 | . [regression] Clang: 'mir::test::doubles::MockSurface::visible' | 2269 | . [regression] Clang: 'mir::test::doubles::MockSurface::visible' |
978 | 2270 | hides overloaded virtual function [-Woverloaded-virtual]. | 2270 | hides overloaded virtual function [-Woverloaded-virtual]. |
979 | 2271 | (LP: #1301135) | 2271 | (LP: #1301135) |
981 | 2272 | . [regression] GLRenderer* unit tests have recently become noisy. | 2272 | . [regression] GLRenderer* unit tests have recently become noisy. |
982 | 2273 | (LP: #1308905) | 2273 | (LP: #1308905) |
983 | 2274 | . FocusController::set_focus_to() no longer seems to raise a session | 2274 | . FocusController::set_focus_to() no longer seems to raise a session |
984 | 2275 | to the top. (LP: #1302689) | 2275 | to the top. (LP: #1302689) |
985 | @@ -2443,7 +2443,7 @@ | |||
986 | 2443 | - tools: Add new libmirclientplatform.so to install_on_android.sh. | 2443 | - tools: Add new libmirclientplatform.so to install_on_android.sh. |
987 | 2444 | - Add "mir_demo_standalone_render_overlays", which is a free-standing | 2444 | - Add "mir_demo_standalone_render_overlays", which is a free-standing |
988 | 2445 | example of overlay support. | 2445 | example of overlay support. |
990 | 2446 | - Proper DisplayConfiguration for the AndroidDisplay to be better | 2446 | - Proper DisplayConfiguration for the AndroidDisplay to be better |
991 | 2447 | prepared for multi-monitor Android. | 2447 | prepared for multi-monitor Android. |
992 | 2448 | - Commenced/continued simplifying the surface class hierarchy: BasicSurface | 2448 | - Commenced/continued simplifying the surface class hierarchy: BasicSurface |
993 | 2449 | has now absorbed SurfaceData. | 2449 | has now absorbed SurfaceData. |
994 | @@ -2457,10 +2457,10 @@ | |||
995 | 2457 | . examples: correct "fullscreen-surfaces" option. (LP: #1284554) | 2457 | . examples: correct "fullscreen-surfaces" option. (LP: #1284554) |
996 | 2458 | . Fix mutex data race reported by helgrind in integration test: | 2458 | . Fix mutex data race reported by helgrind in integration test: |
997 | 2459 | SwapperSwappingStress (LP: #1282886) | 2459 | SwapperSwappingStress (LP: #1282886) |
999 | 2460 | . scene: Return null snapshots for sessions without surfaces | 2460 | . scene: Return null snapshots for sessions without surfaces |
1000 | 2461 | (LP: #1281728) | 2461 | (LP: #1281728) |
1001 | 2462 | . tests: Address some raciness in | 2462 | . tests: Address some raciness in |
1003 | 2463 | MesaDisplayTest.drm_device_change_event_triggers_handler. | 2463 | MesaDisplayTest.drm_device_change_event_triggers_handler. |
1004 | 2464 | (LP: #1283085) | 2464 | (LP: #1283085) |
1005 | 2465 | . tests: Suppress spurious memory errors occuring when running the | 2465 | . tests: Suppress spurious memory errors occuring when running the |
1006 | 2466 | unit tests on armhf with valgrind. (LP: #1279438) | 2466 | unit tests on armhf with valgrind. (LP: #1279438) |
1007 | @@ -2471,8 +2471,8 @@ | |||
1008 | 2471 | . Set field "current_format" when sending a display config to the | 2471 | . Set field "current_format" when sending a display config to the |
1009 | 2472 | server. (LP: #1277343) | 2472 | server. (LP: #1277343) |
1010 | 2473 | . Fix crash in android devices by working around a subtle threading | 2473 | . Fix crash in android devices by working around a subtle threading |
1013 | 2474 | bug, use a dummy thead_local array to push the gl/egl context TLS | 2474 | bug, use a dummy thead_local array to push the gl/egl context TLS |
1014 | 2475 | into a region where the future wait code does not overwrite it. | 2475 | into a region where the future wait code does not overwrite it. |
1015 | 2476 | (LP: #1280086) | 2476 | (LP: #1280086) |
1016 | 2477 | . compositor: calling SwitchingBundle::force_requests_to_complete() | 2477 | . compositor: calling SwitchingBundle::force_requests_to_complete() |
1017 | 2478 | can be a no-op when there are no requests. (LP: #1281145) | 2478 | can be a no-op when there are no requests. (LP: #1281145) |
1018 | @@ -2586,7 +2586,7 @@ | |||
1019 | 2586 | - compositor: ignore double requests to start or stop the | 2586 | - compositor: ignore double requests to start or stop the |
1020 | 2587 | MultiThreadedCompositor. | 2587 | MultiThreadedCompositor. |
1021 | 2588 | - Add DisplayBuffer::orientation(), to tell the Renderer if we need it | 2588 | - Add DisplayBuffer::orientation(), to tell the Renderer if we need it |
1023 | 2589 | to do screen rotation in GL (for platforms which don't implement | 2589 | to do screen rotation in GL (for platforms which don't implement |
1024 | 2590 | rotation natively) Fixes: https://bugs.launchpad.net/bugs/1203215. | 2590 | rotation natively) Fixes: https://bugs.launchpad.net/bugs/1203215. |
1025 | 2591 | - graphics: add an post_update function that takes a list of renderables | 2591 | - graphics: add an post_update function that takes a list of renderables |
1026 | 2592 | to the display buffer. This will let the display buffer take advantage | 2592 | to the display buffer. This will let the display buffer take advantage |
1027 | @@ -2629,7 +2629,7 @@ | |||
1028 | 2629 | background (LP: #1256702) | 2629 | background (LP: #1256702) |
1029 | 2630 | . Compiling without tests fails (-DMIR_ENABLE_TESTS=NO) (LP: #1263724) | 2630 | . Compiling without tests fails (-DMIR_ENABLE_TESTS=NO) (LP: #1263724) |
1030 | 2631 | . examples, doc: Make it clear and consistent how to use | 2631 | . examples, doc: Make it clear and consistent how to use |
1032 | 2632 | a non-root client with a root compositor endpoint. | 2632 | a non-root client with a root compositor endpoint. |
1033 | 2633 | (LP: #1272143) | 2633 | (LP: #1272143) |
1034 | 2634 | . Avoid linking to umockdev on platforms (android) which don't yet | 2634 | . Avoid linking to umockdev on platforms (android) which don't yet |
1035 | 2635 | use it. This allows mir_unit_tests to run on touch images again | 2635 | use it. This allows mir_unit_tests to run on touch images again |
1036 | @@ -2655,7 +2655,7 @@ | |||
1037 | 2655 | set. Otherwise SwitchingBundle::compositor_acquire could follow a bogus | 2655 | set. Otherwise SwitchingBundle::compositor_acquire could follow a bogus |
1038 | 2656 | code path. (LP:#1270964) | 2656 | code path. (LP:#1270964) |
1039 | 2657 | . tests: Override configuration to avoid creating an (unused) | 2657 | . tests: Override configuration to avoid creating an (unused) |
1041 | 2658 | filesystem endpoint for connections when using InProcessServer. | 2658 | filesystem endpoint for connections when using InProcessServer. |
1042 | 2659 | (LP: #1271604) | 2659 | (LP: #1271604) |
1043 | 2660 | . frontend: ensure that BasicConnector threads don't exit | 2660 | . frontend: ensure that BasicConnector threads don't exit |
1044 | 2661 | immediately. (LP: #1271655) | 2661 | immediately. (LP: #1271655) |
1045 | @@ -2809,7 +2809,7 @@ | |||
1046 | 2809 | MIR_SERVER_NAME=. | 2809 | MIR_SERVER_NAME=. |
1047 | 2810 | - graphics,gbm: Inform the EGL platform about the used gbm device when | 2810 | - graphics,gbm: Inform the EGL platform about the used gbm device when |
1048 | 2811 | using the native GBM platform | 2811 | using the native GBM platform |
1050 | 2812 | - examples: Restore GL state after initializing buffers, fixing crashes | 2812 | - examples: Restore GL state after initializing buffers, fixing crashes |
1051 | 2813 | observed in render_surfaces (LP: #1234563) | 2813 | observed in render_surfaces (LP: #1234563) |
1052 | 2814 | - Continue refactoring the mir android display classes. | 2814 | - Continue refactoring the mir android display classes. |
1053 | 2815 | - shell: Hoist focus control functions needed by unity-mir into | 2815 | - shell: Hoist focus control functions needed by unity-mir into |
1054 | 2816 | 2816 | ||
1055 | === modified file 'doc/android_new_device_bringup.md' | |||
1056 | --- doc/android_new_device_bringup.md 2016-07-18 07:38:38 +0000 | |||
1057 | +++ doc/android_new_device_bringup.md 2016-10-27 03:52:22 +0000 | |||
1058 | @@ -10,7 +10,7 @@ | |||
1059 | 10 | Mir has a test suite available in the package mir-test-tools that checks the | 10 | Mir has a test suite available in the package mir-test-tools that checks the |
1060 | 11 | operation of Mir. | 11 | operation of Mir. |
1061 | 12 | Mir also provides a test suite in mir-android-diagnostics that is helpful in | 12 | Mir also provides a test suite in mir-android-diagnostics that is helpful in |
1063 | 13 | checking how a new device will work with Mir. | 13 | checking how a new device will work with Mir. |
1064 | 14 | 14 | ||
1065 | 15 | ##Mir and libhybris## | 15 | ##Mir and libhybris## |
1066 | 16 | Vendor provided drivers are compiled against Android's bionic libc. | 16 | Vendor provided drivers are compiled against Android's bionic libc. |
1067 | @@ -21,7 +21,7 @@ | |||
1068 | 21 | tests to see if mir will run on the device. The tests are aimed checking | 21 | tests to see if mir will run on the device. The tests are aimed checking |
1069 | 22 | the operation of hybris on non-Mir graphics stacks. Furthermore, they test a | 22 | the operation of hybris on non-Mir graphics stacks. Furthermore, they test a |
1070 | 23 | more limited range of hardware module capabilities (e.g. they don't test HWC | 23 | more limited range of hardware module capabilities (e.g. they don't test HWC |
1072 | 24 | overlay capability) | 24 | overlay capability) |
1073 | 25 | 25 | ||
1074 | 26 | ###Mir Client Software Rendering### | 26 | ###Mir Client Software Rendering### |
1075 | 27 | 27 | ||
1076 | @@ -45,7 +45,7 @@ | |||
1077 | 45 | This test checks that the display can post content to the screen. It should | 45 | This test checks that the display can post content to the screen. It should |
1078 | 46 | flash the screen briefly and run without error. Since it is important that | 46 | flash the screen briefly and run without error. Since it is important that |
1079 | 47 | screen looks flawless, a visual inspection should also be perfomed using | 47 | screen looks flawless, a visual inspection should also be perfomed using |
1081 | 48 | mir_demo_standalone_render_to_fb and mir_demo_standalone_render_overlays | 48 | mir_demo_standalone_render_to_fb and mir_demo_standalone_render_overlays |
1082 | 49 | 49 | ||
1083 | 50 | ###Mir GPU buffer allocations (gralloc tests)### | 50 | ###Mir GPU buffer allocations (gralloc tests)### |
1084 | 51 | 51 | ||
1085 | @@ -113,22 +113,22 @@ | |||
1086 | 113 | Mir has some android specific options for watching HWC interactions. This | 113 | Mir has some android specific options for watching HWC interactions. This |
1087 | 114 | option is available with mir_demo_standalone_* and mir_demo_server_* | 114 | option is available with mir_demo_standalone_* and mir_demo_server_* |
1088 | 115 | 115 | ||
1090 | 116 | If you run | 116 | If you run |
1091 | 117 | 117 | ||
1092 | 118 | mir_proving_server --hwc-report log | 118 | mir_proving_server --hwc-report log |
1093 | 119 | 119 | ||
1094 | 120 | You will get output similar to this: | 120 | You will get output similar to this: |
1095 | 121 | 121 | ||
1096 | 122 | before prepare(): | 122 | before prepare(): |
1101 | 123 | # | pos {l,t,r,b} | crop {l,t,r,b} | transform | blending | | 123 | # | pos {l,t,r,b} | crop {l,t,r,b} | transform | blending | |
1102 | 124 | 0 | { 0, 0, 512, 512} | { 0, 0, 512, 512} | NONE | NONE | | 124 | 0 | { 0, 0, 512, 512} | { 0, 0, 512, 512} | NONE | NONE | |
1103 | 125 | 1 | { 80, 80, 592, 592} | { 0, 0, 512, 512} | NONE | NONE | | 125 | 1 | { 80, 80, 592, 592} | { 0, 0, 512, 512} | NONE | NONE | |
1104 | 126 | 2 | { 0, 0, 768,1280} | { 0, 0, 768,1280} | NONE | NONE | | 126 | 2 | { 0, 0, 768,1280} | { 0, 0, 768,1280} | NONE | NONE | |
1105 | 127 | after prepare(): | 127 | after prepare(): |
1110 | 128 | # | Type | | 128 | # | Type | |
1111 | 129 | 0 | OVERLAY | | 129 | 0 | OVERLAY | |
1112 | 130 | 1 | OVERLAY | | 130 | 1 | OVERLAY | |
1113 | 131 | 2 | FB_TARGET | | 131 | 2 | FB_TARGET | |
1114 | 132 | set list(): | 132 | set list(): |
1115 | 133 | # | handle | 133 | # | handle |
1116 | 134 | 0 | 0x2183540 | 134 | 0 | 0x2183540 |
1117 | @@ -142,8 +142,8 @@ | |||
1118 | 142 | vsync signal and the blanking are also logged. | 142 | vsync signal and the blanking are also logged. |
1119 | 143 | 143 | ||
1120 | 144 | The "--hwc-report log" option should work with all android-based mir servers | 144 | The "--hwc-report log" option should work with all android-based mir servers |
1123 | 145 | and demo standalone programs. If its more convenient, setting | 145 | and demo standalone programs. If its more convenient, setting |
1124 | 146 | MIR_SERVER_HWC_REPORT=log to the environment of the running server will give | 146 | MIR_SERVER_HWC_REPORT=log to the environment of the running server will give |
1125 | 147 | the hwc report on stdout. | 147 | the hwc report on stdout. |
1126 | 148 | 148 | ||
1127 | 149 | ###Android platform quirks### | 149 | ###Android platform quirks### |
1128 | @@ -164,7 +164,7 @@ | |||
1129 | 164 | 164 | ||
1130 | 165 | This means that Mir does not support the version of hwc on the device. | 165 | This means that Mir does not support the version of hwc on the device. |
1131 | 166 | As of Feb 2016, Mir supports the legacy FB module, as well as HWC versions | 166 | As of Feb 2016, Mir supports the legacy FB module, as well as HWC versions |
1133 | 167 | 1.0, 1.1, 1.2, 1.3, and 1.4. | 167 | 1.0, 1.1, 1.2, 1.3, and 1.4. |
1134 | 168 | 168 | ||
1135 | 169 | If you run | 169 | If you run |
1136 | 170 | 170 | ||
1137 | 171 | 171 | ||
1138 | === modified file 'doc/android_technical_details.md' | |||
1139 | --- doc/android_technical_details.md 2015-02-22 07:46:25 +0000 | |||
1140 | +++ doc/android_technical_details.md 2016-10-27 03:52:22 +0000 | |||
1141 | @@ -35,6 +35,6 @@ | |||
1142 | 35 | later. The deprecated FB HAL module from android's libhardware should also work. | 35 | later. The deprecated FB HAL module from android's libhardware should also work. |
1143 | 36 | If you are attempting to get mir to work on a new device, check out | 36 | If you are attempting to get mir to work on a new device, check out |
1144 | 37 | \subpage android_new_device_bringup "this page" for suggestions on | 37 | \subpage android_new_device_bringup "this page" for suggestions on |
1146 | 38 | troubleshooting. You can also | 38 | troubleshooting. You can also |
1147 | 39 | <a href="https://bugs.launchpad.net/mir">file a bug,</a> being very specific | 39 | <a href="https://bugs.launchpad.net/mir">file a bug,</a> being very specific |
1149 | 40 | about the chipset, GPU, and driver versions that your phone has. | 40 | about the chipset, GPU, and driver versions that your phone has. |
1150 | 41 | 41 | ||
1151 | === modified file 'doc/building_source_for_arm.md' | |||
1152 | --- doc/building_source_for_arm.md 2016-09-08 02:58:56 +0000 | |||
1153 | +++ doc/building_source_for_arm.md 2016-10-27 03:52:22 +0000 | |||
1154 | @@ -7,7 +7,7 @@ | |||
1155 | 7 | Building on the ARM device | 7 | Building on the ARM device |
1156 | 8 | -------------------------- | 8 | -------------------------- |
1157 | 9 | 9 | ||
1159 | 10 | If you have an ARM device you should be able to compile and install directly | 10 | If you have an ARM device you should be able to compile and install directly |
1160 | 11 | on the device. Although this will usually be significantly slower than using a | 11 | on the device. Although this will usually be significantly slower than using a |
1161 | 12 | desktop. On the armhf or arm64 target device just follow these steps: | 12 | desktop. On the armhf or arm64 target device just follow these steps: |
1162 | 13 | 13 | ||
1163 | @@ -63,7 +63,7 @@ | |||
1164 | 63 | 63 | ||
1165 | 64 | * <a href="https://wiki.debian.org/sbuild"> https://wiki.debian.org/sbuild</a> | 64 | * <a href="https://wiki.debian.org/sbuild"> https://wiki.debian.org/sbuild</a> |
1166 | 65 | * <a href="https://wiki.ubuntu.com/SimpleSbuild"> | 65 | * <a href="https://wiki.ubuntu.com/SimpleSbuild"> |
1168 | 66 | https://wiki.ubuntu.com/SimpleSbuild</a> | 66 | https://wiki.ubuntu.com/SimpleSbuild</a> |
1169 | 67 | 67 | ||
1170 | 68 | If you do not wish to run the Mir test suite during package generation, set | 68 | If you do not wish to run the Mir test suite during package generation, set |
1171 | 69 | DEB_BUILD_OPTIONS=nocheck to your environment | 69 | DEB_BUILD_OPTIONS=nocheck to your environment |
1172 | @@ -76,20 +76,20 @@ | |||
1173 | 76 | 76 | ||
1174 | 77 | $ cd mir_source_dir | 77 | $ cd mir_source_dir |
1175 | 78 | $ debuild -S -uc -us | 78 | $ debuild -S -uc -us |
1177 | 79 | $ cd .. | 79 | $ cd .. |
1178 | 80 | $ sbuild -d vivid --arch armhf mir_<version_string>.dsc | 80 | $ sbuild -d vivid --arch armhf mir_<version_string>.dsc |
1179 | 81 | 81 | ||
1180 | 82 | Cross-compile sbuild package generation | 82 | Cross-compile sbuild package generation |
1181 | 83 | --------------------------------------- | 83 | --------------------------------------- |
1182 | 84 | 84 | ||
1184 | 85 | This uses a cross-compile toolchain to compile the package, and generally | 85 | This uses a cross-compile toolchain to compile the package, and generally |
1185 | 86 | should be faster than the emulated sbuild package generation. | 86 | should be faster than the emulated sbuild package generation. |
1186 | 87 | 87 | ||
1188 | 88 | Substitute \<version_string> for the .dsc file name generated by the debuild | 88 | Substitute \<version_string> for the .dsc file name generated by the debuild |
1189 | 89 | command. | 89 | command. |
1190 | 90 | 90 | ||
1191 | 91 | $ cd mir_source_dir | 91 | $ cd mir_source_dir |
1192 | 92 | $ debuild -S -uc -us | 92 | $ debuild -S -uc -us |
1194 | 93 | $ cd .. | 93 | $ cd .. |
1195 | 94 | $ sbuild -d vivid --host armhf --build amd64 mir_\<version_string>.dsc | 94 | $ sbuild -d vivid --host armhf --build amd64 mir_\<version_string>.dsc |
1196 | 95 | 95 | ||
1197 | 96 | 96 | ||
1198 | === modified file 'doc/building_source_for_pc.md' | |||
1199 | --- doc/building_source_for_pc.md 2016-01-29 08:18:22 +0000 | |||
1200 | +++ doc/building_source_for_pc.md 2016-10-27 03:52:22 +0000 | |||
1201 | @@ -57,15 +57,15 @@ | |||
1202 | 57 | $ bin/mir_demo_server --launch_client bin/mir_demo_client_multiwin | 57 | $ bin/mir_demo_server --launch_client bin/mir_demo_client_multiwin |
1203 | 58 | 58 | ||
1204 | 59 | Other examples described elsewhere in this documentation assume you're using the | 59 | Other examples described elsewhere in this documentation assume you're using the |
1206 | 60 | installed version and simply need "bin/" adding to specify the local build. | 60 | installed version and simply need "bin/" adding to specify the local build. |
1207 | 61 | 61 | ||
1208 | 62 | 62 | ||
1209 | 63 | Install Mir | 63 | Install Mir |
1210 | 64 | ----------- | 64 | ----------- |
1211 | 65 | 65 | ||
1213 | 66 | *It should not be necessary to install Mir for experimental purposes (see | 66 | *It should not be necessary to install Mir for experimental purposes (see |
1214 | 67 | "Running Mir" above).* Further, if you are using an Ubuntu derived disto then | 67 | "Running Mir" above).* Further, if you are using an Ubuntu derived disto then |
1216 | 68 | there's likely to be existing Mir binaries elsewhere that may interact badly | 68 | there's likely to be existing Mir binaries elsewhere that may interact badly |
1217 | 69 | with a second install. | 69 | with a second install. |
1218 | 70 | 70 | ||
1219 | 71 | To install Mir just use the normal make install command: | 71 | To install Mir just use the normal make install command: |
1220 | @@ -78,7 +78,7 @@ | |||
1221 | 78 | NB You may need "sudo ldconfig" to refresh the cache before the installed | 78 | NB You may need "sudo ldconfig" to refresh the cache before the installed |
1222 | 79 | programs work. | 79 | programs work. |
1223 | 80 | 80 | ||
1225 | 81 | If you install to a non-standard location, keep in mind that you will probably | 81 | If you install to a non-standard location, keep in mind that you will probably |
1226 | 82 | need to properly set the PKG_CONFIG_PATH environment variable to allow other | 82 | need to properly set the PKG_CONFIG_PATH environment variable to allow other |
1227 | 83 | applications to build against Mir, and LD_LIBRARY_PATH to allow applications to | 83 | applications to build against Mir, and LD_LIBRARY_PATH to allow applications to |
1228 | 84 | find the Mir libraries at runtime. | 84 | find the Mir libraries at runtime. |
1229 | 85 | 85 | ||
1230 | === modified file 'doc/demo_server_controls.md' | |||
1231 | --- doc/demo_server_controls.md 2016-01-29 08:18:22 +0000 | |||
1232 | +++ doc/demo_server_controls.md 2016-10-27 03:52:22 +0000 | |||
1233 | @@ -39,7 +39,7 @@ | |||
1234 | 39 | 39 | ||
1235 | 40 | For those writing client code request to set the surface attribute | 40 | For those writing client code request to set the surface attribute |
1236 | 41 | `mir_surface_attrib_state` are honoured: | 41 | `mir_surface_attrib_state` are honoured: |
1238 | 42 | - `mir_surface_state_restored`: restores the window | 42 | - `mir_surface_state_restored`: restores the window |
1239 | 43 | - `mir_surface_state_maximized`: maximizes size | 43 | - `mir_surface_state_maximized`: maximizes size |
1240 | 44 | - `mir_surface_state_vertmaximized`: maximizes height | 44 | - `mir_surface_state_vertmaximized`: maximizes height |
1241 | 45 | - `mir_surface_state_horizmaximized`: maximizes width | 45 | - `mir_surface_state_horizmaximized`: maximizes width |
1242 | 46 | 46 | ||
1243 | === modified file 'doc/dso_versioning_guide.md' | |||
1244 | --- doc/dso_versioning_guide.md 2016-07-18 07:38:38 +0000 | |||
1245 | +++ doc/dso_versioning_guide.md 2016-10-27 03:52:22 +0000 | |||
1246 | @@ -185,7 +185,7 @@ | |||
1247 | 185 | versions. For the moment, we can not bother trying to make this work. | 185 | versions. For the moment, we can not bother trying to make this work. |
1248 | 186 | 186 | ||
1249 | 187 | 187 | ||
1251 | 188 | See also: | 188 | See also: |
1252 | 189 | --------- | 189 | --------- |
1253 | 190 | [Binutils manual](https://sourceware.org/binutils/docs/ld/VERSION.html) | 190 | [Binutils manual](https://sourceware.org/binutils/docs/ld/VERSION.html) |
1254 | 191 | 191 | ||
1255 | 192 | 192 | ||
1256 | === modified file 'doc/extra.css' | |||
1257 | --- doc/extra.css 2013-07-02 13:38:43 +0000 | |||
1258 | +++ doc/extra.css 2016-10-27 03:52:22 +0000 | |||
1259 | @@ -8,7 +8,7 @@ | |||
1260 | 8 | margin: 0px; | 8 | margin: 0px; |
1261 | 9 | padding: 2px 0px; | 9 | padding: 2px 0px; |
1262 | 10 | } | 10 | } |
1264 | 11 | 11 | ||
1265 | 12 | #projectbrief | 12 | #projectbrief |
1266 | 13 | { | 13 | { |
1267 | 14 | font: 120% Ubuntu,Arial,sans-serif; | 14 | font: 120% Ubuntu,Arial,sans-serif; |
1268 | 15 | 15 | ||
1269 | === modified file 'doc/installing_prebuilt_on_android.md' | |||
1270 | --- doc/installing_prebuilt_on_android.md 2015-04-28 07:54:10 +0000 | |||
1271 | +++ doc/installing_prebuilt_on_android.md 2016-10-27 03:52:22 +0000 | |||
1272 | @@ -4,7 +4,7 @@ | |||
1273 | 4 | Supported Devices | 4 | Supported Devices |
1274 | 5 | ----------------- | 5 | ----------------- |
1275 | 6 | 6 | ||
1277 | 7 | Mir has been used on an array of devices powered by the factory-provided | 7 | Mir has been used on an array of devices powered by the factory-provided |
1278 | 8 | android drivers. Mir currently supports the fb module and the hwc module | 8 | android drivers. Mir currently supports the fb module and the hwc module |
1279 | 9 | up to version 1.3. If you encounter a problem with your device, please | 9 | up to version 1.3. If you encounter a problem with your device, please |
1280 | 10 | file a bug and we'll see if we can help. | 10 | file a bug and we'll see if we can help. |
1281 | @@ -12,7 +12,7 @@ | |||
1282 | 12 | Installing Mir | 12 | Installing Mir |
1283 | 13 | -------------- | 13 | -------------- |
1284 | 14 | 14 | ||
1286 | 15 | Mir should be installed and used by default on Ubuntu Touch images. Mir is | 15 | Mir should be installed and used by default on Ubuntu Touch images. Mir is |
1287 | 16 | available in the Ubuntu archive. Ensure that the android platform drivers, | 16 | available in the Ubuntu archive. Ensure that the android platform drivers, |
1288 | 17 | available in the mir-graphics-drivers-android metapackage, are installed for | 17 | available in the mir-graphics-drivers-android metapackage, are installed for |
1289 | 18 | an android-based device. | 18 | an android-based device. |
1290 | 19 | 19 | ||
1291 | === modified file 'doc/mainpage.md' | |||
1292 | --- doc/mainpage.md 2016-10-12 06:03:15 +0000 | |||
1293 | +++ doc/mainpage.md 2016-10-27 03:52:22 +0000 | |||
1294 | @@ -56,7 +56,7 @@ | |||
1295 | 56 | lp:~mir-team/mir/development-branch | 56 | lp:~mir-team/mir/development-branch |
1296 | 57 | 57 | ||
1297 | 58 | Approximately fortnightly, this development branch is promoted to the branch | 58 | Approximately fortnightly, this development branch is promoted to the branch |
1299 | 59 | used for the ubuntu archive and touch images. Please submit any merge proposals | 59 | used for the ubuntu archive and touch images. Please submit any merge proposals |
1300 | 60 | against the development branch. | 60 | against the development branch. |
1301 | 61 | 61 | ||
1302 | 62 | Please file bug reports at: https://bugs.launchpad.net/mir | 62 | Please file bug reports at: https://bugs.launchpad.net/mir |
1303 | @@ -82,23 +82,23 @@ | |||
1304 | 82 | Mir server is written as a library which allows the server code to be adapted | 82 | Mir server is written as a library which allows the server code to be adapted |
1305 | 83 | for bespoke applications. | 83 | for bespoke applications. |
1306 | 84 | 84 | ||
1308 | 85 | - \subpage server_example.cpp | 85 | - \subpage server_example.cpp |
1309 | 86 | "server_example.cpp: a test executable hosting the following" | 86 | "server_example.cpp: a test executable hosting the following" |
1311 | 87 | - \subpage server_example_input_event_filter.cpp | 87 | - \subpage server_example_input_event_filter.cpp |
1312 | 88 | "server_example_input_event_filter.cpp: provide a Quit command" | 88 | "server_example_input_event_filter.cpp: provide a Quit command" |
1314 | 89 | - \subpage server_example_display_configuration_policy.cpp | 89 | - \subpage server_example_display_configuration_policy.cpp |
1315 | 90 | "server_example_display_configuration_policy.cpp: configuring display layout" | 90 | "server_example_display_configuration_policy.cpp: configuring display layout" |
1317 | 91 | - \subpage server_example_input_filter.cpp | 91 | - \subpage server_example_input_filter.cpp |
1318 | 92 | "server_example_input_filter.cpp: print input events to stdout" | 92 | "server_example_input_filter.cpp: print input events to stdout" |
1320 | 93 | - \subpage server_example_log_options.cpp | 93 | - \subpage server_example_log_options.cpp |
1321 | 94 | "server_example_log_options.cpp: replace Mir logger with glog" | 94 | "server_example_log_options.cpp: replace Mir logger with glog" |
1323 | 95 | - \subpage server_example_basic_window_manager.h | 95 | - \subpage server_example_basic_window_manager.h |
1324 | 96 | "server_example_basic_window_manager.h: How to wire up a window manager" | 96 | "server_example_basic_window_manager.h: How to wire up a window manager" |
1326 | 97 | - \subpage server_example_window_management.cpp | 97 | - \subpage server_example_window_management.cpp |
1327 | 98 | "server_example_window_management.cpp: simple window management examples" | 98 | "server_example_window_management.cpp: simple window management examples" |
1329 | 99 | - \subpage server_example_canonical_window_manager.cpp | 99 | - \subpage server_example_canonical_window_manager.cpp |
1330 | 100 | "server_example_canonical_window_manager.cpp: canonical window management policy" | 100 | "server_example_canonical_window_manager.cpp: canonical window management policy" |
1332 | 101 | - \subpage server_example_custom_compositor.cpp | 101 | - \subpage server_example_custom_compositor.cpp |
1333 | 102 | "server_example_custom_compositor.cpp: demonstrate writing an alternative GL rendering code" | 102 | "server_example_custom_compositor.cpp: demonstrate writing an alternative GL rendering code" |
1334 | 103 | 103 | ||
1335 | 104 | Working on Mir code | 104 | Working on Mir code |
1336 | @@ -106,7 +106,7 @@ | |||
1337 | 106 | 106 | ||
1338 | 107 | - \ref md_README "Mir Read me" | 107 | - \ref md_README "Mir Read me" |
1339 | 108 | - \ref md_HACKING "Mir hacking guide" | 108 | - \ref md_HACKING "Mir hacking guide" |
1341 | 109 | - \subpage android_new_device_bringup "New android device bringup" | 109 | - \subpage android_new_device_bringup "New android device bringup" |
1342 | 110 | - \ref component_reports | 110 | - \ref component_reports |
1343 | 111 | - \ref dso_versioning_guide | 111 | - \ref dso_versioning_guide |
1344 | 112 | - \ref abi_compatibility_tools | 112 | - \ref abi_compatibility_tools |
1345 | 113 | 113 | ||
1346 | === modified file 'doc/setup_kvm_for_mir.md' | |||
1347 | --- doc/setup_kvm_for_mir.md 2015-06-17 05:20:42 +0000 | |||
1348 | +++ doc/setup_kvm_for_mir.md 2016-10-27 03:52:22 +0000 | |||
1349 | @@ -18,7 +18,7 @@ | |||
1350 | 18 | More details on setting up KVM can be found in the | 18 | More details on setting up KVM can be found in the |
1351 | 19 | [wiki](https://help.ubuntu.com/community/KVM/Installation). | 19 | [wiki](https://help.ubuntu.com/community/KVM/Installation). |
1352 | 20 | 20 | ||
1354 | 21 | Now create a new virtual machine with virt-manager and a current Linux boot iso | 21 | Now create a new virtual machine with virt-manager and a current Linux boot iso |
1355 | 22 | image or reconfigure an existing installation. | 22 | image or reconfigure an existing installation. |
1356 | 23 | 23 | ||
1357 | 24 | Configure the virtual machine | 24 | Configure the virtual machine |
1358 | @@ -29,7 +29,7 @@ | |||
1359 | 29 | configuration entries: Video and Display. | 29 | configuration entries: Video and Display. |
1360 | 30 | 30 | ||
1361 | 31 | * Open the Display settings and select SPICE instead of KVM | 31 | * Open the Display settings and select SPICE instead of KVM |
1363 | 32 | * Open the Video settings and select QXL as model. | 32 | * Open the Video settings and select QXL as model. |
1364 | 33 | 33 | ||
1365 | 34 | Now boot the machine and build a new kernel and verify that you have the right | 34 | Now boot the machine and build a new kernel and verify that you have the right |
1366 | 35 | Mesa package. | 35 | Mesa package. |
1367 | @@ -41,7 +41,7 @@ | |||
1368 | 41 | Since the DRM QXL driver only provides KMS, GEM and dma-buf support, and no 3D | 41 | Since the DRM QXL driver only provides KMS, GEM and dma-buf support, and no 3D |
1369 | 42 | GPU emulation or forwarding, Mesa will load the kms-swrast driver. This driver | 42 | GPU emulation or forwarding, Mesa will load the kms-swrast driver. This driver |
1370 | 43 | is available since Mesa 10.3.0. The necessary support for dmabuf fds and crtc | 43 | is available since Mesa 10.3.0. The necessary support for dmabuf fds and crtc |
1372 | 44 | handling in QXL is available since Linux 3.18. | 44 | handling in QXL is available since Linux 3.18. |
1373 | 45 | 45 | ||
1374 | 46 | With that we have enough support for EGL and GLESv2 to run Mir. | 46 | With that we have enough support for EGL and GLESv2 to run Mir. |
1375 | 47 | 47 | ||
1376 | 48 | 48 | ||
1377 | === modified file 'doc/setup_vmware_for_mir.md' | |||
1378 | --- doc/setup_vmware_for_mir.md 2016-09-08 02:58:56 +0000 | |||
1379 | +++ doc/setup_vmware_for_mir.md 2016-10-27 03:52:22 +0000 | |||
1380 | @@ -33,9 +33,9 @@ | |||
1381 | 33 | 33 | ||
1382 | 34 | 9. Try out a Mir demo server: | 34 | 9. Try out a Mir demo server: |
1383 | 35 | 1. Change to VT2 and run | 35 | 1. Change to VT2 and run |
1385 | 36 | 36 | ||
1386 | 37 | `$ sudo mir_demo_server --launch-client mir_demo_client_egltriangle` | 37 | `$ sudo mir_demo_server --launch-client mir_demo_client_egltriangle` |
1388 | 38 | 38 | ||
1389 | 39 | 2. You should see a window with a triangle spinning fast | 39 | 2. You should see a window with a triangle spinning fast |
1390 | 40 | 3. Use Alt + click + drag to move the window around | 40 | 3. Use Alt + click + drag to move the window around |
1391 | 41 | 4. Use Ctrl+Alt+BkSp to stop the server | 41 | 4. Use Ctrl+Alt+BkSp to stop the server |
1392 | 42 | 42 | ||
1393 | === modified file 'doc/using_mir_on_android.md' | |||
1394 | --- doc/using_mir_on_android.md 2016-01-29 08:18:22 +0000 | |||
1395 | +++ doc/using_mir_on_android.md 2016-10-27 03:52:22 +0000 | |||
1396 | @@ -5,7 +5,7 @@ | |||
1397 | 5 | you're already using Mir. | 5 | you're already using Mir. |
1398 | 6 | 6 | ||
1399 | 7 | If you would like to run a pre-release version of Mir on your device, you'll | 7 | If you would like to run a pre-release version of Mir on your device, you'll |
1401 | 8 | need to recompile our downstream dependencies (unity-system-compositor and | 8 | need to recompile our downstream dependencies (unity-system-compositor and |
1402 | 9 | qtmir) to ensure ABI compatibility with the pre-release version of Mir. | 9 | qtmir) to ensure ABI compatibility with the pre-release version of Mir. |
1403 | 10 | 10 | ||
1404 | 11 | Using some demo applications | 11 | Using some demo applications |
1405 | 12 | 12 | ||
1406 | === modified file 'doc/using_mir_on_pc.md' | |||
1407 | --- doc/using_mir_on_pc.md 2016-01-29 08:18:22 +0000 | |||
1408 | +++ doc/using_mir_on_pc.md 2016-10-27 03:52:22 +0000 | |||
1409 | @@ -43,15 +43,15 @@ | |||
1410 | 43 | To run Mir as an X client start it from an X terminal: | 43 | To run Mir as an X client start it from an X terminal: |
1411 | 44 | 44 | ||
1412 | 45 | $ mir_demo_server --launch-client mir_demo_client_multiwin | 45 | $ mir_demo_server --launch-client mir_demo_client_multiwin |
1414 | 46 | 46 | ||
1415 | 47 | You can start additional Mir clients, for example (in a new terminal): | 47 | You can start additional Mir clients, for example (in a new terminal): |
1416 | 48 | 48 | ||
1417 | 49 | $ mir_demo_egltriangle | 49 | $ mir_demo_egltriangle |
1419 | 50 | 50 | ||
1420 | 51 | To exit from Mir: | 51 | To exit from Mir: |
1422 | 52 | 52 | ||
1423 | 53 | <Ctrl+Alt+BkSp> | 53 | <Ctrl+Alt+BkSp> |
1425 | 54 | 54 | ||
1426 | 55 | Note: up to Mir 0.18 it is also necessary to specify `--platform-input-lib` when | 55 | Note: up to Mir 0.18 it is also necessary to specify `--platform-input-lib` when |
1427 | 56 | starting the server: | 56 | starting the server: |
1428 | 57 | - for Mir-0.17 add: `--platform-input-lib server-mesa-x11.so.6` | 57 | - for Mir-0.17 add: `--platform-input-lib server-mesa-x11.so.6` |
1429 | @@ -62,20 +62,20 @@ | |||
1430 | 62 | To run Mir natively on a PC/desktop/laptop: | 62 | To run Mir natively on a PC/desktop/laptop: |
1431 | 63 | 63 | ||
1432 | 64 | $ sudo DISPLAY= mir_demo_server --vt 1 --arw-file | 64 | $ sudo DISPLAY= mir_demo_server --vt 1 --arw-file |
1435 | 65 | 65 | ||
1436 | 66 | This will switch you to a Mir session on VT1. Switch back to your X-based | 66 | This will switch you to a Mir session on VT1. Switch back to your X-based |
1437 | 67 | desktop: | 67 | desktop: |
1438 | 68 | 68 | ||
1439 | 69 | <Ctrl+Alt+F7> | 69 | <Ctrl+Alt+F7> |
1441 | 70 | 70 | ||
1442 | 71 | In a new terminal: | 71 | In a new terminal: |
1443 | 72 | 72 | ||
1444 | 73 | $ mir_demo_client_multiwin -m /tmp/mir_socket | 73 | $ mir_demo_client_multiwin -m /tmp/mir_socket |
1446 | 74 | 74 | ||
1447 | 75 | Switch back to Mir. | 75 | Switch back to Mir. |
1448 | 76 | 76 | ||
1449 | 77 | <Ctrl+Alt+F1> | 77 | <Ctrl+Alt+F1> |
1451 | 78 | 78 | ||
1452 | 79 | Watch your friends be amazed! | 79 | Watch your friends be amazed! |
1453 | 80 | 80 | ||
1454 | 81 | To exit from Mir: | 81 | To exit from Mir: |
1455 | 82 | 82 | ||
1456 | === modified file 'examples/animated_cursor_demo_client.c' | |||
1457 | --- examples/animated_cursor_demo_client.c 2016-10-21 07:53:23 +0000 | |||
1458 | +++ examples/animated_cursor_demo_client.c 2016-10-27 03:52:22 +0000 | |||
1459 | @@ -39,7 +39,7 @@ | |||
1460 | 39 | 39 | ||
1461 | 40 | MirGraphicsRegion region; | 40 | MirGraphicsRegion region; |
1462 | 41 | mir_buffer_stream_get_graphics_region(stream, ®ion); | 41 | mir_buffer_stream_get_graphics_region(stream, ®ion); |
1464 | 42 | 42 | ||
1465 | 43 | for (int y = 0; y < region.height; ++y) | 43 | for (int y = 0; y < region.height; ++y) |
1466 | 44 | { | 44 | { |
1467 | 45 | for (int x = 0; x < region.width; ++x) | 45 | for (int x = 0; x < region.width; ++x) |
1468 | @@ -62,7 +62,7 @@ | |||
1469 | 62 | uint32_t* pixel = (uint32_t*)(origin + x*bpp + y*region.stride); | 62 | uint32_t* pixel = (uint32_t*)(origin + x*bpp + y*region.stride); |
1470 | 63 | *pixel = foreground; | 63 | *pixel = foreground; |
1471 | 64 | } | 64 | } |
1473 | 65 | 65 | ||
1474 | 66 | mir_buffer_stream_swap_buffers_sync(stream); | 66 | mir_buffer_stream_swap_buffers_sync(stream); |
1475 | 67 | } | 67 | } |
1476 | 68 | 68 | ||
1477 | @@ -76,7 +76,7 @@ | |||
1478 | 76 | MirCursorConfiguration* conf = mir_cursor_configuration_from_buffer_stream(stream, 0, 0); | 76 | MirCursorConfiguration* conf = mir_cursor_configuration_from_buffer_stream(stream, 0, 0); |
1479 | 77 | mir_wait_for(mir_surface_configure_cursor(surface, conf)); | 77 | mir_wait_for(mir_surface_configure_cursor(surface, conf)); |
1480 | 78 | mir_cursor_configuration_destroy(conf); | 78 | mir_cursor_configuration_destroy(conf); |
1482 | 79 | 79 | ||
1483 | 80 | return stream; | 80 | return stream; |
1484 | 81 | } | 81 | } |
1485 | 82 | 82 | ||
1486 | 83 | 83 | ||
1487 | === modified file 'examples/client_helpers.cpp' | |||
1488 | --- examples/client_helpers.cpp 2016-01-29 08:18:22 +0000 | |||
1489 | +++ examples/client_helpers.cpp 2016-10-27 03:52:22 +0000 | |||
1490 | @@ -131,7 +131,7 @@ | |||
1491 | 131 | mir_connection_get_available_surface_formats(connection, pixel_formats, mir_pixel_formats, &valid_formats); | 131 | mir_connection_get_available_surface_formats(connection, pixel_formats, mir_pixel_formats, &valid_formats); |
1492 | 132 | if (valid_formats == 0) | 132 | if (valid_formats == 0) |
1493 | 133 | throw std::runtime_error("no pixel formats for surface"); | 133 | throw std::runtime_error("no pixel formats for surface"); |
1495 | 134 | selected_format = pixel_formats[0]; | 134 | selected_format = pixel_formats[0]; |
1496 | 135 | //select an 8 bit opaque format if we can | 135 | //select an 8 bit opaque format if we can |
1497 | 136 | if (!prefers_alpha) | 136 | if (!prefers_alpha) |
1498 | 137 | { | 137 | { |
1499 | @@ -145,7 +145,7 @@ | |||
1500 | 145 | } | 145 | } |
1501 | 146 | } | 146 | } |
1502 | 147 | } | 147 | } |
1504 | 148 | 148 | ||
1505 | 149 | auto deleter = [](MirSurfaceSpec *spec) { mir_surface_spec_release(spec); }; | 149 | auto deleter = [](MirSurfaceSpec *spec) { mir_surface_spec_release(spec); }; |
1506 | 150 | std::unique_ptr<MirSurfaceSpec, decltype(deleter)> spec{ | 150 | std::unique_ptr<MirSurfaceSpec, decltype(deleter)> spec{ |
1507 | 151 | mir_connection_create_spec_for_normal_surface(connection, width, height, selected_format), | 151 | mir_connection_create_spec_for_normal_surface(connection, width, height, selected_format), |
1508 | 152 | 152 | ||
1509 | === modified file 'examples/client_helpers.h' | |||
1510 | --- examples/client_helpers.h 2016-07-18 07:38:38 +0000 | |||
1511 | +++ examples/client_helpers.h 2016-10-27 03:52:22 +0000 | |||
1512 | @@ -26,7 +26,7 @@ | |||
1513 | 26 | 26 | ||
1514 | 27 | namespace mir | 27 | namespace mir |
1515 | 28 | { | 28 | { |
1517 | 29 | namespace examples | 29 | namespace examples |
1518 | 30 | { | 30 | { |
1519 | 31 | class Connection | 31 | class Connection |
1520 | 32 | { | 32 | { |
1521 | 33 | 33 | ||
1522 | === modified file 'examples/client_touch_validator.cpp' | |||
1523 | --- examples/client_touch_validator.cpp 2016-10-21 07:53:23 +0000 | |||
1524 | +++ examples/client_touch_validator.cpp 2016-10-27 03:52:22 +0000 | |||
1525 | @@ -79,7 +79,7 @@ | |||
1526 | 79 | must_be_present.erase(it); | 79 | must_be_present.erase(it); |
1527 | 80 | } | 80 | } |
1528 | 81 | // Here we validate condition 4 | 81 | // Here we validate condition 4 |
1530 | 82 | else if (mir_touch_event_action(event, i) == mir_touch_action_down) | 82 | else if (mir_touch_event_action(event, i) == mir_touch_action_down) |
1531 | 83 | { | 83 | { |
1532 | 84 | if (found_a_up_down) | 84 | if (found_a_up_down) |
1533 | 85 | printf("Found too many downs in one event\n"); | 85 | printf("Found too many downs in one event\n"); |
1534 | @@ -99,16 +99,16 @@ | |||
1535 | 99 | printf("We received a touch which did not contain all required IDs\n"); | 99 | printf("We received a touch which did not contain all required IDs\n"); |
1536 | 100 | return false; | 100 | return false; |
1537 | 101 | } | 101 | } |
1539 | 102 | 102 | ||
1540 | 103 | return true; | 103 | return true; |
1541 | 104 | } | 104 | } |
1543 | 105 | 105 | ||
1544 | 106 | class TouchState | 106 | class TouchState |
1545 | 107 | { | 107 | { |
1546 | 108 | public: | 108 | public: |
1547 | 109 | TouchState() : last_event(nullptr) {} | 109 | TouchState() : last_event(nullptr) {} |
1548 | 110 | ~TouchState() { if (last_event) mir_event_unref(last_event); } | 110 | ~TouchState() { if (last_event) mir_event_unref(last_event); } |
1550 | 111 | 111 | ||
1551 | 112 | void record_event(MirTouchEvent const* event) | 112 | void record_event(MirTouchEvent const* event) |
1552 | 113 | { | 113 | { |
1553 | 114 | if (!last_event) | 114 | if (!last_event) |
1554 | @@ -118,7 +118,7 @@ | |||
1555 | 118 | } | 118 | } |
1556 | 119 | if (!validate_events(reinterpret_cast<MirTouchEvent const*>(last_event), event)) | 119 | if (!validate_events(reinterpret_cast<MirTouchEvent const*>(last_event), event)) |
1557 | 120 | abort(); | 120 | abort(); |
1559 | 121 | 121 | ||
1560 | 122 | mir_event_unref(last_event); | 122 | mir_event_unref(last_event); |
1561 | 123 | last_event = mir_event_ref(reinterpret_cast<MirEvent const*>(event)); | 123 | last_event = mir_event_ref(reinterpret_cast<MirEvent const*>(event)); |
1562 | 124 | } | 124 | } |
1563 | @@ -133,7 +133,7 @@ | |||
1564 | 133 | auto tev = mir_input_event_get_touch_event(event); | 133 | auto tev = mir_input_event_get_touch_event(event); |
1565 | 134 | state->record_event(tev); | 134 | state->record_event(tev); |
1566 | 135 | } | 135 | } |
1568 | 136 | 136 | ||
1569 | 137 | void on_event(MirSurface * /*surface*/, const MirEvent *event, void *context) | 137 | void on_event(MirSurface * /*surface*/, const MirEvent *event, void *context) |
1570 | 138 | { | 138 | { |
1571 | 139 | TouchState *state = (TouchState*)context; | 139 | TouchState *state = (TouchState*)context; |
1572 | 140 | 140 | ||
1573 | === modified file 'examples/cursors_demo_client.c' | |||
1574 | --- examples/cursors_demo_client.c 2016-10-21 07:53:23 +0000 | |||
1575 | +++ examples/cursors_demo_client.c 2016-10-27 03:52:22 +0000 | |||
1576 | @@ -46,11 +46,11 @@ | |||
1577 | 46 | 46 | ||
1578 | 47 | size_t num_cursors = sizeof(cursors)/sizeof(*cursors); | 47 | size_t num_cursors = sizeof(cursors)/sizeof(*cursors); |
1579 | 48 | size_t real_index = cursor_index % num_cursors; | 48 | size_t real_index = cursor_index % num_cursors; |
1581 | 49 | 49 | ||
1582 | 50 | MirCursorConfiguration *conf = mir_cursor_configuration_from_name(cursors[real_index]); | 50 | MirCursorConfiguration *conf = mir_cursor_configuration_from_name(cursors[real_index]); |
1583 | 51 | 51 | ||
1584 | 52 | mir_wait_for(mir_surface_configure_cursor(surface, conf)); | 52 | mir_wait_for(mir_surface_configure_cursor(surface, conf)); |
1586 | 53 | 53 | ||
1587 | 54 | mir_cursor_configuration_destroy(conf); | 54 | mir_cursor_configuration_destroy(conf); |
1588 | 55 | } | 55 | } |
1589 | 56 | 56 | ||
1590 | 57 | 57 | ||
1591 | === modified file 'examples/demo_client_display_config.c' | |||
1592 | --- examples/demo_client_display_config.c 2016-10-21 07:53:23 +0000 | |||
1593 | +++ examples/demo_client_display_config.c 2016-10-27 03:52:22 +0000 | |||
1594 | @@ -333,13 +333,13 @@ | |||
1595 | 333 | { | 333 | { |
1596 | 334 | (void) surface; | 334 | (void) surface; |
1597 | 335 | struct ClientContext *ctx = (struct ClientContext*) context; | 335 | struct ClientContext *ctx = (struct ClientContext*) context; |
1599 | 336 | 336 | ||
1600 | 337 | if (mir_event_get_type(event) != mir_event_type_input) | 337 | if (mir_event_get_type(event) != mir_event_type_input) |
1601 | 338 | return; | 338 | return; |
1602 | 339 | MirInputEvent const* input_event = mir_event_get_input_event(event); | 339 | MirInputEvent const* input_event = mir_event_get_input_event(event); |
1603 | 340 | if (mir_input_event_get_type(input_event) != mir_input_event_type_key) | 340 | if (mir_input_event_get_type(input_event) != mir_input_event_type_key) |
1604 | 341 | return; | 341 | return; |
1606 | 342 | 342 | ||
1607 | 343 | handle_keyboard_event(ctx, mir_input_event_get_keyboard_event(input_event)); | 343 | handle_keyboard_event(ctx, mir_input_event_get_keyboard_event(input_event)); |
1608 | 344 | } | 344 | } |
1609 | 345 | 345 | ||
1610 | 346 | 346 | ||
1611 | === modified file 'examples/eglapp.c' | |||
1612 | --- examples/eglapp.c 2016-10-21 07:53:23 +0000 | |||
1613 | +++ examples/eglapp.c 2016-10-27 03:52:22 +0000 | |||
1614 | @@ -105,7 +105,7 @@ | |||
1615 | 105 | return; | 105 | return; |
1616 | 106 | if (mir_keyboard_event_key_code(kev) != XKB_KEY_q) | 106 | if (mir_keyboard_event_key_code(kev) != XKB_KEY_q) |
1617 | 107 | return; | 107 | return; |
1619 | 108 | 108 | ||
1620 | 109 | running = 0; | 109 | running = 0; |
1621 | 110 | } | 110 | } |
1622 | 111 | 111 | ||
1623 | @@ -147,7 +147,7 @@ | |||
1624 | 147 | { | 147 | { |
1625 | 148 | (void) surface; | 148 | (void) surface; |
1626 | 149 | (void) unused; | 149 | (void) unused; |
1628 | 150 | 150 | ||
1629 | 151 | switch (mir_event_get_type(ev)) | 151 | switch (mir_event_get_type(ev)) |
1630 | 152 | { | 152 | { |
1631 | 153 | case mir_event_type_input: | 153 | case mir_event_type_input: |
1632 | @@ -478,14 +478,14 @@ | |||
1633 | 478 | CHECK(mir_surface_is_valid(surface), "Can't create a surface"); | 478 | CHECK(mir_surface_is_valid(surface), "Can't create a surface"); |
1634 | 479 | 479 | ||
1635 | 480 | mir_surface_set_event_handler(surface, mir_eglapp_handle_event, NULL); | 480 | mir_surface_set_event_handler(surface, mir_eglapp_handle_event, NULL); |
1637 | 481 | 481 | ||
1638 | 482 | MirCursorConfiguration *conf = mir_cursor_configuration_from_name(cursor_name); | 482 | MirCursorConfiguration *conf = mir_cursor_configuration_from_name(cursor_name); |
1639 | 483 | mir_surface_configure_cursor(surface, conf); | 483 | mir_surface_configure_cursor(surface, conf); |
1640 | 484 | mir_cursor_configuration_destroy(conf); | 484 | mir_cursor_configuration_destroy(conf); |
1641 | 485 | 485 | ||
1642 | 486 | eglsurface = eglCreateWindowSurface(egldisplay, eglconfig, | 486 | eglsurface = eglCreateWindowSurface(egldisplay, eglconfig, |
1643 | 487 | (EGLNativeWindowType)mir_buffer_stream_get_egl_native_window(mir_surface_get_buffer_stream(surface)), NULL); | 487 | (EGLNativeWindowType)mir_buffer_stream_get_egl_native_window(mir_surface_get_buffer_stream(surface)), NULL); |
1645 | 488 | 488 | ||
1646 | 489 | CHECK(eglsurface != EGL_NO_SURFACE, "eglCreateWindowSurface failed"); | 489 | CHECK(eglsurface != EGL_NO_SURFACE, "eglCreateWindowSurface failed"); |
1647 | 490 | 490 | ||
1648 | 491 | eglctx = eglCreateContext(egldisplay, eglconfig, EGL_NO_CONTEXT, | 491 | eglctx = eglCreateContext(egldisplay, eglconfig, EGL_NO_CONTEXT, |
1649 | 492 | 492 | ||
1650 | === modified file 'examples/eglsquare.cpp' | |||
1651 | --- examples/eglsquare.cpp 2015-05-29 12:53:18 +0000 | |||
1652 | +++ examples/eglsquare.cpp 2016-10-27 03:52:22 +0000 | |||
1653 | @@ -51,14 +51,14 @@ | |||
1654 | 51 | glClear(GL_COLOR_BUFFER_BIT); | 51 | glClear(GL_COLOR_BUFFER_BIT); |
1655 | 52 | auto scaleUniform = glGetUniformLocation(program.program, "scale"); | 52 | auto scaleUniform = glGetUniformLocation(program.program, "scale"); |
1656 | 53 | glUniform2fv(scaleUniform, 1, scale); | 53 | glUniform2fv(scaleUniform, 1, scale); |
1658 | 54 | 54 | ||
1659 | 55 | context.swapbuffers(); | 55 | context.swapbuffers(); |
1660 | 56 | context.release_current(); | 56 | context.release_current(); |
1661 | 57 | } | 57 | } |
1662 | 58 | 58 | ||
1663 | 59 | void draw(float x, float y) | 59 | void draw(float x, float y) |
1664 | 60 | { | 60 | { |
1666 | 61 | float pos[2] = {x, y}; | 61 | float pos[2] = {x, y}; |
1667 | 62 | glUseProgram(program.program); | 62 | glUseProgram(program.program); |
1668 | 63 | glClear( GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT ); | 63 | glClear( GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT ); |
1669 | 64 | glUniform2fv(posUniform, 1, pos); | 64 | glUniform2fv(posUniform, 1, pos); |
1670 | @@ -68,7 +68,7 @@ | |||
1671 | 68 | } | 68 | } |
1672 | 69 | 69 | ||
1673 | 70 | RenderProgram(RenderProgram const&) = delete; | 70 | RenderProgram(RenderProgram const&) = delete; |
1675 | 71 | RenderProgram& operator=(RenderProgram const&) = delete; | 71 | RenderProgram& operator=(RenderProgram const&) = delete; |
1676 | 72 | private: | 72 | private: |
1677 | 73 | GLchar const*const frag_shader_src = | 73 | GLchar const*const frag_shader_src = |
1678 | 74 | { | 74 | { |
1679 | @@ -97,7 +97,7 @@ | |||
1680 | 97 | 1.0f, 1.0f, 0.0f, 1.0f, | 97 | 1.0f, 1.0f, 0.0f, 1.0f, |
1681 | 98 | }; | 98 | }; |
1682 | 99 | GLuint vPositionAttr; | 99 | GLuint vPositionAttr; |
1684 | 100 | GLuint posUniform; | 100 | GLuint posUniform; |
1685 | 101 | }; | 101 | }; |
1686 | 102 | 102 | ||
1687 | 103 | class SquareRenderingSurface | 103 | class SquareRenderingSurface |
1688 | 104 | 104 | ||
1689 | === modified file 'examples/fingerpaint.c' | |||
1690 | --- examples/fingerpaint.c 2016-01-29 08:18:22 +0000 | |||
1691 | +++ examples/fingerpaint.c 2016-10-27 03:52:22 +0000 | |||
1692 | @@ -94,7 +94,7 @@ | |||
1693 | 94 | case mir_pixel_format_abgr_8888: | 94 | case mir_pixel_format_abgr_8888: |
1694 | 95 | case mir_pixel_format_xbgr_8888: | 95 | case mir_pixel_format_xbgr_8888: |
1695 | 96 | alpha_shift = 24; | 96 | alpha_shift = 24; |
1697 | 97 | pixel = | 97 | pixel = |
1698 | 98 | (uint32_t)color->a << 24 | | 98 | (uint32_t)color->a << 24 | |
1699 | 99 | (uint32_t)color->b << 16 | | 99 | (uint32_t)color->b << 16 | |
1700 | 100 | (uint32_t)color->g << 8 | | 100 | (uint32_t)color->g << 8 | |
1701 | @@ -103,7 +103,7 @@ | |||
1702 | 103 | case mir_pixel_format_argb_8888: | 103 | case mir_pixel_format_argb_8888: |
1703 | 104 | case mir_pixel_format_xrgb_8888: | 104 | case mir_pixel_format_xrgb_8888: |
1704 | 105 | alpha_shift = 24; | 105 | alpha_shift = 24; |
1706 | 106 | pixel = | 106 | pixel = |
1707 | 107 | (uint32_t)color->a << 24 | | 107 | (uint32_t)color->a << 24 | |
1708 | 108 | (uint32_t)color->r << 16 | | 108 | (uint32_t)color->r << 16 | |
1709 | 109 | (uint32_t)color->g << 8 | | 109 | (uint32_t)color->g << 8 | |
1710 | @@ -157,7 +157,7 @@ | |||
1711 | 157 | char *row = region->vaddr + | 157 | char *row = region->vaddr + |
1712 | 158 | (y * region->stride) + | 158 | (y * region->stride) + |
1713 | 159 | (x * BYTES_PER_PIXEL(region->pixel_format)); | 159 | (x * BYTES_PER_PIXEL(region->pixel_format)); |
1715 | 160 | 160 | ||
1716 | 161 | for (j = 0; j < size; j++) | 161 | for (j = 0; j < size; j++) |
1717 | 162 | { | 162 | { |
1718 | 163 | put_pixels(row, size, region->pixel_format, color); | 163 | put_pixels(row, size, region->pixel_format, color); |
1719 | @@ -204,7 +204,7 @@ | |||
1720 | 204 | {0x00, 0xff, 0x00, 0xff}, | 204 | {0x00, 0xff, 0x00, 0xff}, |
1721 | 205 | {0x00, 0x00, 0xff, 0xff}, | 205 | {0x00, 0x00, 0xff, 0xff}, |
1722 | 206 | }; | 206 | }; |
1724 | 207 | 207 | ||
1725 | 208 | MirEventType event_type = mir_event_get_type(event); | 208 | MirEventType event_type = mir_event_get_type(event); |
1726 | 209 | 209 | ||
1727 | 210 | pthread_mutex_lock(&mutex); | 210 | pthread_mutex_lock(&mutex); |
1728 | @@ -297,7 +297,7 @@ | |||
1729 | 297 | 297 | ||
1730 | 298 | draw_box(canvas, x - radius, y - radius, 2*radius, &tone); | 298 | draw_box(canvas, x - radius, y - radius, 2*radius, &tone); |
1731 | 299 | } | 299 | } |
1733 | 300 | 300 | ||
1734 | 301 | changed = true; | 301 | changed = true; |
1735 | 302 | } | 302 | } |
1736 | 303 | } | 303 | } |
1737 | @@ -476,7 +476,7 @@ | |||
1738 | 476 | { | 476 | { |
1739 | 477 | mir_surface_set_swapinterval(surf, swap_interval); | 477 | mir_surface_set_swapinterval(surf, swap_interval); |
1740 | 478 | mir_surface_set_event_handler(surf, &on_event, &canvas); | 478 | mir_surface_set_event_handler(surf, &on_event, &canvas); |
1742 | 479 | 479 | ||
1743 | 480 | canvas.width = width; | 480 | canvas.width = width; |
1744 | 481 | canvas.height = height; | 481 | canvas.height = height; |
1745 | 482 | canvas.stride = canvas.width * BYTES_PER_PIXEL(pixel_format); | 482 | canvas.stride = canvas.width * BYTES_PER_PIXEL(pixel_format); |
1746 | @@ -488,9 +488,9 @@ | |||
1747 | 488 | signal(SIGINT, shutdown); | 488 | signal(SIGINT, shutdown); |
1748 | 489 | signal(SIGTERM, shutdown); | 489 | signal(SIGTERM, shutdown); |
1749 | 490 | signal(SIGHUP, shutdown); | 490 | signal(SIGHUP, shutdown); |
1751 | 491 | 491 | ||
1752 | 492 | clear_region(&canvas, &background); | 492 | clear_region(&canvas, &background); |
1754 | 493 | 493 | ||
1755 | 494 | MirBufferStream *bs = mir_surface_get_buffer_stream(surf); | 494 | MirBufferStream *bs = mir_surface_get_buffer_stream(surf); |
1756 | 495 | 495 | ||
1757 | 496 | while (running) | 496 | while (running) |
1758 | 497 | 497 | ||
1759 | === modified file 'examples/input_shapes.cpp' | |||
1760 | --- examples/input_shapes.cpp 2015-06-29 22:01:30 +0000 | |||
1761 | +++ examples/input_shapes.cpp 2016-10-27 03:52:22 +0000 | |||
1762 | @@ -51,14 +51,14 @@ | |||
1763 | 51 | glClear(GL_COLOR_BUFFER_BIT); | 51 | glClear(GL_COLOR_BUFFER_BIT); |
1764 | 52 | auto scaleUniform = glGetUniformLocation(program.program, "scale"); | 52 | auto scaleUniform = glGetUniformLocation(program.program, "scale"); |
1765 | 53 | glUniform2fv(scaleUniform, 1, scale); | 53 | glUniform2fv(scaleUniform, 1, scale); |
1767 | 54 | 54 | ||
1768 | 55 | context.swapbuffers(); | 55 | context.swapbuffers(); |
1769 | 56 | context.release_current(); | 56 | context.release_current(); |
1770 | 57 | } | 57 | } |
1771 | 58 | 58 | ||
1772 | 59 | void draw(float x, float y) | 59 | void draw(float x, float y) |
1773 | 60 | { | 60 | { |
1775 | 61 | float pos[2] = {x, y}; | 61 | float pos[2] = {x, y}; |
1776 | 62 | glUseProgram(program.program); | 62 | glUseProgram(program.program); |
1777 | 63 | glClear( GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT ); | 63 | glClear( GL_DEPTH_BUFFER_BIT | GL_COLOR_BUFFER_BIT ); |
1778 | 64 | glUniform2fv(posUniform, 1, pos); | 64 | glUniform2fv(posUniform, 1, pos); |
1779 | @@ -68,7 +68,7 @@ | |||
1780 | 68 | } | 68 | } |
1781 | 69 | 69 | ||
1782 | 70 | RenderProgram(RenderProgram const&) = delete; | 70 | RenderProgram(RenderProgram const&) = delete; |
1784 | 71 | RenderProgram& operator=(RenderProgram const&) = delete; | 71 | RenderProgram& operator=(RenderProgram const&) = delete; |
1785 | 72 | private: | 72 | private: |
1786 | 73 | GLchar const*const frag_shader_src = | 73 | GLchar const*const frag_shader_src = |
1787 | 74 | { | 74 | { |
1788 | @@ -97,7 +97,7 @@ | |||
1789 | 97 | 1.0f, 1.0f, 0.0f, 1.0f, | 97 | 1.0f, 1.0f, 0.0f, 1.0f, |
1790 | 98 | }; | 98 | }; |
1791 | 99 | GLuint vPositionAttr; | 99 | GLuint vPositionAttr; |
1793 | 100 | GLuint posUniform; | 100 | GLuint posUniform; |
1794 | 101 | }; | 101 | }; |
1795 | 102 | 102 | ||
1796 | 103 | class SurfaceWithAHole | 103 | class SurfaceWithAHole |
1797 | 104 | 104 | ||
1798 | === modified file 'examples/multiwin.c' | |||
1799 | --- examples/multiwin.c 2015-07-16 07:03:19 +0000 | |||
1800 | +++ examples/multiwin.c 2016-10-27 03:52:22 +0000 | |||
1801 | @@ -61,28 +61,28 @@ | |||
1802 | 61 | switch (format) | 61 | switch (format) |
1803 | 62 | { | 62 | { |
1804 | 63 | case mir_pixel_format_abgr_8888: | 63 | case mir_pixel_format_abgr_8888: |
1806 | 64 | pixel = | 64 | pixel = |
1807 | 65 | (uint32_t)color->a << 24 | | 65 | (uint32_t)color->a << 24 | |
1808 | 66 | (uint32_t)color->b << 16 | | 66 | (uint32_t)color->b << 16 | |
1809 | 67 | (uint32_t)color->g << 8 | | 67 | (uint32_t)color->g << 8 | |
1810 | 68 | (uint32_t)color->r; | 68 | (uint32_t)color->r; |
1811 | 69 | break; | 69 | break; |
1812 | 70 | case mir_pixel_format_xbgr_8888: | 70 | case mir_pixel_format_xbgr_8888: |
1814 | 71 | pixel = | 71 | pixel = |
1815 | 72 | /* Not filling in the X byte is correct but buggy (LP: #1423462) */ | 72 | /* Not filling in the X byte is correct but buggy (LP: #1423462) */ |
1816 | 73 | (uint32_t)color->b << 16 | | 73 | (uint32_t)color->b << 16 | |
1817 | 74 | (uint32_t)color->g << 8 | | 74 | (uint32_t)color->g << 8 | |
1818 | 75 | (uint32_t)color->r; | 75 | (uint32_t)color->r; |
1819 | 76 | break; | 76 | break; |
1820 | 77 | case mir_pixel_format_argb_8888: | 77 | case mir_pixel_format_argb_8888: |
1822 | 78 | pixel = | 78 | pixel = |
1823 | 79 | (uint32_t)color->a << 24 | | 79 | (uint32_t)color->a << 24 | |
1824 | 80 | (uint32_t)color->r << 16 | | 80 | (uint32_t)color->r << 16 | |
1825 | 81 | (uint32_t)color->g << 8 | | 81 | (uint32_t)color->g << 8 | |
1826 | 82 | (uint32_t)color->b; | 82 | (uint32_t)color->b; |
1827 | 83 | break; | 83 | break; |
1828 | 84 | case mir_pixel_format_xrgb_8888: | 84 | case mir_pixel_format_xrgb_8888: |
1830 | 85 | pixel = | 85 | pixel = |
1831 | 86 | /* Not filling in the X byte is correct but buggy (LP: #1423462) */ | 86 | /* Not filling in the X byte is correct but buggy (LP: #1423462) */ |
1832 | 87 | (uint32_t)color->r << 16 | | 87 | (uint32_t)color->r << 16 | |
1833 | 88 | (uint32_t)color->g << 8 | | 88 | (uint32_t)color->g << 8 | |
1834 | 89 | 89 | ||
1835 | === modified file 'examples/progressbar.c' | |||
1836 | --- examples/progressbar.c 2015-06-17 05:20:42 +0000 | |||
1837 | +++ examples/progressbar.c 2016-10-27 03:52:22 +0000 | |||
1838 | @@ -91,7 +91,7 @@ | |||
1839 | 91 | case mir_pixel_format_abgr_8888: | 91 | case mir_pixel_format_abgr_8888: |
1840 | 92 | case mir_pixel_format_xbgr_8888: | 92 | case mir_pixel_format_xbgr_8888: |
1841 | 93 | alpha_shift = 24; | 93 | alpha_shift = 24; |
1843 | 94 | pixel = | 94 | pixel = |
1844 | 95 | (uint32_t)color->a << 24 | | 95 | (uint32_t)color->a << 24 | |
1845 | 96 | (uint32_t)color->b << 16 | | 96 | (uint32_t)color->b << 16 | |
1846 | 97 | (uint32_t)color->g << 8 | | 97 | (uint32_t)color->g << 8 | |
1847 | @@ -100,7 +100,7 @@ | |||
1848 | 100 | case mir_pixel_format_argb_8888: | 100 | case mir_pixel_format_argb_8888: |
1849 | 101 | case mir_pixel_format_xrgb_8888: | 101 | case mir_pixel_format_xrgb_8888: |
1850 | 102 | alpha_shift = 24; | 102 | alpha_shift = 24; |
1852 | 103 | pixel = | 103 | pixel = |
1853 | 104 | (uint32_t)color->a << 24 | | 104 | (uint32_t)color->a << 24 | |
1854 | 105 | (uint32_t)color->r << 16 | | 105 | (uint32_t)color->r << 16 | |
1855 | 106 | (uint32_t)color->g << 8 | | 106 | (uint32_t)color->g << 8 | |
1856 | @@ -154,7 +154,7 @@ | |||
1857 | 154 | char *row = region->vaddr + | 154 | char *row = region->vaddr + |
1858 | 155 | (y * region->stride) + | 155 | (y * region->stride) + |
1859 | 156 | (x * BYTES_PER_PIXEL(region->pixel_format)); | 156 | (x * BYTES_PER_PIXEL(region->pixel_format)); |
1861 | 157 | 157 | ||
1862 | 158 | for (j = 0; j < size; j++) | 158 | for (j = 0; j < size; j++) |
1863 | 159 | { | 159 | { |
1864 | 160 | put_pixels(row, size, region->pixel_format, color); | 160 | put_pixels(row, size, region->pixel_format, color); |
1865 | @@ -286,7 +286,7 @@ | |||
1866 | 286 | signal(SIGINT, shutdown); | 286 | signal(SIGINT, shutdown); |
1867 | 287 | signal(SIGTERM, shutdown); | 287 | signal(SIGTERM, shutdown); |
1868 | 288 | signal(SIGHUP, shutdown); | 288 | signal(SIGHUP, shutdown); |
1870 | 289 | 289 | ||
1871 | 290 | while (running) | 290 | while (running) |
1872 | 291 | { | 291 | { |
1873 | 292 | static const int box_width = 8; | 292 | static const int box_width = 8; |
1874 | 293 | 293 | ||
1875 | === modified file 'examples/server_example_adorning_compositor.cpp' | |||
1876 | --- examples/server_example_adorning_compositor.cpp 2016-10-12 06:03:15 +0000 | |||
1877 | +++ examples/server_example_adorning_compositor.cpp 2016-10-27 03:52:22 +0000 | |||
1878 | @@ -202,7 +202,7 @@ | |||
1879 | 202 | for(auto& element : scene_sequence) | 202 | for(auto& element : scene_sequence) |
1880 | 203 | { | 203 | { |
1881 | 204 | //courteously inform the client that its rendered | 204 | //courteously inform the client that its rendered |
1883 | 205 | //if something is not to be rendered, mc::SceneElementSequence::occluded() should be called | 205 | //if something is not to be rendered, mc::SceneElementSequence::occluded() should be called |
1884 | 206 | element->rendered(); | 206 | element->rendered(); |
1885 | 207 | 207 | ||
1886 | 208 | auto const renderable = element->renderable(); | 208 | auto const renderable = element->renderable(); |
1887 | 209 | 209 | ||
1888 | === modified file 'examples/server_example_adorning_compositor.h' | |||
1889 | --- examples/server_example_adorning_compositor.h 2016-01-29 08:18:22 +0000 | |||
1890 | +++ examples/server_example_adorning_compositor.h 2016-10-27 03:52:22 +0000 | |||
1891 | @@ -80,7 +80,7 @@ | |||
1892 | 80 | GLuint uvCoord; | 80 | GLuint uvCoord; |
1893 | 81 | GLuint scaleUniform; | 81 | GLuint scaleUniform; |
1894 | 82 | GLuint posUniform; | 82 | GLuint posUniform; |
1896 | 83 | GLuint alphaUniform; | 83 | GLuint alphaUniform; |
1897 | 84 | GLuint texture; | 84 | GLuint texture; |
1898 | 85 | 85 | ||
1899 | 86 | std::shared_ptr<compositor::CompositorReport> const report; | 86 | std::shared_ptr<compositor::CompositorReport> const report; |
1900 | 87 | 87 | ||
1901 | === modified file 'examples/server_example_canonical_window_manager.cpp' | |||
1902 | --- examples/server_example_canonical_window_manager.cpp 2016-10-12 06:03:15 +0000 | |||
1903 | +++ examples/server_example_canonical_window_manager.cpp 2016-10-27 03:52:22 +0000 | |||
1904 | @@ -400,7 +400,7 @@ | |||
1905 | 400 | if (modifications.input_shape.is_set()) | 400 | if (modifications.input_shape.is_set()) |
1906 | 401 | { | 401 | { |
1907 | 402 | auto rectangles = modifications.input_shape.value(); | 402 | auto rectangles = modifications.input_shape.value(); |
1909 | 403 | auto displacement = surface->top_left() - Point{0, 0}; | 403 | auto displacement = surface->top_left() - Point{0, 0}; |
1910 | 404 | for(auto& rect : rectangles) | 404 | for(auto& rect : rectangles) |
1911 | 405 | { | 405 | { |
1912 | 406 | rect.top_left = rect.top_left + displacement; | 406 | rect.top_left = rect.top_left + displacement; |
1913 | 407 | 407 | ||
1914 | === modified file 'examples/server_example_window_management_info.cpp' | |||
1915 | --- examples/server_example_window_management_info.cpp 2016-08-19 07:49:12 +0000 | |||
1916 | +++ examples/server_example_window_management_info.cpp 2016-10-27 03:52:22 +0000 | |||
1917 | @@ -250,8 +250,8 @@ | |||
1918 | 250 | std::shared_ptr<frontend::BufferStream> const buffer_stream; | 250 | std::shared_ptr<frontend::BufferStream> const buffer_stream; |
1919 | 251 | std::shared_ptr<scene::Session> const session; | 251 | std::shared_ptr<scene::Session> const session; |
1920 | 252 | mg::BufferProperties properties; | 252 | mg::BufferProperties properties; |
1923 | 253 | mg::BufferID front_buffer; | 253 | mg::BufferID front_buffer; |
1924 | 254 | mg::BufferID back_buffer; | 254 | mg::BufferID back_buffer; |
1925 | 255 | }; | 255 | }; |
1926 | 256 | 256 | ||
1927 | 257 | void mir::examples::SurfaceInfo::init_titlebar( | 257 | void mir::examples::SurfaceInfo::init_titlebar( |
1928 | 258 | 258 | ||
1929 | === modified file 'examples/xcursor.c' | |||
1930 | --- examples/xcursor.c 2016-01-29 08:18:22 +0000 | |||
1931 | +++ examples/xcursor.c 2016-10-27 03:52:22 +0000 | |||
1932 | @@ -798,7 +798,7 @@ | |||
1933 | 798 | const char *path; | 798 | const char *path; |
1934 | 799 | char *inherits = NULL; | 799 | char *inherits = NULL; |
1935 | 800 | const char *i; | 800 | const char *i; |
1937 | 801 | 801 | ||
1938 | 802 | if (!theme || !name) | 802 | if (!theme || !name) |
1939 | 803 | return NULL; | 803 | return NULL; |
1940 | 804 | 804 | ||
1941 | 805 | 805 | ||
1942 | === modified file 'examples/xcursor_loader.cpp' | |||
1943 | --- examples/xcursor_loader.cpp 2016-07-18 07:38:38 +0000 | |||
1944 | +++ examples/xcursor_loader.cpp 2016-10-27 03:52:22 +0000 | |||
1945 | @@ -162,12 +162,12 @@ | |||
1946 | 162 | // Each XcursorImages represents images for the different sizes of a given symbolic cursor. | 162 | // Each XcursorImages represents images for the different sizes of a given symbolic cursor. |
1947 | 163 | void me::XCursorLoader::load_appropriately_sized_image(_XcursorImages *images) | 163 | void me::XCursorLoader::load_appropriately_sized_image(_XcursorImages *images) |
1948 | 164 | { | 164 | { |
1950 | 165 | // We would rather take this lock in load_cursor_theme but the Xcursor lib style | 165 | // We would rather take this lock in load_cursor_theme but the Xcursor lib style |
1951 | 166 | // makes it difficult to use our standard 'pass the lg around to _locked members' pattern | 166 | // makes it difficult to use our standard 'pass the lg around to _locked members' pattern |
1952 | 167 | std::lock_guard<std::mutex> lg(guard); | 167 | std::lock_guard<std::mutex> lg(guard); |
1953 | 168 | 168 | ||
1954 | 169 | // We have to save all the images as XCursor expects us to free them. | 169 | // We have to save all the images as XCursor expects us to free them. |
1956 | 170 | // This contains the actual image data though, so we need to ensure they stay alive | 170 | // This contains the actual image data though, so we need to ensure they stay alive |
1957 | 171 | // with the lifetime of the mg::CursorImage instance which refers to them. | 171 | // with the lifetime of the mg::CursorImage instance which refers to them. |
1958 | 172 | auto saved_xcursor_library_resource = std::shared_ptr<_XcursorImages>(images, [](_XcursorImages *images) | 172 | auto saved_xcursor_library_resource = std::shared_ptr<_XcursorImages>(images, [](_XcursorImages *images) |
1959 | 173 | { | 173 | { |
1960 | @@ -194,7 +194,7 @@ | |||
1961 | 194 | { | 194 | { |
1962 | 195 | // Cursors are named by their square dimension...called the nominal size in XCursor terminology, so we just look up by width. | 195 | // Cursors are named by their square dimension...called the nominal size in XCursor terminology, so we just look up by width. |
1963 | 196 | // Later we verify the actual size. | 196 | // Later we verify the actual size. |
1965 | 197 | xcursor_load_theme(theme_name.c_str(), mi::default_cursor_size.width.as_uint32_t(), | 197 | xcursor_load_theme(theme_name.c_str(), mi::default_cursor_size.width.as_uint32_t(), |
1966 | 198 | [](XcursorImages* images, void *this_ptr) -> void | 198 | [](XcursorImages* images, void *this_ptr) -> void |
1967 | 199 | { | 199 | { |
1968 | 200 | // Can't use lambda capture as this lambda is thunked to a C function ptr | 200 | // Can't use lambda capture as this lambda is thunked to a C function ptr |
1969 | @@ -212,7 +212,7 @@ | |||
1970 | 212 | if (size != mi::default_cursor_size) | 212 | if (size != mi::default_cursor_size) |
1971 | 213 | BOOST_THROW_EXCEPTION( | 213 | BOOST_THROW_EXCEPTION( |
1972 | 214 | std::logic_error("Only the default cursor size is currently supported (mi::default_cursor_size)")); | 214 | std::logic_error("Only the default cursor size is currently supported (mi::default_cursor_size)")); |
1974 | 215 | 215 | ||
1975 | 216 | std::lock_guard<std::mutex> lg(guard); | 216 | std::lock_guard<std::mutex> lg(guard); |
1976 | 217 | 217 | ||
1977 | 218 | auto it = loaded_images.find(xcursor_name); | 218 | auto it = loaded_images.find(xcursor_name); |
1978 | @@ -223,6 +223,6 @@ | |||
1979 | 223 | it = loaded_images.find("arrow"); | 223 | it = loaded_images.find("arrow"); |
1980 | 224 | if (it != loaded_images.end()) | 224 | if (it != loaded_images.end()) |
1981 | 225 | return it->second; | 225 | return it->second; |
1983 | 226 | 226 | ||
1984 | 227 | return nullptr; | 227 | return nullptr; |
1985 | 228 | } | 228 | } |
1986 | 229 | 229 | ||
1987 | === modified file 'guides/cppguide.xml' | |||
1988 | --- guides/cppguide.xml 2015-06-17 05:20:42 +0000 | |||
1989 | +++ guides/cppguide.xml 2016-10-27 03:52:22 +0000 | |||
1990 | @@ -310,7 +310,7 @@ | |||
1991 | 310 | function, output from the function, or both. Input parameters | 310 | function, output from the function, or both. Input parameters |
1992 | 311 | are usually values or <code>const</code> references, while output | 311 | are usually values or <code>const</code> references, while output |
1993 | 312 | and input/output parameters will be non-<code>const</code> | 312 | and input/output parameters will be non-<code>const</code> |
1995 | 313 | references or pointers to non-<code>const</code>. When ordering function | 313 | references or pointers to non-<code>const</code>. When ordering function |
1996 | 314 | parameters, put all output parameters before any input-only parameters. | 314 | parameters, put all output parameters before any input-only parameters. |
1997 | 315 | In particular, do not add new parameters to the end of the function just | 315 | In particular, do not add new parameters to the end of the function just |
1998 | 316 | because they are new; place new output parameters before the input-only | 316 | because they are new; place new output parameters before the input-only |
1999 | @@ -331,8 +331,8 @@ | |||
2000 | 331 | dependencies: your | 331 | dependencies: your |
2001 | 332 | project's public | 332 | project's public |
2002 | 333 | <code>.h</code>, your | 333 | <code>.h</code>, your |
2005 | 334 | project's private | 334 | project's private |
2006 | 335 | <code>.h</code>, other libraries' <code>.h</code>, .C library, C++ library, | 335 | <code>.h</code>, other libraries' <code>.h</code>, .C library, C++ library, |
2007 | 336 | </SUMMARY> | 336 | </SUMMARY> |
2008 | 337 | <BODY> | 337 | <BODY> |
2009 | 338 | <p> | 338 | <p> |
2010 | @@ -359,11 +359,11 @@ | |||
2011 | 359 | <li> <code><var>dir2/foo2</var>.h</code> (preferred location | 359 | <li> <code><var>dir2/foo2</var>.h</code> (preferred location |
2012 | 360 | — see details below).</li> | 360 | — see details below).</li> |
2013 | 361 | <li> | 361 | <li> |
2015 | 362 | Your project's public | 362 | Your project's public |
2016 | 363 | <code>.h</code> files. | 363 | <code>.h</code> files. |
2017 | 364 | </li> | 364 | </li> |
2018 | 365 | <li> | 365 | <li> |
2020 | 366 | Your project's private | 366 | Your project's private |
2021 | 367 | <code>.h</code> files. | 367 | <code>.h</code> files. |
2022 | 368 | </li> | 368 | </li> |
2023 | 369 | <li> Other libraries' <code>.h</code> files.</li> | 369 | <li> Other libraries' <code>.h</code> files.</li> |
2024 | @@ -784,7 +784,7 @@ | |||
2025 | 784 | 784 | ||
2026 | 785 | <STYLEPOINT title="Constructors"> | 785 | <STYLEPOINT title="Constructors"> |
2027 | 786 | <SUMMARY> | 786 | <SUMMARY> |
2029 | 787 | The purpose of a constructor is to initialise a class so that its | 787 | The purpose of a constructor is to initialise a class so that its |
2030 | 788 | invariants hold. For value classes it is worth having a cheap default | 788 | invariants hold. For value classes it is worth having a cheap default |
2031 | 789 | constructor. | 789 | constructor. |
2032 | 790 | </SUMMARY> | 790 | </SUMMARY> |
2033 | @@ -815,7 +815,7 @@ | |||
2034 | 815 | </ul> | 815 | </ul> |
2035 | 816 | </CONS> | 816 | </CONS> |
2036 | 817 | <DECISION> | 817 | <DECISION> |
2038 | 818 | Constructors should not make virtual calls to functions, access | 818 | Constructors should not make virtual calls to functions, access |
2039 | 819 | potentially uninitialized global variables, etc. | 819 | potentially uninitialized global variables, etc. |
2040 | 820 | </DECISION> | 820 | </DECISION> |
2041 | 821 | </BODY> | 821 | </BODY> |
2042 | @@ -962,7 +962,7 @@ | |||
2043 | 962 | If your class does not need a copy constructor or assignment | 962 | If your class does not need a copy constructor or assignment |
2044 | 963 | operator, you must explicitly disable them. | 963 | operator, you must explicitly disable them. |
2045 | 964 | </p> | 964 | </p> |
2047 | 965 | 965 | ||
2048 | 966 | </DECISION> | 966 | </DECISION> |
2049 | 967 | </BODY> | 967 | </BODY> |
2050 | 968 | </STYLEPOINT> | 968 | </STYLEPOINT> |
2051 | @@ -1182,9 +1182,9 @@ | |||
2052 | 1182 | </CONS> | 1182 | </CONS> |
2053 | 1183 | <DECISION> | 1183 | <DECISION> |
2054 | 1184 | <p> | 1184 | <p> |
2056 | 1185 | In general, do overload operators where appropriate. | 1185 | In general, do overload operators where appropriate. |
2057 | 1186 | </p> | 1186 | </p> |
2059 | 1187 | 1187 | ||
2060 | 1188 | <p> | 1188 | <p> |
2061 | 1189 | See also <a HREF="#Copy_Constructors">Copy Constructors</a> | 1189 | See also <a HREF="#Copy_Constructors">Copy Constructors</a> |
2062 | 1190 | and <a HREF="#Function_Overloading">Function | 1190 | and <a HREF="#Function_Overloading">Function |
2063 | @@ -1206,7 +1206,7 @@ | |||
2064 | 1206 | called <code>foo</code> and the accessor function | 1206 | called <code>foo</code> and the accessor function |
2065 | 1207 | <code>get_foo()</code>. You may also want a mutator function | 1207 | <code>get_foo()</code>. You may also want a mutator function |
2066 | 1208 | <code>set_foo()</code>. | 1208 | <code>set_foo()</code>. |
2068 | 1209 | Exception: <code>static const</code> data members need not | 1209 | Exception: <code>static const</code> data members need not |
2069 | 1210 | be <code>private</code>. | 1210 | be <code>private</code>. |
2070 | 1211 | </SUMMARY> | 1211 | </SUMMARY> |
2071 | 1212 | <BODY> | 1212 | <BODY> |
2072 | @@ -1813,7 +1813,7 @@ | |||
2073 | 1813 | <code>int64_t</code>. | 1813 | <code>int64_t</code>. |
2074 | 1814 | 1814 | ||
2075 | 1815 | </p> | 1815 | </p> |
2077 | 1816 | 1816 | ||
2078 | 1817 | </DECISION> | 1817 | </DECISION> |
2079 | 1818 | </BODY> | 1818 | </BODY> |
2080 | 1819 | </STYLEPOINT> | 1819 | </STYLEPOINT> |
2081 | @@ -2397,7 +2397,7 @@ | |||
2082 | 2397 | 2397 | ||
2083 | 2398 | <STYLEPOINT title="Enumerator Names"> | 2398 | <STYLEPOINT title="Enumerator Names"> |
2084 | 2399 | <SUMMARY> | 2399 | <SUMMARY> |
2086 | 2400 | Enumerators should be named like | 2400 | Enumerators should be named like |
2087 | 2401 | <A HREF="#Class_Data_Members">member variables</A>: <code>out_of_memory</code>, enclosed within an enum class. | 2401 | <A HREF="#Class_Data_Members">member variables</A>: <code>out_of_memory</code>, enclosed within an enum class. |
2088 | 2402 | </SUMMARY> | 2402 | </SUMMARY> |
2089 | 2403 | <BODY> | 2403 | <BODY> |
2090 | @@ -2965,7 +2965,7 @@ | |||
2091 | 2965 | several code windows side-by-side, and thus don't have room to | 2965 | several code windows side-by-side, and thus don't have room to |
2092 | 2966 | widen their windows in any case. People set up their work | 2966 | widen their windows in any case. People set up their work |
2093 | 2967 | environment assuming a particular maximum window width, and 80 | 2967 | environment assuming a particular maximum window width, and 80 |
2095 | 2968 | columns has been the traditional standard. Why change it? | 2968 | columns has been the traditional standard. Why change it? |
2096 | 2969 | </PROS> | 2969 | </PROS> |
2097 | 2970 | <CONS> | 2970 | <CONS> |
2098 | 2971 | Proponents of change argue that a wider line can make code | 2971 | Proponents of change argue that a wider line can make code |
2099 | @@ -2978,7 +2978,7 @@ | |||
2100 | 2978 | <DECISION> | 2978 | <DECISION> |
2101 | 2979 | <p> | 2979 | <p> |
2102 | 2980 | 120 characters is the maximum. | 2980 | 120 characters is the maximum. |
2104 | 2981 | </p> | 2981 | </p> |
2105 | 2982 | </DECISION> | 2982 | </DECISION> |
2106 | 2983 | </BODY> | 2983 | </BODY> |
2107 | 2984 | </STYLEPOINT> | 2984 | </STYLEPOINT> |
2108 | @@ -3091,11 +3091,11 @@ | |||
2109 | 3091 | </li> | 3091 | </li> |
2110 | 3092 | <li> All parameters should be in a single line if possible, otherwise: | 3092 | <li> All parameters should be in a single line if possible, otherwise: |
2111 | 3093 | <ul> | 3093 | <ul> |
2114 | 3094 | <li> Wrap groups of parameters into the next line, and align the | 3094 | <li> Wrap groups of parameters into the next line, and align the |
2115 | 3095 | first wrapped parameter to the first parameter in the previous | 3095 | first wrapped parameter to the first parameter in the previous |
2116 | 3096 | line. | 3096 | line. |
2117 | 3097 | </li> | 3097 | </li> |
2119 | 3098 | <li> Place each parameter in a separate line and indent each with 4 | 3098 | <li> Place each parameter in a separate line and indent each with 4 |
2120 | 3099 | spaces. | 3099 | spaces. |
2121 | 3100 | </li> | 3100 | </li> |
2122 | 3101 | </ul> | 3101 | </ul> |
2123 | @@ -3480,7 +3480,7 @@ | |||
2124 | 3480 | char s[12]{}; //all 12 chars are initialized to '\0' | 3480 | char s[12]{}; //all 12 chars are initialized to '\0' |
2125 | 3481 | string s{}; //same as: string s; | 3481 | string s{}; //same as: string s; |
2126 | 3482 | string name{"Some Name"}; | 3482 | string name{"Some Name"}; |
2128 | 3483 | char* p=new char [5]{}; // all five chars are initialized to '\0' | 3483 | char* p=new char [5]{}; // all five chars are initialized to '\0' |
2129 | 3484 | </CODE_SNIPPET> | 3484 | </CODE_SNIPPET> |
2130 | 3485 | </BODY> | 3485 | </BODY> |
2131 | 3486 | </STYLEPOINT> | 3486 | </STYLEPOINT> |
2132 | @@ -3498,7 +3498,7 @@ | |||
2133 | 3498 | </p> | 3498 | </p> |
2134 | 3499 | <CODE_SNIPPET> | 3499 | <CODE_SNIPPET> |
2135 | 3500 | // Good - directives at beginning of line | 3500 | // Good - directives at beginning of line |
2137 | 3501 | if (lopsided_score) | 3501 | if (lopsided_score) |
2138 | 3502 | { | 3502 | { |
2139 | 3503 | #if DISASTER_PENDING // Correct -- Starts at beginning of line | 3503 | #if DISASTER_PENDING // Correct -- Starts at beginning of line |
2140 | 3504 | drop_everything(); | 3504 | drop_everything(); |
2141 | @@ -3511,7 +3511,7 @@ | |||
2142 | 3511 | </CODE_SNIPPET> | 3511 | </CODE_SNIPPET> |
2143 | 3512 | <BAD_CODE_SNIPPET> | 3512 | <BAD_CODE_SNIPPET> |
2144 | 3513 | // Bad - indented directives | 3513 | // Bad - indented directives |
2146 | 3514 | if (lopsided_score) | 3514 | if (lopsided_score) |
2147 | 3515 | { | 3515 | { |
2148 | 3516 | #if DISASTER_PENDING // Wrong! The "#if" should be at beginning of line | 3516 | #if DISASTER_PENDING // Wrong! The "#if" should be at beginning of line |
2149 | 3517 | drop_everything(); | 3517 | drop_everything(); |
2150 | @@ -3551,7 +3551,7 @@ | |||
2151 | 3551 | MyClass(MyClass const&) = delete; | 3551 | MyClass(MyClass const&) = delete; |
2152 | 3552 | MyClass& operator=(MyClass const&) = delete; | 3552 | MyClass& operator=(MyClass const&) = delete; |
2153 | 3553 | bool some_internal_function(); | 3553 | bool some_internal_function(); |
2155 | 3554 | 3554 | ||
2156 | 3555 | int some_var_; | 3555 | int some_var_; |
2157 | 3556 | int some_other_var; | 3556 | int some_other_var; |
2158 | 3557 | }; | 3557 | }; |
2159 | 3558 | 3558 | ||
2160 | === modified file 'guides/styleguide.xsl' | |||
2161 | --- guides/styleguide.xsl 2016-01-29 08:18:22 +0000 | |||
2162 | +++ guides/styleguide.xsl 2016-10-27 03:52:22 +0000 | |||
2163 | @@ -517,8 +517,8 @@ | |||
2164 | 517 | </xsl:template> | 517 | </xsl:template> |
2165 | 518 | 518 | ||
2166 | 519 | <!-- Given text, determine the starting position of code. | 519 | <!-- Given text, determine the starting position of code. |
2169 | 520 | This similar to num_leading_spaces_one_line but treats "Yes:" and "No:" | 520 | This similar to num_leading_spaces_one_line but treats "Yes:" and "No:" |
2170 | 521 | as spaces. Also, if there is no code on the first line, it searches | 521 | as spaces. Also, if there is no code on the first line, it searches |
2171 | 522 | subsequent lines until a non-empty line is found. | 522 | subsequent lines until a non-empty line is found. |
2172 | 523 | Used to find the start of code in snippets like: | 523 | Used to find the start of code in snippets like: |
2173 | 524 | Yes: if(foo): | 524 | Yes: if(foo): |
2174 | @@ -549,7 +549,7 @@ | |||
2175 | 549 | <xsl:with-param name="current_count" select="$current_count + 3"/> | 549 | <xsl:with-param name="current_count" select="$current_count + 3"/> |
2176 | 550 | </xsl:call-template> | 550 | </xsl:call-template> |
2177 | 551 | </xsl:when> | 551 | </xsl:when> |
2179 | 552 | <!-- This is only reached if the first line is entirely whitespace or | 552 | <!-- This is only reached if the first line is entirely whitespace or |
2180 | 553 | contains nothing but "Yes:" or "No:"--> | 553 | contains nothing but "Yes:" or "No:"--> |
2181 | 554 | <xsl:when test="starts-with($text, '
')"> | 554 | <xsl:when test="starts-with($text, '
')"> |
2182 | 555 | <xsl:call-template name="code_start_index"> | 555 | <xsl:call-template name="code_start_index"> |
2183 | @@ -682,7 +682,7 @@ | |||
2184 | 682 | 5) Print line[a:c] (Note that we ignore line[0:a]) | 682 | 5) Print line[a:c] (Note that we ignore line[0:a]) |
2185 | 683 | 6) Print line[b:c] in an external span (in order to double the block | 683 | 6) Print line[b:c] in an external span (in order to double the block |
2186 | 684 | indent in external code). | 684 | indent in external code). |
2188 | 685 | 7) Print line[c:<end>] with function names processed to produce both | 685 | 7) Print line[c:<end>] with function names processed to produce both |
2189 | 686 | internal and external names. | 686 | internal and external names. |
2190 | 687 | 8) If there are more lines, recurse. | 687 | 8) If there are more lines, recurse. |
2191 | 688 | --> | 688 | --> |
2192 | @@ -786,7 +786,7 @@ | |||
2193 | 786 | <xsl:with-param name="b" select="$b"/> | 786 | <xsl:with-param name="b" select="$b"/> |
2194 | 787 | <xsl:with-param name="previous_indent" select="$b"/> | 787 | <xsl:with-param name="previous_indent" select="$b"/> |
2195 | 788 | <xsl:with-param name="previous_ends_with_colon" select="0"/> | 788 | <xsl:with-param name="previous_ends_with_colon" select="0"/> |
2197 | 789 | <xsl:with-param name="is_first_line" select="1"/> | 789 | <xsl:with-param name="is_first_line" select="1"/> |
2198 | 790 | </xsl:call-template> | 790 | </xsl:call-template> |
2199 | 791 | </xsl:template> | 791 | </xsl:template> |
2200 | 792 | 792 | ||
2201 | @@ -861,7 +861,7 @@ | |||
2202 | 861 | <!-- Given a single word of text convert it from CamelCase to | 861 | <!-- Given a single word of text convert it from CamelCase to |
2203 | 862 | lower_with_under. | 862 | lower_with_under. |
2204 | 863 | This means replacing each uppercase character with _ followed by the | 863 | This means replacing each uppercase character with _ followed by the |
2206 | 864 | lowercase version except for the first character which is replaced | 864 | lowercase version except for the first character which is replaced |
2207 | 865 | without adding the _.--> | 865 | without adding the _.--> |
2208 | 866 | <xsl:template name="convert_camel_case_to_lowercase_with_under"> | 866 | <xsl:template name="convert_camel_case_to_lowercase_with_under"> |
2209 | 867 | <xsl:param name="text"/> | 867 | <xsl:param name="text"/> |
2210 | 868 | 868 | ||
2211 | === modified file 'include/client/mir/events/event_builders.h' | |||
2212 | --- include/client/mir/events/event_builders.h 2016-10-13 17:14:36 +0000 | |||
2213 | +++ include/client/mir/events/event_builders.h 2016-10-27 03:52:22 +0000 | |||
2214 | @@ -37,7 +37,7 @@ | |||
2215 | 37 | namespace mir | 37 | namespace mir |
2216 | 38 | { | 38 | { |
2217 | 39 | typedef std::unique_ptr<MirEvent, void(*)(MirEvent*)> EventUPtr; | 39 | typedef std::unique_ptr<MirEvent, void(*)(MirEvent*)> EventUPtr; |
2219 | 40 | 40 | ||
2220 | 41 | namespace events | 41 | namespace events |
2221 | 42 | { | 42 | { |
2222 | 43 | // Surface orientation change event | 43 | // Surface orientation change event |
2223 | 44 | 44 | ||
2224 | === modified file 'include/client/mir_toolkit/events/event.h' | |||
2225 | --- include/client/mir_toolkit/events/event.h 2016-10-12 06:03:15 +0000 | |||
2226 | +++ include/client/mir_toolkit/events/event.h 2016-10-27 03:52:22 +0000 | |||
2227 | @@ -100,7 +100,7 @@ | |||
2228 | 100 | MirEventType mir_event_get_type(MirEvent const* event); | 100 | MirEventType mir_event_get_type(MirEvent const* event); |
2229 | 101 | 101 | ||
2230 | 102 | /** | 102 | /** |
2232 | 103 | * Retrieve the MirInputEvent associated with a MirEvent of | 103 | * Retrieve the MirInputEvent associated with a MirEvent of |
2233 | 104 | * type mir_event_type_input. See <mir_toolkit/events/input/input_event.h> | 104 | * type mir_event_type_input. See <mir_toolkit/events/input/input_event.h> |
2234 | 105 | * for accessors. | 105 | * for accessors. |
2235 | 106 | * | 106 | * |
2236 | @@ -232,7 +232,7 @@ | |||
2237 | 232 | * \ (oo)\_______ | 232 | * \ (oo)\_______ |
2238 | 233 | * (__)\ )\/\ | 233 | * (__)\ )\/\ |
2239 | 234 | * ||----w | | 234 | * ||----w | |
2241 | 235 | * || || | 235 | * || || |
2242 | 236 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! | 236 | * !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
2243 | 237 | * NOTICE: mir_event_ref and mir_event_unref are implemented in terms of copy | 237 | * NOTICE: mir_event_ref and mir_event_unref are implemented in terms of copy |
2244 | 238 | * until such time that direct MirEvent access is deprecated. This means you | 238 | * until such time that direct MirEvent access is deprecated. This means you |
2245 | 239 | 239 | ||
2246 | === modified file 'include/client/mir_toolkit/events/input/input_event.h' | |||
2247 | --- include/client/mir_toolkit/events/input/input_event.h 2016-10-12 06:03:15 +0000 | |||
2248 | +++ include/client/mir_toolkit/events/input/input_event.h 2016-10-27 03:52:22 +0000 | |||
2249 | @@ -112,7 +112,7 @@ | |||
2250 | 112 | * Retrieve the MirKeyboardEvent associated with a given input event. | 112 | * Retrieve the MirKeyboardEvent associated with a given input event. |
2251 | 113 | * | 113 | * |
2252 | 114 | * \param[in] event The input event | 114 | * \param[in] event The input event |
2254 | 115 | * \return The MirKeyboardEvent or NULL if event type is not | 115 | * \return The MirKeyboardEvent or NULL if event type is not |
2255 | 116 | * mir_input_event_type_key | 116 | * mir_input_event_type_key |
2256 | 117 | */ | 117 | */ |
2257 | 118 | MirKeyboardEvent const* mir_input_event_get_keyboard_event(MirInputEvent const* event); | 118 | MirKeyboardEvent const* mir_input_event_get_keyboard_event(MirInputEvent const* event); |
2258 | @@ -121,7 +121,7 @@ | |||
2259 | 121 | * Retrieve the MirTouchEvent associated with a given input event. | 121 | * Retrieve the MirTouchEvent associated with a given input event. |
2260 | 122 | * | 122 | * |
2261 | 123 | * \param[in] event The input event | 123 | * \param[in] event The input event |
2263 | 124 | * \return The MirTouchEvent or NULL if event type is not | 124 | * \return The MirTouchEvent or NULL if event type is not |
2264 | 125 | * mir_input_event_type_touch | 125 | * mir_input_event_type_touch |
2265 | 126 | */ | 126 | */ |
2266 | 127 | MirTouchEvent const* mir_input_event_get_touch_event(MirInputEvent const* event); | 127 | MirTouchEvent const* mir_input_event_get_touch_event(MirInputEvent const* event); |
2267 | @@ -130,7 +130,7 @@ | |||
2268 | 130 | * Retrieve the MirPointerEvent associated with a given input event. | 130 | * Retrieve the MirPointerEvent associated with a given input event. |
2269 | 131 | * | 131 | * |
2270 | 132 | * \param[in] event The input event | 132 | * \param[in] event The input event |
2272 | 133 | * \return The MirPointerEvent or NULL if event type is not | 133 | * \return The MirPointerEvent or NULL if event type is not |
2273 | 134 | * mir_input_event_type_pointer | 134 | * mir_input_event_type_pointer |
2274 | 135 | */ | 135 | */ |
2275 | 136 | MirPointerEvent const* mir_input_event_get_pointer_event(MirInputEvent const* event); | 136 | MirPointerEvent const* mir_input_event_get_pointer_event(MirInputEvent const* event); |
2276 | 137 | 137 | ||
2277 | === modified file 'include/client/mir_toolkit/events/input/keyboard_event.h' | |||
2278 | --- include/client/mir_toolkit/events/input/keyboard_event.h 2016-08-09 08:13:02 +0000 | |||
2279 | +++ include/client/mir_toolkit/events/input/keyboard_event.h 2016-10-27 03:52:22 +0000 | |||
2280 | @@ -57,7 +57,7 @@ | |||
2281 | 57 | 57 | ||
2282 | 58 | /** | 58 | /** |
2283 | 59 | * Retrieve the action which triggered a given key event. | 59 | * Retrieve the action which triggered a given key event. |
2285 | 60 | * | 60 | * |
2286 | 61 | * \param [in] event The key event | 61 | * \param [in] event The key event |
2287 | 62 | * \return The associated action | 62 | * \return The associated action |
2288 | 63 | */ | 63 | */ |
2289 | 64 | 64 | ||
2290 | === modified file 'include/client/mir_toolkit/events/input/pointer_event.h' | |||
2291 | --- include/client/mir_toolkit/events/input/pointer_event.h 2016-08-09 08:13:02 +0000 | |||
2292 | +++ include/client/mir_toolkit/events/input/pointer_event.h 2016-10-27 03:52:22 +0000 | |||
2293 | @@ -72,7 +72,7 @@ | |||
2294 | 72 | mir_pointer_axes | 72 | mir_pointer_axes |
2295 | 73 | } MirPointerAxis; | 73 | } MirPointerAxis; |
2296 | 74 | 74 | ||
2298 | 75 | /* | 75 | /* |
2299 | 76 | * Identifiers for pointer buttons | 76 | * Identifiers for pointer buttons |
2300 | 77 | */ | 77 | */ |
2301 | 78 | typedef enum { | 78 | typedef enum { |
2302 | @@ -130,7 +130,7 @@ | |||
2303 | 130 | * \param [in] axis The axis to retreive a value from | 130 | * \param [in] axis The axis to retreive a value from |
2304 | 131 | * \return The value of the given axis | 131 | * \return The value of the given axis |
2305 | 132 | */ | 132 | */ |
2307 | 133 | float mir_pointer_event_axis_value(MirPointerEvent const* event, | 133 | float mir_pointer_event_axis_value(MirPointerEvent const* event, |
2308 | 134 | MirPointerAxis axis); | 134 | MirPointerAxis axis); |
2309 | 135 | 135 | ||
2310 | 136 | /** | 136 | /** |
2311 | 137 | 137 | ||
2312 | === modified file 'include/client/mir_toolkit/events/input/touch_event.h' | |||
2313 | --- include/client/mir_toolkit/events/input/touch_event.h 2016-08-09 08:13:02 +0000 | |||
2314 | +++ include/client/mir_toolkit/events/input/touch_event.h 2016-10-27 03:52:22 +0000 | |||
2315 | @@ -32,7 +32,7 @@ | |||
2316 | 32 | */ | 32 | */ |
2317 | 33 | typedef struct MirTouchEvent MirTouchEvent; | 33 | typedef struct MirTouchEvent MirTouchEvent; |
2318 | 34 | 34 | ||
2320 | 35 | /** | 35 | /** |
2321 | 36 | * An identifier for a touch-point. TouchId's are unique per-gesture. | 36 | * An identifier for a touch-point. TouchId's are unique per-gesture. |
2322 | 37 | * That is to say, once a touch has gone down at time T, no other touch will | 37 | * That is to say, once a touch has gone down at time T, no other touch will |
2323 | 38 | * use that touch's ID until all touches at time T have come up. | 38 | * use that touch's ID until all touches at time T have come up. |
2324 | @@ -144,7 +144,7 @@ | |||
2325 | 144 | * \param [in] axis The axis to retreive a value from | 144 | * \param [in] axis The axis to retreive a value from |
2326 | 145 | * \return The value of the given axis | 145 | * \return The value of the given axis |
2327 | 146 | */ | 146 | */ |
2329 | 147 | float mir_touch_event_axis_value(MirTouchEvent const* event, | 147 | float mir_touch_event_axis_value(MirTouchEvent const* event, |
2330 | 148 | size_t touch_index, MirTouchAxis axis); | 148 | size_t touch_index, MirTouchAxis axis); |
2331 | 149 | 149 | ||
2332 | 150 | /** | 150 | /** |
2333 | 151 | 151 | ||
2334 | === modified file 'include/client/mir_toolkit/events/input_configuration_event.h' | |||
2335 | --- include/client/mir_toolkit/events/input_configuration_event.h 2016-07-18 07:38:38 +0000 | |||
2336 | +++ include/client/mir_toolkit/events/input_configuration_event.h 2016-10-27 03:52:22 +0000 | |||
2337 | @@ -39,7 +39,7 @@ | |||
2338 | 39 | /// | 39 | /// |
2339 | 40 | /// Of course as things stand there is no client input-device introspection API so these events | 40 | /// Of course as things stand there is no client input-device introspection API so these events |
2340 | 41 | /// are difficult to use. | 41 | /// are difficult to use. |
2342 | 42 | 42 | ||
2343 | 43 | typedef enum | 43 | typedef enum |
2344 | 44 | { | 44 | { |
2345 | 45 | mir_input_configuration_action_configuration_changed, | 45 | mir_input_configuration_action_configuration_changed, |
2346 | 46 | 46 | ||
2347 | === modified file 'include/client/mir_toolkit/events/resize_event.h' | |||
2348 | --- include/client/mir_toolkit/events/resize_event.h 2016-07-18 07:38:38 +0000 | |||
2349 | +++ include/client/mir_toolkit/events/resize_event.h 2016-10-27 03:52:22 +0000 | |||
2350 | @@ -31,7 +31,7 @@ | |||
2351 | 31 | 31 | ||
2352 | 32 | /** | 32 | /** |
2353 | 33 | * Retrieve the new width reported by a given MirResizeEvent | 33 | * Retrieve the new width reported by a given MirResizeEvent |
2355 | 34 | * | 34 | * |
2356 | 35 | * \param[in] ev The resize event | 35 | * \param[in] ev The resize event |
2357 | 36 | * \return The reported width | 36 | * \return The reported width |
2358 | 37 | */ | 37 | */ |
2359 | @@ -39,7 +39,7 @@ | |||
2360 | 39 | 39 | ||
2361 | 40 | /** | 40 | /** |
2362 | 41 | * Retrieve the new height reported by a given MirResizeEvent | 41 | * Retrieve the new height reported by a given MirResizeEvent |
2364 | 42 | * | 42 | * |
2365 | 43 | * \param[in] ev The resize event | 43 | * \param[in] ev The resize event |
2366 | 44 | * \return The reported height | 44 | * \return The reported height |
2367 | 45 | */ | 45 | */ |
2368 | 46 | 46 | ||
2369 | === modified file 'include/client/mir_toolkit/events/surface_placement.h' | |||
2370 | --- include/client/mir_toolkit/events/surface_placement.h 2016-09-14 13:51:11 +0000 | |||
2371 | +++ include/client/mir_toolkit/events/surface_placement.h 2016-10-27 03:52:22 +0000 | |||
2372 | @@ -33,7 +33,7 @@ | |||
2373 | 33 | 33 | ||
2374 | 34 | /** | 34 | /** |
2375 | 35 | * Retrieve the relative position from a placement notification | 35 | * Retrieve the relative position from a placement notification |
2377 | 36 | * | 36 | * |
2378 | 37 | * \param [in] event The placement event | 37 | * \param [in] event The placement event |
2379 | 38 | * \return The position relative to the parent surface | 38 | * \return The position relative to the parent surface |
2380 | 39 | */ | 39 | */ |
2381 | 40 | 40 | ||
2382 | === modified file 'include/client/mir_toolkit/mir_buffer_stream.h' | |||
2383 | --- include/client/mir_toolkit/mir_buffer_stream.h 2016-10-12 06:03:15 +0000 | |||
2384 | +++ include/client/mir_toolkit/mir_buffer_stream.h 2016-10-27 03:52:22 +0000 | |||
2385 | @@ -50,17 +50,17 @@ | |||
2386 | 50 | char const *mir_buffer_stream_get_error_message(MirBufferStream *buffer_stream); | 50 | char const *mir_buffer_stream_get_error_message(MirBufferStream *buffer_stream); |
2387 | 51 | 51 | ||
2388 | 52 | /** | 52 | /** |
2390 | 53 | * Create a new buffer stream. | 53 | * Create a new buffer stream. |
2391 | 54 | * | 54 | * |
2392 | 55 | * For example, the resulting buffer stream may be used | 55 | * For example, the resulting buffer stream may be used |
2394 | 56 | * with mir_cursor_configuration_from_buffer_stream, | 56 | * with mir_cursor_configuration_from_buffer_stream, |
2395 | 57 | * in order to post images to the system cursor. | 57 | * in order to post images to the system cursor. |
2396 | 58 | * | 58 | * |
2397 | 59 | * \param [in] connection A valid connection | 59 | * \param [in] connection A valid connection |
2398 | 60 | * \param [in] width Requested buffer width | 60 | * \param [in] width Requested buffer width |
2399 | 61 | * \param [in] height Requested buffer height | 61 | * \param [in] height Requested buffer height |
2400 | 62 | * \param [in] format Requested pixel format | 62 | * \param [in] format Requested pixel format |
2402 | 63 | * \param [in] buffer_usage Requested buffer usage, use | 63 | * \param [in] buffer_usage Requested buffer usage, use |
2403 | 64 | * mir_buffer_usage_software for cursor image streams | 64 | * mir_buffer_usage_software for cursor image streams |
2404 | 65 | * \param [in] callback Callback to be invoked when the request completes | 65 | * \param [in] callback Callback to be invoked when the request completes |
2405 | 66 | * The callback is guaranteed to be called and called with a | 66 | * The callback is guaranteed to be called and called with a |
2406 | @@ -78,9 +78,9 @@ | |||
2407 | 78 | void* context); | 78 | void* context); |
2408 | 79 | 79 | ||
2409 | 80 | /** | 80 | /** |
2413 | 81 | * Create a new buffer stream unattached to a surface and wait for the result. | 81 | * Create a new buffer stream unattached to a surface and wait for the result. |
2414 | 82 | * The resulting buffer stream may be used with | 82 | * The resulting buffer stream may be used with |
2415 | 83 | * mir_cursor_configuration_from_buffer_stream in order to post images | 83 | * mir_cursor_configuration_from_buffer_stream in order to post images |
2416 | 84 | * to the system cursor. | 84 | * to the system cursor. |
2417 | 85 | * | 85 | * |
2418 | 86 | * \param [in] connection A valid connection | 86 | * \param [in] connection A valid connection |
2419 | @@ -90,7 +90,7 @@ | |||
2420 | 90 | * \param [in] buffer_usage Requested buffer usage, use | 90 | * \param [in] buffer_usage Requested buffer usage, use |
2421 | 91 | * mir_buffer_usage_software for cursor image streams | 91 | * mir_buffer_usage_software for cursor image streams |
2422 | 92 | * | 92 | * |
2424 | 93 | * \return The new buffer stream. This is guaranteed non-null, | 93 | * \return The new buffer stream. This is guaranteed non-null, |
2425 | 94 | * but may be invalid in the case of error. | 94 | * but may be invalid in the case of error. |
2426 | 95 | */ | 95 | */ |
2427 | 96 | MirBufferStream* mir_connection_create_buffer_stream_sync(MirConnection *connection, | 96 | MirBufferStream* mir_connection_create_buffer_stream_sync(MirConnection *connection, |
2428 | @@ -116,7 +116,7 @@ | |||
2429 | 116 | void *context); | 116 | void *context); |
2430 | 117 | 117 | ||
2431 | 118 | /** | 118 | /** |
2433 | 119 | * Release the specified buffer stream like in mir,_buffer_stream_release(), | 119 | * Release the specified buffer stream like in mir,_buffer_stream_release(), |
2434 | 120 | * but also wait for the operation to complete. | 120 | * but also wait for the operation to complete. |
2435 | 121 | * \param [in] buffer_stream The buffer stream to be released | 121 | * \param [in] buffer_stream The buffer stream to be released |
2436 | 122 | */ | 122 | */ |
2437 | @@ -124,7 +124,7 @@ | |||
2438 | 124 | 124 | ||
2439 | 125 | /** | 125 | /** |
2440 | 126 | * Get the underlying platform type so the buffer obtained in "raw" | 126 | * Get the underlying platform type so the buffer obtained in "raw" |
2442 | 127 | * representation in mir_buffer_stream_get_current_buffer() | 127 | * representation in mir_buffer_stream_get_current_buffer() |
2443 | 128 | * may be understood | 128 | * may be understood |
2444 | 129 | * | 129 | * |
2445 | 130 | * \deprecated Use of this function is inherently non-portable in the presence | 130 | * \deprecated Use of this function is inherently non-portable in the presence |
2446 | @@ -137,7 +137,7 @@ | |||
2447 | 137 | * | 137 | * |
2448 | 138 | * \pre The stream is valid | 138 | * \pre The stream is valid |
2449 | 139 | * \param [in] stream The stream | 139 | * \param [in] stream The stream |
2451 | 140 | * \return One of mir_platform_type_android or | 140 | * \return One of mir_platform_type_android or |
2452 | 141 | * mir_platform_type_gbm | 141 | * mir_platform_type_gbm |
2453 | 142 | */ | 142 | */ |
2454 | 143 | /// @cond | 143 | /// @cond |
2455 | @@ -156,7 +156,7 @@ | |||
2456 | 156 | 156 | ||
2457 | 157 | /** | 157 | /** |
2458 | 158 | * Advance a buffer stream's buffer. The returned handle remains valid until the | 158 | * Advance a buffer stream's buffer. The returned handle remains valid until the |
2460 | 159 | * next call to mir_buffer_stream_swap_buffers, until the buffer stream has been | 159 | * next call to mir_buffer_stream_swap_buffers, until the buffer stream has been |
2461 | 160 | * released or the connection to the server has been released. | 160 | * released or the connection to the server has been released. |
2462 | 161 | * \warning callback could be called from another thread. You must do any | 161 | * \warning callback could be called from another thread. You must do any |
2463 | 162 | * locking appropriate to protect your data accessed in the | 162 | * locking appropriate to protect your data accessed in the |
2464 | @@ -173,7 +173,7 @@ | |||
2465 | 173 | void *context); | 173 | void *context); |
2466 | 174 | 174 | ||
2467 | 175 | /** | 175 | /** |
2469 | 176 | * Advance a buffer stream's buffer as in mir_buffer stream_swap_buffers(), | 176 | * Advance a buffer stream's buffer as in mir_buffer stream_swap_buffers(), |
2470 | 177 | * but also wait for the operation to complete. | 177 | * but also wait for the operation to complete. |
2471 | 178 | * \param [in] buffer_stream The buffer stream whose buffer to advance | 178 | * \param [in] buffer_stream The buffer stream whose buffer to advance |
2472 | 179 | */ | 179 | */ |
2473 | 180 | 180 | ||
2474 | === modified file 'include/client/mir_toolkit/mir_cursor_configuration.h' | |||
2475 | --- include/client/mir_toolkit/mir_cursor_configuration.h 2016-09-08 02:58:56 +0000 | |||
2476 | +++ include/client/mir_toolkit/mir_cursor_configuration.h 2016-10-27 03:52:22 +0000 | |||
2477 | @@ -55,7 +55,7 @@ | |||
2478 | 55 | 55 | ||
2479 | 56 | /** | 56 | /** |
2480 | 57 | * Returns a new cursor configuration tied to a given buffer stream. | 57 | * Returns a new cursor configuration tied to a given buffer stream. |
2482 | 58 | * If the configuration is successfully applied buffers from the stream will be used | 58 | * If the configuration is successfully applied buffers from the stream will be used |
2483 | 59 | * to fill the system cursor. | 59 | * to fill the system cursor. |
2484 | 60 | * \param [in] stream The buffer stream | 60 | * \param [in] stream The buffer stream |
2485 | 61 | * \param [in] hotspot_x The x-coordinate to use as the cursor's hotspot. | 61 | * \param [in] hotspot_x The x-coordinate to use as the cursor's hotspot. |
2486 | 62 | 62 | ||
2487 | === modified file 'include/client/mir_toolkit/mir_screencast.h' | |||
2488 | --- include/client/mir_toolkit/mir_screencast.h 2016-07-18 07:38:38 +0000 | |||
2489 | +++ include/client/mir_toolkit/mir_screencast.h 2016-10-27 03:52:22 +0000 | |||
2490 | @@ -152,9 +152,9 @@ | |||
2491 | 152 | MirScreencast* screencast); | 152 | MirScreencast* screencast); |
2492 | 153 | 153 | ||
2493 | 154 | /** | 154 | /** |
2495 | 155 | * Retrieve the MirBufferStream associated with a screencast | 155 | * Retrieve the MirBufferStream associated with a screencast |
2496 | 156 | * (to advance buffers, obtain EGLNativeWindowType, etc...) | 156 | * (to advance buffers, obtain EGLNativeWindowType, etc...) |
2498 | 157 | * | 157 | * |
2499 | 158 | * \param[in] screencast The screencast | 158 | * \param[in] screencast The screencast |
2500 | 159 | */ | 159 | */ |
2501 | 160 | MirBufferStream* mir_screencast_get_buffer_stream(MirScreencast* screencast); | 160 | MirBufferStream* mir_screencast_get_buffer_stream(MirScreencast* screencast); |
2502 | 161 | 161 | ||
2503 | === modified file 'include/client/mir_toolkit/mir_surface.h' | |||
2504 | --- include/client/mir_toolkit/mir_surface.h 2016-10-12 06:03:15 +0000 | |||
2505 | +++ include/client/mir_toolkit/mir_surface.h 2016-10-27 03:52:22 +0000 | |||
2506 | @@ -500,12 +500,12 @@ | |||
2507 | 500 | * On application of the spec, a stream that is not present in the surface, | 500 | * On application of the spec, a stream that is not present in the surface, |
2508 | 501 | * but is in the list will be associated with the surface. | 501 | * but is in the list will be associated with the surface. |
2509 | 502 | * Streams set a displacement from the top-left corner of the surface. | 502 | * Streams set a displacement from the top-left corner of the surface. |
2511 | 503 | * | 503 | * |
2512 | 504 | * \warning disassociating streams from the surface will not release() them. | 504 | * \warning disassociating streams from the surface will not release() them. |
2513 | 505 | * \warning It is wiser to arrange the streams within the bounds of the | 505 | * \warning It is wiser to arrange the streams within the bounds of the |
2514 | 506 | * surface the spec is applied to. Shells can define their own | 506 | * surface the spec is applied to. Shells can define their own |
2515 | 507 | * behavior as to what happens to an out-of-bound stream. | 507 | * behavior as to what happens to an out-of-bound stream. |
2517 | 508 | * | 508 | * |
2518 | 509 | * \param [in] spec The spec to accumulate the request in. | 509 | * \param [in] spec The spec to accumulate the request in. |
2519 | 510 | * \param [in] streams An array of non-null streams info. | 510 | * \param [in] streams An array of non-null streams info. |
2520 | 511 | * \param [in] num_streams The number of elements in the streams array. | 511 | * \param [in] num_streams The number of elements in the streams array. |
2521 | @@ -734,7 +734,7 @@ | |||
2522 | 734 | * \return The DPI of the surface, or zero if unknown. | 734 | * \return The DPI of the surface, or zero if unknown. |
2523 | 735 | */ | 735 | */ |
2524 | 736 | int mir_surface_get_dpi(MirSurface* surface); | 736 | int mir_surface_get_dpi(MirSurface* surface); |
2526 | 737 | 737 | ||
2527 | 738 | /** | 738 | /** |
2528 | 739 | * Query the focus state for a surface. | 739 | * Query the focus state for a surface. |
2529 | 740 | * \param [in] surface The surface to operate on | 740 | * \param [in] surface The surface to operate on |
2530 | @@ -750,7 +750,7 @@ | |||
2531 | 750 | MirSurfaceVisibility mir_surface_get_visibility(MirSurface *surface); | 750 | MirSurfaceVisibility mir_surface_get_visibility(MirSurface *surface); |
2532 | 751 | 751 | ||
2533 | 752 | /** | 752 | /** |
2535 | 753 | * Choose the cursor state for a surface: whether a cursor is shown, | 753 | * Choose the cursor state for a surface: whether a cursor is shown, |
2536 | 754 | * and which cursor if so. | 754 | * and which cursor if so. |
2537 | 755 | * \param [in] surface The surface to operate on | 755 | * \param [in] surface The surface to operate on |
2538 | 756 | * \param [in] parameters The configuration parameters obtained | 756 | * \param [in] parameters The configuration parameters obtained |
2539 | 757 | 757 | ||
2540 | === modified file 'include/client/mir_toolkit/version.h' | |||
2541 | --- include/client/mir_toolkit/version.h 2016-10-12 06:03:15 +0000 | |||
2542 | +++ include/client/mir_toolkit/version.h 2016-10-27 03:52:22 +0000 | |||
2543 | @@ -40,7 +40,7 @@ | |||
2544 | 40 | * | 40 | * |
2545 | 41 | * The minor client API version. This will increase each time new backwards-compatible API | 41 | * The minor client API version. This will increase each time new backwards-compatible API |
2546 | 42 | * is added, and will reset to 0 each time MIR_CLIENT_MAJOR_VERSION is incremented. | 42 | * is added, and will reset to 0 each time MIR_CLIENT_MAJOR_VERSION is incremented. |
2548 | 43 | * | 43 | * |
2549 | 44 | * See also: http://semver.org/ | 44 | * See also: http://semver.org/ |
2550 | 45 | */ | 45 | */ |
2551 | 46 | #define MIR_CLIENT_MINOR_VERSION (4) | 46 | #define MIR_CLIENT_MINOR_VERSION (4) |
2552 | 47 | 47 | ||
2553 | === modified file 'include/common/mir/fd.h' | |||
2554 | --- include/common/mir/fd.h 2015-02-22 07:46:25 +0000 | |||
2555 | +++ include/common/mir/fd.h 2016-10-27 03:52:22 +0000 | |||
2556 | @@ -25,7 +25,7 @@ | |||
2557 | 25 | //TODO: remove once mir::Fd is used more pervasively. | 25 | //TODO: remove once mir::Fd is used more pervasively. |
2558 | 26 | // some existing code does not really allow us to transfer or share the ownership | 26 | // some existing code does not really allow us to transfer or share the ownership |
2559 | 27 | // of the fd. Constructing using mir::Fd(IntOwnedFd(int)) will help transition the existing | 27 | // of the fd. Constructing using mir::Fd(IntOwnedFd(int)) will help transition the existing |
2561 | 28 | // code to using the mir::Fd type properly. | 28 | // code to using the mir::Fd type properly. |
2562 | 29 | struct IntOwnedFd | 29 | struct IntOwnedFd |
2563 | 30 | { | 30 | { |
2564 | 31 | int int_owned_fd; | 31 | int int_owned_fd; |
2565 | 32 | 32 | ||
2566 | === modified file 'include/common/mir/uncaught.h' | |||
2567 | --- include/common/mir/uncaught.h 2016-10-20 14:35:09 +0000 | |||
2568 | +++ include/common/mir/uncaught.h 2016-10-27 03:52:22 +0000 | |||
2569 | @@ -19,7 +19,7 @@ | |||
2570 | 19 | #ifndef MIR_CLIENT_API_HELPERS_H_ | 19 | #ifndef MIR_CLIENT_API_HELPERS_H_ |
2571 | 20 | #define MIR_CLIENT_API_HELPERS_H_ | 20 | #define MIR_CLIENT_API_HELPERS_H_ |
2572 | 21 | 21 | ||
2574 | 22 | #include <boost/exception/diagnostic_information.hpp> | 22 | #include <boost/exception/diagnostic_information.hpp> |
2575 | 23 | 23 | ||
2576 | 24 | #include "mir/log.h" | 24 | #include "mir/log.h" |
2577 | 25 | 25 | ||
2578 | 26 | 26 | ||
2579 | === modified file 'include/core/mir/geometry/rectangle.h' | |||
2580 | --- include/core/mir/geometry/rectangle.h 2016-08-25 08:16:10 +0000 | |||
2581 | +++ include/core/mir/geometry/rectangle.h 2016-10-27 03:52:22 +0000 | |||
2582 | @@ -67,7 +67,7 @@ | |||
2583 | 67 | 67 | ||
2584 | 68 | X left() const { return top_left.x; } | 68 | X left() const { return top_left.x; } |
2585 | 69 | X right() const { return bottom_right().x; } | 69 | X right() const { return bottom_right().x; } |
2587 | 70 | Y top() const { return top_left.y; } | 70 | Y top() const { return top_left.y; } |
2588 | 71 | Y bottom() const { return bottom_right().y; } | 71 | Y bottom() const { return bottom_right().y; } |
2589 | 72 | }; | 72 | }; |
2590 | 73 | 73 | ||
2591 | 74 | 74 | ||
2592 | === modified file 'include/platform/mir/graphics/cursor_image.h' | |||
2593 | --- include/platform/mir/graphics/cursor_image.h 2015-02-22 07:46:25 +0000 | |||
2594 | +++ include/platform/mir/graphics/cursor_image.h 2016-10-27 03:52:22 +0000 | |||
2595 | @@ -34,12 +34,12 @@ | |||
2596 | 34 | 34 | ||
2597 | 35 | virtual void const* as_argb_8888() const = 0; | 35 | virtual void const* as_argb_8888() const = 0; |
2598 | 36 | virtual geometry::Size size() const = 0; | 36 | virtual geometry::Size size() const = 0; |
2600 | 37 | 37 | ||
2601 | 38 | // We use "hotspot" to mean the offset within a cursor image | 38 | // We use "hotspot" to mean the offset within a cursor image |
2602 | 39 | // which should be placed at the onscreen | 39 | // which should be placed at the onscreen |
2603 | 40 | // location of the pointer. | 40 | // location of the pointer. |
2604 | 41 | virtual geometry::Displacement hotspot() const = 0; | 41 | virtual geometry::Displacement hotspot() const = 0; |
2606 | 42 | 42 | ||
2607 | 43 | 43 | ||
2608 | 44 | protected: | 44 | protected: |
2609 | 45 | CursorImage() = default; | 45 | CursorImage() = default; |
2610 | 46 | 46 | ||
2611 | === modified file 'include/platform/mir/graphics/display.h' | |||
2612 | --- include/platform/mir/graphics/display.h 2016-10-12 06:03:15 +0000 | |||
2613 | +++ include/platform/mir/graphics/display.h 2016-10-27 03:52:22 +0000 | |||
2614 | @@ -71,7 +71,7 @@ | |||
2615 | 71 | 71 | ||
2616 | 72 | /** Post the content of the DisplayBuffers associated with this DisplaySyncGroup. | 72 | /** Post the content of the DisplayBuffers associated with this DisplaySyncGroup. |
2617 | 73 | * The content of all the DisplayBuffers in this DisplaySyncGroup are guaranteed to be onscreen | 73 | * The content of all the DisplayBuffers in this DisplaySyncGroup are guaranteed to be onscreen |
2619 | 74 | * in the near future. On some platforms, this may wait a potentially long time for vsync. | 74 | * in the near future. On some platforms, this may wait a potentially long time for vsync. |
2620 | 75 | **/ | 75 | **/ |
2621 | 76 | virtual void post() = 0; | 76 | virtual void post() = 0; |
2622 | 77 | 77 | ||
2623 | 78 | 78 | ||
2624 | === modified file 'include/platform/mir/graphics/display_buffer.h' | |||
2625 | --- include/platform/mir/graphics/display_buffer.h 2016-10-12 06:03:15 +0000 | |||
2626 | +++ include/platform/mir/graphics/display_buffer.h 2016-10-27 03:52:22 +0000 | |||
2627 | @@ -52,9 +52,9 @@ | |||
2628 | 52 | /** The area the DisplayBuffer occupies in the virtual screen space. */ | 52 | /** The area the DisplayBuffer occupies in the virtual screen space. */ |
2629 | 53 | virtual geometry::Rectangle view_area() const = 0; | 53 | virtual geometry::Rectangle view_area() const = 0; |
2630 | 54 | 54 | ||
2632 | 55 | /** This will render renderlist to the screen and post the result to the | 55 | /** This will render renderlist to the screen and post the result to the |
2633 | 56 | * screen if there is a hardware optimization that can be done. | 56 | * screen if there is a hardware optimization that can be done. |
2635 | 57 | * \param [in] renderlist | 57 | * \param [in] renderlist |
2636 | 58 | * The renderables that should appear on the screen if the hardware | 58 | * The renderables that should appear on the screen if the hardware |
2637 | 59 | * is capable of optmizing that list somehow. If what you want | 59 | * is capable of optmizing that list somehow. If what you want |
2638 | 60 | * displayed on the screen cannot be represented by a RenderableList, | 60 | * displayed on the screen cannot be represented by a RenderableList, |
2639 | 61 | 61 | ||
2640 | === modified file 'include/platform/mir/graphics/platform_ipc_operations.h' | |||
2641 | --- include/platform/mir/graphics/platform_ipc_operations.h 2016-10-12 06:03:15 +0000 | |||
2642 | +++ include/platform/mir/graphics/platform_ipc_operations.h 2016-10-27 03:52:22 +0000 | |||
2643 | @@ -29,7 +29,7 @@ | |||
2644 | 29 | enum class BufferIpcMsgType | 29 | enum class BufferIpcMsgType |
2645 | 30 | { | 30 | { |
2646 | 31 | full_msg, //pack the full ipc representation of the buffer | 31 | full_msg, //pack the full ipc representation of the buffer |
2648 | 32 | update_msg //assume the client has a full representation, and pack only updates to the buffer | 32 | update_msg //assume the client has a full representation, and pack only updates to the buffer |
2649 | 33 | }; | 33 | }; |
2650 | 34 | class Buffer; | 34 | class Buffer; |
2651 | 35 | class BufferIpcMessage; | 35 | class BufferIpcMessage; |
2652 | @@ -69,15 +69,15 @@ | |||
2653 | 69 | */ | 69 | */ |
2654 | 70 | virtual std::shared_ptr<PlatformIPCPackage> connection_ipc_package() = 0; | 70 | virtual std::shared_ptr<PlatformIPCPackage> connection_ipc_package() = 0; |
2655 | 71 | 71 | ||
2657 | 72 | 72 | ||
2658 | 73 | /** | 73 | /** |
2659 | 74 | * Arranges a platform specific operation triggered by an IPC call | 74 | * Arranges a platform specific operation triggered by an IPC call |
2660 | 75 | * \returns the response that will be sent to the client | 75 | * \returns the response that will be sent to the client |
2662 | 76 | * \param [in] opcode the opcode that indicates the action to be performed | 76 | * \param [in] opcode the opcode that indicates the action to be performed |
2663 | 77 | * \param [in] message the message that was sent to the server | 77 | * \param [in] message the message that was sent to the server |
2664 | 78 | */ | 78 | */ |
2665 | 79 | virtual PlatformOperationMessage platform_operation( | 79 | virtual PlatformOperationMessage platform_operation( |
2667 | 80 | unsigned int const opcode, PlatformOperationMessage const& message) = 0; | 80 | unsigned int const opcode, PlatformOperationMessage const& message) = 0; |
2668 | 81 | 81 | ||
2669 | 82 | protected: | 82 | protected: |
2670 | 83 | PlatformIpcOperations() = default; | 83 | PlatformIpcOperations() = default; |
2671 | 84 | 84 | ||
2672 | === modified file 'include/renderers/sw/mir/renderer/sw/pixel_source.h' | |||
2673 | --- include/renderers/sw/mir/renderer/sw/pixel_source.h 2016-09-09 03:47:07 +0000 | |||
2674 | +++ include/renderers/sw/mir/renderer/sw/pixel_source.h 2016-10-27 03:52:22 +0000 | |||
2675 | @@ -35,7 +35,7 @@ | |||
2676 | 35 | public: | 35 | public: |
2677 | 36 | virtual ~PixelSource() = default; | 36 | virtual ~PixelSource() = default; |
2678 | 37 | 37 | ||
2680 | 38 | //functions have legacy issues with their signatures. | 38 | //functions have legacy issues with their signatures. |
2681 | 39 | //FIXME: correct write, it requires that the user does too much to use it correctly, | 39 | //FIXME: correct write, it requires that the user does too much to use it correctly, |
2682 | 40 | // (ie, it forces them to figure out what size is proper, alloc a buffer, fill it, and then | 40 | // (ie, it forces them to figure out what size is proper, alloc a buffer, fill it, and then |
2683 | 41 | // copy the data into the buffer) | 41 | // copy the data into the buffer) |
2684 | 42 | 42 | ||
2685 | === modified file 'include/server/mir/compositor/scene_element.h' | |||
2686 | --- include/server/mir/compositor/scene_element.h 2015-06-17 05:20:42 +0000 | |||
2687 | +++ include/server/mir/compositor/scene_element.h 2016-10-27 03:52:22 +0000 | |||
2688 | @@ -41,7 +41,7 @@ | |||
2689 | 41 | 41 | ||
2690 | 42 | //TODO: Decoration is opaque on purpose. It is only used by an internal example, | 42 | //TODO: Decoration is opaque on purpose. It is only used by an internal example, |
2691 | 43 | // and this function should be removed from the public API. | 43 | // and this function should be removed from the public API. |
2693 | 44 | virtual std::unique_ptr<Decoration> decoration() const = 0; | 44 | virtual std::unique_ptr<Decoration> decoration() const = 0; |
2694 | 45 | 45 | ||
2695 | 46 | protected: | 46 | protected: |
2696 | 47 | SceneElement() = default; | 47 | SceneElement() = default; |
2697 | 48 | 48 | ||
2698 | === modified file 'include/server/mir/frontend/buffer_stream.h' | |||
2699 | --- include/server/mir/frontend/buffer_stream.h 2016-07-18 07:38:38 +0000 | |||
2700 | +++ include/server/mir/frontend/buffer_stream.h 2016-10-27 03:52:22 +0000 | |||
2701 | @@ -43,19 +43,19 @@ | |||
2702 | 43 | { | 43 | { |
2703 | 44 | public: | 44 | public: |
2704 | 45 | virtual ~BufferStream() = default; | 45 | virtual ~BufferStream() = default; |
2706 | 46 | 46 | ||
2707 | 47 | virtual void swap_buffers(graphics::Buffer* old_buffer, std::function<void(graphics::Buffer* new_buffer)> complete) = 0; | 47 | virtual void swap_buffers(graphics::Buffer* old_buffer, std::function<void(graphics::Buffer* new_buffer)> complete) = 0; |
2708 | 48 | 48 | ||
2709 | 49 | virtual void add_observer(std::shared_ptr<scene::SurfaceObserver> const& observer) = 0; | 49 | virtual void add_observer(std::shared_ptr<scene::SurfaceObserver> const& observer) = 0; |
2710 | 50 | virtual void remove_observer(std::weak_ptr<scene::SurfaceObserver> const& observer) = 0; | 50 | virtual void remove_observer(std::weak_ptr<scene::SurfaceObserver> const& observer) = 0; |
2712 | 51 | 51 | ||
2713 | 52 | virtual void with_most_recent_buffer_do( | 52 | virtual void with_most_recent_buffer_do( |
2714 | 53 | std::function<void(graphics::Buffer&)> const& exec) = 0; | 53 | std::function<void(graphics::Buffer&)> const& exec) = 0; |
2715 | 54 | 54 | ||
2716 | 55 | virtual MirPixelFormat pixel_format() const = 0; | 55 | virtual MirPixelFormat pixel_format() const = 0; |
2717 | 56 | 56 | ||
2718 | 57 | //TODO: associate/disassociate_buffer are only used for timeout framedropping policy decisions. | 57 | //TODO: associate/disassociate_buffer are only used for timeout framedropping policy decisions. |
2720 | 58 | // They will be removed once timeout framedropping policy moves to the client side. | 58 | // They will be removed once timeout framedropping policy moves to the client side. |
2721 | 59 | virtual void associate_buffer(graphics::BufferID) = 0; | 59 | virtual void associate_buffer(graphics::BufferID) = 0; |
2722 | 60 | virtual void disassociate_buffer(graphics::BufferID) = 0; | 60 | virtual void disassociate_buffer(graphics::BufferID) = 0; |
2723 | 61 | 61 | ||
2724 | 62 | 62 | ||
2725 | === modified file 'include/server/mir/input/seat_report.h' | |||
2726 | --- include/server/mir/input/seat_report.h 2016-08-01 21:27:13 +0000 | |||
2727 | +++ include/server/mir/input/seat_report.h 2016-10-27 03:52:22 +0000 | |||
2728 | @@ -38,7 +38,7 @@ | |||
2729 | 38 | { | 38 | { |
2730 | 39 | public: | 39 | public: |
2731 | 40 | virtual ~SeatReport() = default; | 40 | virtual ~SeatReport() = default; |
2733 | 41 | 41 | ||
2734 | 42 | virtual void seat_add_device(uint64_t id) = 0; | 42 | virtual void seat_add_device(uint64_t id) = 0; |
2735 | 43 | virtual void seat_remove_device(uint64_t id) = 0; | 43 | virtual void seat_remove_device(uint64_t id) = 0; |
2736 | 44 | virtual void seat_dispatch_event(MirEvent const& event) = 0; | 44 | virtual void seat_dispatch_event(MirEvent const& event) = 0; |
2737 | 45 | 45 | ||
2738 | === modified file 'include/server/mir/input/touch_visualizer.h' | |||
2739 | --- include/server/mir/input/touch_visualizer.h 2016-01-29 08:18:22 +0000 | |||
2740 | +++ include/server/mir/input/touch_visualizer.h 2016-10-27 03:52:22 +0000 | |||
2741 | @@ -38,15 +38,15 @@ | |||
2742 | 38 | struct Spot | 38 | struct Spot |
2743 | 39 | { | 39 | { |
2744 | 40 | geometry::Point touch_location; | 40 | geometry::Point touch_location; |
2746 | 41 | 41 | ||
2747 | 42 | // If pressure is zero, the touch-point can be interpreted as a hover. | 42 | // If pressure is zero, the touch-point can be interpreted as a hover. |
2748 | 43 | float pressure; | 43 | float pressure; |
2749 | 44 | }; | 44 | }; |
2751 | 45 | 45 | ||
2752 | 46 | // Toggle visualization of touches | 46 | // Toggle visualization of touches |
2753 | 47 | virtual void enable() = 0; | 47 | virtual void enable() = 0; |
2754 | 48 | virtual void disable() = 0; | 48 | virtual void disable() = 0; |
2756 | 49 | 49 | ||
2757 | 50 | // Visualize a given set of touches statelessly. | 50 | // Visualize a given set of touches statelessly. |
2758 | 51 | virtual void visualize_touches(std::vector<Spot> const& touches) = 0; | 51 | virtual void visualize_touches(std::vector<Spot> const& touches) = 0; |
2759 | 52 | 52 | ||
2760 | 53 | 53 | ||
2761 | === modified file 'include/server/mir/scene/observer.h' | |||
2762 | --- include/server/mir/scene/observer.h 2015-02-22 07:46:25 +0000 | |||
2763 | +++ include/server/mir/scene/observer.h 2016-10-27 03:52:22 +0000 | |||
2764 | @@ -36,7 +36,7 @@ | |||
2765 | 36 | virtual void surface_added(Surface* surface) = 0; | 36 | virtual void surface_added(Surface* surface) = 0; |
2766 | 37 | virtual void surface_removed(Surface* surface) = 0; | 37 | virtual void surface_removed(Surface* surface) = 0; |
2767 | 38 | virtual void surfaces_reordered() = 0; | 38 | virtual void surfaces_reordered() = 0; |
2769 | 39 | 39 | ||
2770 | 40 | // Used to indicate the scene has changed in some way beyond the present surfaces | 40 | // Used to indicate the scene has changed in some way beyond the present surfaces |
2771 | 41 | // and will require full recomposition. | 41 | // and will require full recomposition. |
2772 | 42 | virtual void scene_changed() = 0; | 42 | virtual void scene_changed() = 0; |
2773 | 43 | 43 | ||
2774 | === modified file 'include/server/mir/scene/surface.h' | |||
2775 | --- include/server/mir/scene/surface.h 2016-10-12 06:03:15 +0000 | |||
2776 | +++ include/server/mir/scene/surface.h 2016-10-27 03:52:22 +0000 | |||
2777 | @@ -64,7 +64,7 @@ | |||
2778 | 64 | /// Size of the surface including window frame (if any) | 64 | /// Size of the surface including window frame (if any) |
2779 | 65 | virtual geometry::Size size() const = 0; | 65 | virtual geometry::Size size() const = 0; |
2780 | 66 | 66 | ||
2782 | 67 | virtual graphics::RenderableList generate_renderables(compositor::CompositorID id) const = 0; | 67 | virtual graphics::RenderableList generate_renderables(compositor::CompositorID id) const = 0; |
2783 | 68 | virtual int buffers_ready_for_compositor(void const* compositor_id) const = 0; | 68 | virtual int buffers_ready_for_compositor(void const* compositor_id) const = 0; |
2784 | 69 | 69 | ||
2785 | 70 | virtual float alpha() const = 0; //only used in examples/ | 70 | virtual float alpha() const = 0; //only used in examples/ |
2786 | @@ -91,7 +91,7 @@ | |||
2787 | 91 | virtual void set_transformation(glm::mat4 const& t) = 0; | 91 | virtual void set_transformation(glm::mat4 const& t) = 0; |
2788 | 92 | virtual void set_alpha(float alpha) = 0; | 92 | virtual void set_alpha(float alpha) = 0; |
2789 | 93 | virtual void set_orientation(MirOrientation orientation) = 0; | 93 | virtual void set_orientation(MirOrientation orientation) = 0; |
2791 | 94 | 94 | ||
2792 | 95 | virtual void set_cursor_image(std::shared_ptr<graphics::CursorImage> const& image) override = 0; | 95 | virtual void set_cursor_image(std::shared_ptr<graphics::CursorImage> const& image) override = 0; |
2793 | 96 | virtual std::shared_ptr<graphics::CursorImage> cursor_image() const override = 0; | 96 | virtual std::shared_ptr<graphics::CursorImage> cursor_image() const override = 0; |
2794 | 97 | 97 | ||
2795 | 98 | 98 | ||
2796 | === modified file 'include/server/mir/server.h' | |||
2797 | --- include/server/mir/server.h 2016-07-28 23:00:22 +0000 | |||
2798 | +++ include/server/mir/server.h 2016-10-27 03:52:22 +0000 | |||
2799 | @@ -53,7 +53,7 @@ | |||
2800 | 53 | namespace scene | 53 | namespace scene |
2801 | 54 | { | 54 | { |
2802 | 55 | class ApplicationNotRespondingDetector; | 55 | class ApplicationNotRespondingDetector; |
2804 | 56 | class BufferStreamFactory; | 56 | class BufferStreamFactory; |
2805 | 57 | class PromptSessionListener; | 57 | class PromptSessionListener; |
2806 | 58 | class PromptSessionManager; | 58 | class PromptSessionManager; |
2807 | 59 | class SessionListener; | 59 | class SessionListener; |
2808 | 60 | 60 | ||
2809 | === modified file 'include/server/mir/shell/surface_specification.h' | |||
2810 | --- include/server/mir/shell/surface_specification.h 2016-10-12 06:03:15 +0000 | |||
2811 | +++ include/server/mir/shell/surface_specification.h 2016-10-27 03:52:22 +0000 | |||
2812 | @@ -80,7 +80,7 @@ | |||
2813 | 80 | optional_value<std::weak_ptr<scene::Surface>> parent; | 80 | optional_value<std::weak_ptr<scene::Surface>> parent; |
2814 | 81 | 81 | ||
2815 | 82 | optional_value<std::vector<geometry::Rectangle>> input_shape; | 82 | optional_value<std::vector<geometry::Rectangle>> input_shape; |
2817 | 83 | 83 | ||
2818 | 84 | // TODO scene::SurfaceCreationParameters overlaps this content but has additional fields: | 84 | // TODO scene::SurfaceCreationParameters overlaps this content but has additional fields: |
2819 | 85 | // geometry::Point top_left; | 85 | // geometry::Point top_left; |
2820 | 86 | // input::InputReceptionMode input_mode; | 86 | // input::InputReceptionMode input_mode; |
2821 | 87 | 87 | ||
2822 | === modified file 'include/test/mir/test/doubles/nested_mock_egl.h' | |||
2823 | --- include/test/mir/test/doubles/nested_mock_egl.h 2016-01-29 08:18:22 +0000 | |||
2824 | +++ include/test/mir/test/doubles/nested_mock_egl.h 2016-10-27 03:52:22 +0000 | |||
2825 | @@ -27,7 +27,7 @@ | |||
2826 | 27 | { | 27 | { |
2827 | 28 | namespace doubles | 28 | namespace doubles |
2828 | 29 | { | 29 | { |
2830 | 30 | /// MockEGL with configuration for operating a nested server. | 30 | /// MockEGL with configuration for operating a nested server. |
2831 | 31 | class NestedMockEGL : public ::testing::NiceMock<MockEGL> | 31 | class NestedMockEGL : public ::testing::NiceMock<MockEGL> |
2832 | 32 | { | 32 | { |
2833 | 33 | public: | 33 | public: |
2834 | 34 | 34 | ||
2835 | === modified file 'include/test/mir/test/doubles/null_display.h' | |||
2836 | --- include/test/mir/test/doubles/null_display.h 2016-10-12 06:03:15 +0000 | |||
2837 | +++ include/test/mir/test/doubles/null_display.h 2016-10-27 03:52:22 +0000 | |||
2838 | @@ -68,7 +68,7 @@ | |||
2839 | 68 | 68 | ||
2840 | 69 | std::shared_ptr<graphics::Cursor> create_hardware_cursor(std::shared_ptr<graphics::CursorImage> const& /* initial_image */) override | 69 | std::shared_ptr<graphics::Cursor> create_hardware_cursor(std::shared_ptr<graphics::CursorImage> const& /* initial_image */) override |
2841 | 70 | { | 70 | { |
2843 | 71 | return {}; | 71 | return {}; |
2844 | 72 | } | 72 | } |
2845 | 73 | std::unique_ptr<graphics::VirtualOutput> create_virtual_output(int /*width*/, int /*height*/) override | 73 | std::unique_ptr<graphics::VirtualOutput> create_virtual_output(int /*width*/, int /*height*/) override |
2846 | 74 | { | 74 | { |
2847 | 75 | 75 | ||
2848 | === modified file 'include/test/mir/test/event_factory.h' | |||
2849 | --- include/test/mir/test/event_factory.h 2016-01-29 08:18:22 +0000 | |||
2850 | +++ include/test/mir/test/event_factory.h 2016-10-27 03:52:22 +0000 | |||
2851 | @@ -91,7 +91,7 @@ | |||
2852 | 91 | TouchParameters& from_device(int device_id); | 91 | TouchParameters& from_device(int device_id); |
2853 | 92 | TouchParameters& at_position(geometry::Point abs_pos); | 92 | TouchParameters& at_position(geometry::Point abs_pos); |
2854 | 93 | TouchParameters& with_action(Action touch_action); | 93 | TouchParameters& with_action(Action touch_action); |
2856 | 94 | 94 | ||
2857 | 95 | int device_id; | 95 | int device_id; |
2858 | 96 | int abs_x; | 96 | int abs_x; |
2859 | 97 | int abs_y; | 97 | int abs_y; |
2860 | 98 | 98 | ||
2861 | === modified file 'include/test/mir/test/event_matchers.h' | |||
2862 | --- include/test/mir/test/event_matchers.h 2016-10-11 18:10:32 +0000 | |||
2863 | +++ include/test/mir/test/event_matchers.h 2016-10-27 03:52:22 +0000 | |||
2864 | @@ -99,7 +99,7 @@ | |||
2865 | 99 | auto kev = maybe_key_event(to_address(arg)); | 99 | auto kev = maybe_key_event(to_address(arg)); |
2866 | 100 | if (kev == nullptr) | 100 | if (kev == nullptr) |
2867 | 101 | return false; | 101 | return false; |
2869 | 102 | 102 | ||
2870 | 103 | if (mir_keyboard_event_action(kev) != mir_keyboard_action_down) | 103 | if (mir_keyboard_event_action(kev) != mir_keyboard_action_down) |
2871 | 104 | return false; | 104 | return false; |
2872 | 105 | 105 | ||
2873 | @@ -111,7 +111,7 @@ | |||
2874 | 111 | auto kev = maybe_key_event(to_address(arg)); | 111 | auto kev = maybe_key_event(to_address(arg)); |
2875 | 112 | if (kev == nullptr) | 112 | if (kev == nullptr) |
2876 | 113 | return false; | 113 | return false; |
2878 | 114 | 114 | ||
2879 | 115 | if (mir_keyboard_event_action(kev) != mir_keyboard_action_repeat) | 115 | if (mir_keyboard_event_action(kev) != mir_keyboard_action_repeat) |
2880 | 116 | return false; | 116 | return false; |
2881 | 117 | 117 | ||
2882 | @@ -123,7 +123,7 @@ | |||
2883 | 123 | auto kev = maybe_key_event(to_address(arg)); | 123 | auto kev = maybe_key_event(to_address(arg)); |
2884 | 124 | if (kev == nullptr) | 124 | if (kev == nullptr) |
2885 | 125 | return false; | 125 | return false; |
2887 | 126 | 126 | ||
2888 | 127 | if (mir_keyboard_event_action(kev) != mir_keyboard_action_up) | 127 | if (mir_keyboard_event_action(kev) != mir_keyboard_action_up) |
2889 | 128 | return false; | 128 | return false; |
2890 | 129 | 129 | ||
2891 | @@ -135,12 +135,12 @@ | |||
2892 | 135 | auto kev = maybe_key_event(to_address(arg)); | 135 | auto kev = maybe_key_event(to_address(arg)); |
2893 | 136 | if (kev == nullptr) | 136 | if (kev == nullptr) |
2894 | 137 | return false; | 137 | return false; |
2896 | 138 | 138 | ||
2897 | 139 | if(mir_keyboard_event_modifiers(kev) != modifiers) | 139 | if(mir_keyboard_event_modifiers(kev) != modifiers) |
2898 | 140 | { | 140 | { |
2899 | 141 | return false; | 141 | return false; |
2900 | 142 | } | 142 | } |
2902 | 143 | 143 | ||
2903 | 144 | return true; | 144 | return true; |
2904 | 145 | } | 145 | } |
2905 | 146 | 146 | ||
2906 | @@ -186,7 +186,7 @@ | |||
2907 | 186 | { | 186 | { |
2908 | 187 | auto expected = maybe_touch_event(to_address(event)); | 187 | auto expected = maybe_touch_event(to_address(event)); |
2909 | 188 | auto actual = maybe_touch_event(to_address(arg)); | 188 | auto actual = maybe_touch_event(to_address(arg)); |
2911 | 189 | 189 | ||
2912 | 190 | if (expected == nullptr || actual == nullptr) | 190 | if (expected == nullptr || actual == nullptr) |
2913 | 191 | return false; | 191 | return false; |
2914 | 192 | 192 | ||
2915 | @@ -199,9 +199,9 @@ | |||
2916 | 199 | if (mir_touch_event_id(actual, i) != mir_touch_event_id(expected, i) || | 199 | if (mir_touch_event_id(actual, i) != mir_touch_event_id(expected, i) || |
2917 | 200 | mir_touch_event_action(actual, i) != mir_touch_event_action(expected, i) || | 200 | mir_touch_event_action(actual, i) != mir_touch_event_action(expected, i) || |
2918 | 201 | mir_touch_event_tooltype(actual, i) != mir_touch_event_tooltype(expected, i) || | 201 | mir_touch_event_tooltype(actual, i) != mir_touch_event_tooltype(expected, i) || |
2920 | 202 | mir_touch_event_axis_value(actual, i, mir_touch_axis_x) != | 202 | mir_touch_event_axis_value(actual, i, mir_touch_axis_x) != |
2921 | 203 | mir_touch_event_axis_value(expected, i, mir_touch_axis_x) || | 203 | mir_touch_event_axis_value(expected, i, mir_touch_axis_x) || |
2923 | 204 | mir_touch_event_axis_value(actual, i, mir_touch_axis_y) != | 204 | mir_touch_event_axis_value(actual, i, mir_touch_axis_y) != |
2924 | 205 | mir_touch_event_axis_value(expected, i, mir_touch_axis_y)) | 205 | mir_touch_event_axis_value(expected, i, mir_touch_axis_y)) |
2925 | 206 | { | 206 | { |
2926 | 207 | return false; | 207 | return false; |
2927 | 208 | 208 | ||
2928 | === modified file 'include/test/mir_test_framework/declarative_placement_window_manage_policy.h' | |||
2929 | --- include/test/mir_test_framework/declarative_placement_window_manage_policy.h 2016-07-18 07:38:38 +0000 | |||
2930 | +++ include/test/mir_test_framework/declarative_placement_window_manage_policy.h 2016-10-27 03:52:22 +0000 | |||
2931 | @@ -39,7 +39,7 @@ | |||
2932 | 39 | public: | 39 | public: |
2933 | 40 | DeclarativePlacementWindowManagerPolicy( | 40 | DeclarativePlacementWindowManagerPolicy( |
2934 | 41 | mir::shell::WindowManagerTools* const tools, | 41 | mir::shell::WindowManagerTools* const tools, |
2936 | 42 | SurfaceGeometries const& positions_by_name, | 42 | SurfaceGeometries const& positions_by_name, |
2937 | 43 | std::shared_ptr<mir::shell::DisplayLayout> const& display_layout); | 43 | std::shared_ptr<mir::shell::DisplayLayout> const& display_layout); |
2938 | 44 | 44 | ||
2939 | 45 | auto handle_place_new_surface( | 45 | auto handle_place_new_surface( |
2940 | 46 | 46 | ||
2941 | === modified file 'playground/demo-shell/demo_compositor.cpp' | |||
2942 | --- playground/demo-shell/demo_compositor.cpp 2016-10-12 06:03:15 +0000 | |||
2943 | +++ playground/demo-shell/demo_compositor.cpp 2016-10-27 03:52:22 +0000 | |||
2944 | @@ -70,7 +70,7 @@ | |||
2945 | 70 | for(auto const& it : elements) | 70 | for(auto const& it : elements) |
2946 | 71 | { | 71 | { |
2947 | 72 | auto const& renderable = it->renderable(); | 72 | auto const& renderable = it->renderable(); |
2949 | 73 | 73 | ||
2950 | 74 | bool embellished = false; | 74 | bool embellished = false; |
2951 | 75 | if (auto decor = it->decoration()) | 75 | if (auto decor = it->decoration()) |
2952 | 76 | { | 76 | { |
2953 | @@ -179,10 +179,10 @@ | |||
2954 | 179 | int db_height = view_area.size.height.as_int(); | 179 | int db_height = view_area.size.height.as_int(); |
2955 | 180 | int db_x = view_area.top_left.x.as_int(); | 180 | int db_x = view_area.top_left.x.as_int(); |
2956 | 181 | int db_y = view_area.top_left.y.as_int(); | 181 | int db_y = view_area.top_left.y.as_int(); |
2958 | 182 | 182 | ||
2959 | 183 | float zoom_width = db_width / zoom_mag; | 183 | float zoom_width = db_width / zoom_mag; |
2960 | 184 | float zoom_height = db_height / zoom_mag; | 184 | float zoom_height = db_height / zoom_mag; |
2962 | 185 | 185 | ||
2963 | 186 | // Note the 0.5f. This is because cursors (and all input in general) | 186 | // Note the 0.5f. This is because cursors (and all input in general) |
2964 | 187 | // measures coordinates at the centre of a pixel. But GL measures to | 187 | // measures coordinates at the centre of a pixel. But GL measures to |
2965 | 188 | // the top-left corner of a pixel. | 188 | // the top-left corner of a pixel. |
2966 | @@ -191,7 +191,7 @@ | |||
2967 | 191 | 191 | ||
2968 | 192 | float normal_x = screen_x / db_width; | 192 | float normal_x = screen_x / db_width; |
2969 | 193 | float normal_y = screen_y / db_height; | 193 | float normal_y = screen_y / db_height; |
2971 | 194 | 194 | ||
2972 | 195 | // Position the viewport so the cursor location matches up. | 195 | // Position the viewport so the cursor location matches up. |
2973 | 196 | // This assumes the hardware cursor still traverses the physical | 196 | // This assumes the hardware cursor still traverses the physical |
2974 | 197 | // screen and isn't being warped. | 197 | // screen and isn't being warped. |
2975 | 198 | 198 | ||
2976 | === modified file 'playground/demo-shell/demo_renderer.h' | |||
2977 | --- playground/demo-shell/demo_renderer.h 2016-01-29 08:18:22 +0000 | |||
2978 | +++ playground/demo-shell/demo_renderer.h 2016-10-27 03:52:22 +0000 | |||
2979 | @@ -79,7 +79,7 @@ | |||
2980 | 79 | 79 | ||
2981 | 80 | ColourEffect colour_effect; | 80 | ColourEffect colour_effect; |
2982 | 81 | Program inverse_program, contrast_program; | 81 | Program inverse_program, contrast_program; |
2984 | 82 | 82 | ||
2985 | 83 | mutable DecorMap decor_map; | 83 | mutable DecorMap decor_map; |
2986 | 84 | mutable typo::GLCache title_cache; | 84 | mutable typo::GLCache title_cache; |
2987 | 85 | }; | 85 | }; |
2988 | 86 | 86 | ||
2989 | === modified file 'playground/demo-shell/window_manager.cpp' | |||
2990 | --- playground/demo-shell/window_manager.cpp 2016-07-26 03:56:14 +0000 | |||
2991 | +++ playground/demo-shell/window_manager.cpp 2016-10-27 03:52:22 +0000 | |||
2992 | @@ -186,7 +186,7 @@ | |||
2993 | 186 | left = old_pos.x.as_int() + dx; | 186 | left = old_pos.x.as_int() + dx; |
2994 | 187 | else if (xedge == right_edge) | 187 | else if (xedge == right_edge) |
2995 | 188 | right = old_pos.x.as_int() + old_size.width.as_int() + dx; | 188 | right = old_pos.x.as_int() + old_size.width.as_int() + dx; |
2997 | 189 | 189 | ||
2998 | 190 | if (yedge == top_edge && dy < height) | 190 | if (yedge == top_edge && dy < height) |
2999 | 191 | top = old_pos.y.as_int() + dy; | 191 | top = old_pos.y.as_int() + dy; |
3000 | 192 | else if (yedge == bottom_edge) | 192 | else if (yedge == bottom_edge) |
3001 | @@ -206,7 +206,7 @@ | |||
3002 | 206 | 206 | ||
3003 | 207 | auto modifiers = mir_keyboard_event_modifiers(kev); | 207 | auto modifiers = mir_keyboard_event_modifiers(kev); |
3004 | 208 | auto scan_code = mir_keyboard_event_scan_code(kev); | 208 | auto scan_code = mir_keyboard_event_scan_code(kev); |
3006 | 209 | 209 | ||
3007 | 210 | if (modifiers & mir_input_event_modifier_alt && | 210 | if (modifiers & mir_input_event_modifier_alt && |
3008 | 211 | scan_code == KEY_TAB) // TODO: Use keycode once we support keymapping on the server side | 211 | scan_code == KEY_TAB) // TODO: Use keycode once we support keymapping on the server side |
3009 | 212 | { | 212 | { |
3010 | @@ -295,7 +295,7 @@ | |||
3011 | 295 | case KEY_0: preferred_mode = true; break; | 295 | case KEY_0: preferred_mode = true; break; |
3012 | 296 | default: break; | 296 | default: break; |
3013 | 297 | } | 297 | } |
3015 | 298 | 298 | ||
3016 | 299 | if (rotating || mode_change || preferred_mode) | 299 | if (rotating || mode_change || preferred_mode) |
3017 | 300 | { | 300 | { |
3018 | 301 | compositor->stop(); | 301 | compositor->stop(); |
3019 | @@ -322,7 +322,7 @@ | |||
3020 | 322 | mode_change) % nmodes; | 322 | mode_change) % nmodes; |
3021 | 323 | } | 323 | } |
3022 | 324 | }); | 324 | }); |
3024 | 325 | 325 | ||
3025 | 326 | display->configure(*conf); | 326 | display->configure(*conf); |
3026 | 327 | compositor->start(); | 327 | compositor->start(); |
3027 | 328 | return true; | 328 | return true; |
3028 | @@ -397,7 +397,7 @@ | |||
3029 | 397 | // there's a clear edge to the desktop. | 397 | // there's a clear edge to the desktop. |
3030 | 398 | if (zoom_exponent < 0) | 398 | if (zoom_exponent < 0) |
3031 | 399 | zoom_exponent = 0; | 399 | zoom_exponent = 0; |
3033 | 400 | 400 | ||
3034 | 401 | new_zoom_mag = powf(1.2f, zoom_exponent); | 401 | new_zoom_mag = powf(1.2f, zoom_exponent); |
3035 | 402 | handled = true; | 402 | handled = true; |
3036 | 403 | } | 403 | } |
3037 | @@ -444,7 +444,7 @@ | |||
3038 | 444 | old_size = surf->size(); | 444 | old_size = surf->size(); |
3039 | 445 | } | 445 | } |
3040 | 446 | 446 | ||
3042 | 447 | if (surf && | 447 | if (surf && |
3043 | 448 | (modifiers & mir_input_event_modifier_alt) && | 448 | (modifiers & mir_input_event_modifier_alt) && |
3044 | 449 | action == mir_pointer_action_motion && | 449 | action == mir_pointer_action_motion && |
3045 | 450 | vscroll) | 450 | vscroll) |
3046 | @@ -583,7 +583,7 @@ | |||
3047 | 583 | return false; | 583 | return false; |
3048 | 584 | auto iev = mir_event_get_input_event(&event); | 584 | auto iev = mir_event_get_input_event(&event); |
3049 | 585 | auto input_type = mir_input_event_get_type(iev); | 585 | auto input_type = mir_input_event_get_type(iev); |
3051 | 586 | 586 | ||
3052 | 587 | if (input_type == mir_input_event_type_key) | 587 | if (input_type == mir_input_event_type_key) |
3053 | 588 | { | 588 | { |
3054 | 589 | return handle_key_event(mir_input_event_get_keyboard_event(iev)); | 589 | return handle_key_event(mir_input_event_get_keyboard_event(iev)); |
3055 | 590 | 590 | ||
3056 | === modified file 'playground/demo-shell/window_manager.h' | |||
3057 | --- playground/demo-shell/window_manager.h 2016-07-26 03:56:14 +0000 | |||
3058 | +++ playground/demo-shell/window_manager.h 2016-10-27 03:52:22 +0000 | |||
3059 | @@ -49,7 +49,7 @@ | |||
3060 | 49 | 49 | ||
3061 | 50 | class WindowManager : public input::EventFilter | 50 | class WindowManager : public input::EventFilter |
3062 | 51 | { | 51 | { |
3064 | 52 | public: | 52 | public: |
3065 | 53 | WindowManager(); | 53 | WindowManager(); |
3066 | 54 | ~WindowManager() = default; | 54 | ~WindowManager() = default; |
3067 | 55 | 55 | ||
3068 | @@ -58,7 +58,7 @@ | |||
3069 | 58 | void set_compositor(std::shared_ptr<compositor::Compositor> const& compositor); | 58 | void set_compositor(std::shared_ptr<compositor::Compositor> const& compositor); |
3070 | 59 | void set_input_scene(std::shared_ptr<input::Scene> const& scene); | 59 | void set_input_scene(std::shared_ptr<input::Scene> const& scene); |
3071 | 60 | void force_redraw(); | 60 | void force_redraw(); |
3073 | 61 | 61 | ||
3074 | 62 | bool handle(MirEvent const& event) override; | 62 | bool handle(MirEvent const& event) override; |
3075 | 63 | 63 | ||
3076 | 64 | protected: | 64 | protected: |
3077 | 65 | 65 | ||
3078 | === modified file 'playground/mir_demo_client_chain_jumping_buffers.c' | |||
3079 | --- playground/mir_demo_client_chain_jumping_buffers.c 2016-06-08 18:37:32 +0000 | |||
3080 | +++ playground/mir_demo_client_chain_jumping_buffers.c 2016-10-27 03:52:22 +0000 | |||
3081 | @@ -55,7 +55,7 @@ | |||
3082 | 55 | else | 55 | else |
3083 | 56 | pixel[j] = fg; | 56 | pixel[j] = fg; |
3084 | 57 | } | 57 | } |
3086 | 58 | vaddr += region.stride; | 58 | vaddr += region.stride; |
3087 | 59 | } | 59 | } |
3088 | 60 | } | 60 | } |
3089 | 61 | 61 | ||
3090 | 62 | 62 | ||
3091 | === modified file 'playground/mir_demo_client_prerendered_frames.c' | |||
3092 | --- playground/mir_demo_client_prerendered_frames.c 2016-10-11 07:12:33 +0000 | |||
3093 | +++ playground/mir_demo_client_prerendered_frames.c 2016-10-27 03:52:22 +0000 | |||
3094 | @@ -34,7 +34,7 @@ | |||
3095 | 34 | float distance(int x0, int y0, int x1, int y1) | 34 | float distance(int x0, int y0, int x1, int y1) |
3096 | 35 | { | 35 | { |
3097 | 36 | float dx = x1 - x0; | 36 | float dx = x1 - x0; |
3099 | 37 | float dy = y1 - y0; | 37 | float dy = y1 - y0; |
3100 | 38 | return sqrt((dx * dx + dy * dy)); | 38 | return sqrt((dx * dx + dy * dy)); |
3101 | 39 | } | 39 | } |
3102 | 40 | 40 | ||
3103 | @@ -45,7 +45,7 @@ | |||
3104 | 45 | if ((!region.vaddr) || (region.pixel_format != mir_pixel_format_abgr_8888)) | 45 | if ((!region.vaddr) || (region.pixel_format != mir_pixel_format_abgr_8888)) |
3105 | 46 | return; | 46 | return; |
3106 | 47 | int const center_x = region.width / 2; | 47 | int const center_x = region.width / 2; |
3108 | 48 | int const center_y = region.height / 2; | 48 | int const center_y = region.height / 2; |
3109 | 49 | unsigned char* vaddr = (unsigned char*) region.vaddr; | 49 | unsigned char* vaddr = (unsigned char*) region.vaddr; |
3110 | 50 | for(int i = 0; i < region.height; i++) | 50 | for(int i = 0; i < region.height; i++) |
3111 | 51 | { | 51 | { |
3112 | @@ -53,13 +53,13 @@ | |||
3113 | 53 | for(int j = 0; j < region.width ; j++) | 53 | for(int j = 0; j < region.width ; j++) |
3114 | 54 | { | 54 | { |
3115 | 55 | int const centered_i = i - center_y; | 55 | int const centered_i = i - center_y; |
3117 | 56 | int const centered_j = j - center_x; | 56 | int const centered_j = j - center_x; |
3118 | 57 | if (distance(0,0, centered_i, centered_j) > radius) | 57 | if (distance(0,0, centered_i, centered_j) > radius) |
3119 | 58 | pixel[j] = bg; | 58 | pixel[j] = bg; |
3120 | 59 | else | 59 | else |
3121 | 60 | pixel[j] = fg; | 60 | pixel[j] = fg; |
3122 | 61 | } | 61 | } |
3124 | 62 | vaddr += region.stride; | 62 | vaddr += region.stride; |
3125 | 63 | } | 63 | } |
3126 | 64 | } | 64 | } |
3127 | 65 | 65 | ||
3128 | @@ -215,7 +215,7 @@ | |||
3129 | 215 | mir_presentation_chain_submit_buffer(chain, b); | 215 | mir_presentation_chain_submit_buffer(chain, b); |
3130 | 216 | 216 | ||
3131 | 217 | if ((i == num_prerendered_frames - 1) || (i == 0)) | 217 | if ((i == num_prerendered_frames - 1) || (i == 0)) |
3133 | 218 | inc *= -1; | 218 | inc *= -1; |
3134 | 219 | i = i + inc; | 219 | i = i + inc; |
3135 | 220 | } | 220 | } |
3136 | 221 | 221 | ||
3137 | 222 | 222 | ||
3138 | === modified file 'src/client/buffer.cpp' | |||
3139 | --- src/client/buffer.cpp 2016-10-12 06:03:15 +0000 | |||
3140 | +++ src/client/buffer.cpp 2016-10-27 03:52:22 +0000 | |||
3141 | @@ -76,7 +76,7 @@ | |||
3142 | 76 | 76 | ||
3143 | 77 | cb(); | 77 | cb(); |
3144 | 78 | } | 78 | } |
3146 | 79 | 79 | ||
3147 | 80 | MirGraphicsRegion mcl::Buffer::map_region() | 80 | MirGraphicsRegion mcl::Buffer::map_region() |
3148 | 81 | { | 81 | { |
3149 | 82 | std::lock_guard<decltype(mutex)> lk(mutex); | 82 | std::lock_guard<decltype(mutex)> lk(mutex); |
3150 | 83 | 83 | ||
3151 | === modified file 'src/client/buffer_factory.cpp' | |||
3152 | --- src/client/buffer_factory.cpp 2016-08-09 08:13:02 +0000 | |||
3153 | +++ src/client/buffer_factory.cpp 2016-10-27 03:52:22 +0000 | |||
3154 | @@ -71,7 +71,7 @@ | |||
3155 | 71 | if (buffer.has_error()) | 71 | if (buffer.has_error()) |
3156 | 72 | { | 72 | { |
3157 | 73 | b = std::make_unique<ErrorBuffer>( | 73 | b = std::make_unique<ErrorBuffer>( |
3159 | 74 | buffer.error(), error_id--, | 74 | buffer.error(), error_id--, |
3160 | 75 | (*request_it)->cb, (*request_it)->cb_context, (*request_it)->connection); | 75 | (*request_it)->cb, (*request_it)->cb_context, (*request_it)->connection); |
3161 | 76 | } | 76 | } |
3162 | 77 | else | 77 | else |
3163 | 78 | 78 | ||
3164 | === modified file 'src/client/buffer_stream.cpp' | |||
3165 | --- src/client/buffer_stream.cpp 2016-10-26 05:15:38 +0000 | |||
3166 | +++ src/client/buffer_stream.cpp 2016-10-27 03:52:22 +0000 | |||
3167 | @@ -292,7 +292,7 @@ | |||
3168 | 292 | buffer_depository = std::make_unique<BufferDepository>( | 292 | buffer_depository = std::make_unique<BufferDepository>( |
3169 | 293 | client_platform->create_buffer_factory(), factory, | 293 | client_platform->create_buffer_factory(), factory, |
3170 | 294 | std::make_shared<Requests>(display_server, protobuf_bs->id().value()), map, | 294 | std::make_shared<Requests>(display_server, protobuf_bs->id().value()), map, |
3172 | 295 | ideal_buffer_size, static_cast<MirPixelFormat>(protobuf_bs->pixel_format()), | 295 | ideal_buffer_size, static_cast<MirPixelFormat>(protobuf_bs->pixel_format()), |
3173 | 296 | protobuf_bs->buffer_usage(), nbuffers); | 296 | protobuf_bs->buffer_usage(), nbuffers); |
3174 | 297 | 297 | ||
3175 | 298 | egl_native_window_ = client_platform->create_egl_native_window(this); | 298 | egl_native_window_ = client_platform->create_egl_native_window(this); |
3176 | @@ -478,7 +478,7 @@ | |||
3177 | 478 | if (attrib != mir_surface_attrib_swapinterval) | 478 | if (attrib != mir_surface_attrib_swapinterval) |
3178 | 479 | { | 479 | { |
3179 | 480 | BOOST_THROW_EXCEPTION(std::logic_error("Attempt to configure surface attribute " + std::to_string(attrib) + | 480 | BOOST_THROW_EXCEPTION(std::logic_error("Attempt to configure surface attribute " + std::to_string(attrib) + |
3181 | 481 | " on BufferStream but only mir_surface_attrib_swapinterval is supported")); | 481 | " on BufferStream but only mir_surface_attrib_swapinterval is supported")); |
3182 | 482 | } | 482 | } |
3183 | 483 | 483 | ||
3184 | 484 | auto i = interval; | 484 | auto i = interval; |
3185 | @@ -559,7 +559,7 @@ | |||
3186 | 559 | void mcl::BufferStream::buffer_unavailable() | 559 | void mcl::BufferStream::buffer_unavailable() |
3187 | 560 | { | 560 | { |
3188 | 561 | std::unique_lock<decltype(mutex)> lock(mutex); | 561 | std::unique_lock<decltype(mutex)> lock(mutex); |
3190 | 562 | buffer_depository->lost_connection(); | 562 | buffer_depository->lost_connection(); |
3191 | 563 | } | 563 | } |
3192 | 564 | 564 | ||
3193 | 565 | void mcl::BufferStream::set_size(geom::Size sz) | 565 | void mcl::BufferStream::set_size(geom::Size sz) |
3194 | 566 | 566 | ||
3195 | === modified file 'src/client/buffer_vault.cpp' | |||
3196 | --- src/client/buffer_vault.cpp 2016-10-12 06:03:15 +0000 | |||
3197 | +++ src/client/buffer_vault.cpp 2016-10-27 03:52:22 +0000 | |||
3198 | @@ -91,7 +91,7 @@ | |||
3199 | 91 | { | 91 | { |
3200 | 92 | auto buffer = map->buffer(it.first); | 92 | auto buffer = map->buffer(it.first); |
3201 | 93 | buffer->set_callback(ignore_buffer, nullptr); | 93 | buffer->set_callback(ignore_buffer, nullptr); |
3203 | 94 | } | 94 | } |
3204 | 95 | free_buffer(it.first); | 95 | free_buffer(it.first); |
3205 | 96 | } | 96 | } |
3206 | 97 | catch (...) | 97 | catch (...) |
3207 | @@ -122,7 +122,7 @@ | |||
3208 | 122 | auto map = surface_map.lock(); | 122 | auto map = surface_map.lock(); |
3209 | 123 | if (!map) | 123 | if (!map) |
3210 | 124 | BOOST_THROW_EXCEPTION(std::logic_error("connection resources lost; cannot access buffer")); | 124 | BOOST_THROW_EXCEPTION(std::logic_error("connection resources lost; cannot access buffer")); |
3212 | 125 | 125 | ||
3213 | 126 | if (auto buffer = map->buffer(id)) | 126 | if (auto buffer = map->buffer(id)) |
3214 | 127 | return buffer; | 127 | return buffer; |
3215 | 128 | else | 128 | else |
3216 | @@ -155,7 +155,7 @@ | |||
3217 | 155 | for (auto it = buffers.begin(); it != buffers.end();) | 155 | for (auto it = buffers.begin(); it != buffers.end();) |
3218 | 156 | { | 156 | { |
3219 | 157 | auto buffer = checked_buffer_from_map(it->first); | 157 | auto buffer = checked_buffer_from_map(it->first); |
3221 | 158 | if ((it->second == Owner::Self) && (buffer->size() != size)) | 158 | if ((it->second == Owner::Self) && (buffer->size() != size)) |
3222 | 159 | { | 159 | { |
3223 | 160 | current_buffer_count--; | 160 | current_buffer_count--; |
3224 | 161 | free_ids.push_back(it->first); | 161 | free_ids.push_back(it->first); |
3225 | @@ -165,7 +165,7 @@ | |||
3226 | 165 | { | 165 | { |
3227 | 166 | it++; | 166 | it++; |
3228 | 167 | } | 167 | } |
3230 | 168 | } | 168 | } |
3231 | 169 | 169 | ||
3232 | 170 | mcl::NoTLSPromise<std::shared_ptr<mcl::MirBuffer>> promise; | 170 | mcl::NoTLSPromise<std::shared_ptr<mcl::MirBuffer>> promise; |
3233 | 171 | auto it = available_buffer(); | 171 | auto it = available_buffer(); |
3234 | 172 | 172 | ||
3235 | === modified file 'src/client/client_buffer_stream.h' | |||
3236 | --- src/client/client_buffer_stream.h 2016-10-11 18:59:08 +0000 | |||
3237 | +++ src/client/client_buffer_stream.h 2016-10-27 03:52:22 +0000 | |||
3238 | @@ -87,7 +87,7 @@ | |||
3239 | 87 | virtual MirPlatformType platform_type() = 0; | 87 | virtual MirPlatformType platform_type() = 0; |
3240 | 88 | 88 | ||
3241 | 89 | virtual frontend::BufferStreamId rpc_id() const = 0; | 89 | virtual frontend::BufferStreamId rpc_id() const = 0; |
3243 | 90 | 90 | ||
3244 | 91 | virtual bool valid() const = 0; | 91 | virtual bool valid() const = 0; |
3245 | 92 | virtual void set_size(geometry::Size) = 0; | 92 | virtual void set_size(geometry::Size) = 0; |
3246 | 93 | virtual MirWaitHandle* set_scale(float) = 0; | 93 | virtual MirWaitHandle* set_scale(float) = 0; |
3247 | 94 | 94 | ||
3248 | === modified file 'src/client/connection_surface_map.cpp' | |||
3249 | --- src/client/connection_surface_map.cpp 2016-10-13 16:32:59 +0000 | |||
3250 | +++ src/client/connection_surface_map.cpp 2016-10-27 03:52:22 +0000 | |||
3251 | @@ -94,7 +94,7 @@ | |||
3252 | 94 | mf::BufferStreamId stream_id, std::shared_ptr<MirPresentationChain> const& chain) | 94 | mf::BufferStreamId stream_id, std::shared_ptr<MirPresentationChain> const& chain) |
3253 | 95 | { | 95 | { |
3254 | 96 | std::lock_guard<decltype(stream_guard)> lk(stream_guard); | 96 | std::lock_guard<decltype(stream_guard)> lk(stream_guard); |
3256 | 97 | chains[stream_id] = chain; | 97 | chains[stream_id] = chain; |
3257 | 98 | } | 98 | } |
3258 | 99 | 99 | ||
3259 | 100 | void mcl::ConnectionSurfaceMap::erase(mf::BufferStreamId stream_id) | 100 | void mcl::ConnectionSurfaceMap::erase(mf::BufferStreamId stream_id) |
3260 | 101 | 101 | ||
3261 | === modified file 'src/client/cursor_configuration.h' | |||
3262 | --- src/client/cursor_configuration.h 2015-04-28 07:54:10 +0000 | |||
3263 | +++ src/client/cursor_configuration.h 2016-10-27 03:52:22 +0000 | |||
3264 | @@ -29,9 +29,9 @@ | |||
3265 | 29 | } | 29 | } |
3266 | 30 | } | 30 | } |
3267 | 31 | 31 | ||
3269 | 32 | // Parameters for configuring the apperance and behavior of the system cursor. | 32 | // Parameters for configuring the apperance and behavior of the system cursor. |
3270 | 33 | // Will grow to include cursors specified by raw RGBA data, hotspots, etc... | 33 | // Will grow to include cursors specified by raw RGBA data, hotspots, etc... |
3272 | 34 | struct MirCursorConfiguration | 34 | struct MirCursorConfiguration |
3273 | 35 | { | 35 | { |
3274 | 36 | MirCursorConfiguration(char const* name); | 36 | MirCursorConfiguration(char const* name); |
3275 | 37 | MirCursorConfiguration(mir::client::ClientBufferStream const* stream, int hotspot_x, int hotspot_y); | 37 | MirCursorConfiguration(mir::client::ClientBufferStream const* stream, int hotspot_x, int hotspot_y); |
3276 | 38 | 38 | ||
3277 | === modified file 'src/client/event.cpp' | |||
3278 | --- src/client/event.cpp 2016-10-12 06:03:15 +0000 | |||
3279 | +++ src/client/event.cpp 2016-10-27 03:52:22 +0000 | |||
3280 | @@ -115,21 +115,21 @@ | |||
3281 | 115 | MirSurfaceEvent const* mir_event_get_surface_event(MirEvent const* ev) | 115 | MirSurfaceEvent const* mir_event_get_surface_event(MirEvent const* ev) |
3282 | 116 | { | 116 | { |
3283 | 117 | expect_event_type(ev, mir_event_type_surface); | 117 | expect_event_type(ev, mir_event_type_surface); |
3285 | 118 | 118 | ||
3286 | 119 | return ev->to_surface(); | 119 | return ev->to_surface(); |
3287 | 120 | } | 120 | } |
3288 | 121 | 121 | ||
3289 | 122 | MirResizeEvent const* mir_event_get_resize_event(MirEvent const* ev) | 122 | MirResizeEvent const* mir_event_get_resize_event(MirEvent const* ev) |
3290 | 123 | { | 123 | { |
3291 | 124 | expect_event_type(ev, mir_event_type_resize); | 124 | expect_event_type(ev, mir_event_type_resize); |
3293 | 125 | 125 | ||
3294 | 126 | return ev->to_resize(); | 126 | return ev->to_resize(); |
3295 | 127 | } | 127 | } |
3296 | 128 | 128 | ||
3297 | 129 | MirPromptSessionEvent const* mir_event_get_prompt_session_event(MirEvent const* ev) | 129 | MirPromptSessionEvent const* mir_event_get_prompt_session_event(MirEvent const* ev) |
3298 | 130 | { | 130 | { |
3299 | 131 | expect_event_type(ev, mir_event_type_prompt_session_state_change); | 131 | expect_event_type(ev, mir_event_type_prompt_session_state_change); |
3301 | 132 | 132 | ||
3302 | 133 | return ev->to_prompt_session(); | 133 | return ev->to_prompt_session(); |
3303 | 134 | } | 134 | } |
3304 | 135 | 135 | ||
3305 | 136 | 136 | ||
3306 | === modified file 'src/client/event_printer.cpp' | |||
3307 | --- src/client/event_printer.cpp 2016-10-12 06:03:15 +0000 | |||
3308 | +++ src/client/event_printer.cpp 2016-10-27 03:52:22 +0000 | |||
3309 | @@ -345,7 +345,7 @@ | |||
3310 | 345 | 345 | ||
3311 | 346 | for (size_t size = mir_input_device_state_event_device_count(&event), index = 0; index != size; ++index) | 346 | for (size_t size = mir_input_device_state_event_device_count(&event), index = 0; index != size; ++index) |
3312 | 347 | { | 347 | { |
3314 | 348 | out << mir_input_device_state_event_device_id(&event, index) | 348 | out << mir_input_device_state_event_device_id(&event, index) |
3315 | 349 | << " btns=" << mir_input_device_state_event_device_pointer_buttons(&event, index) | 349 | << " btns=" << mir_input_device_state_event_device_pointer_buttons(&event, index) |
3316 | 350 | << " pressed=("; | 350 | << " pressed=("; |
3317 | 351 | auto key_count = mir_input_device_state_event_device_pressed_keys_count(&event, index); | 351 | auto key_count = mir_input_device_state_event_device_pressed_keys_count(&event, index); |
3318 | 352 | 352 | ||
3319 | === modified file 'src/client/events/event_builders.cpp' | |||
3320 | --- src/client/events/event_builders.cpp 2016-10-13 16:23:04 +0000 | |||
3321 | +++ src/client/events/event_builders.cpp 2016-10-27 03:52:22 +0000 | |||
3322 | @@ -160,7 +160,7 @@ | |||
3323 | 160 | namespace | 160 | namespace |
3324 | 161 | { | 161 | { |
3325 | 162 | // Never exposed in old event, so lets avoid leaking it in to a header now. | 162 | // Never exposed in old event, so lets avoid leaking it in to a header now. |
3327 | 163 | enum | 163 | enum |
3328 | 164 | { | 164 | { |
3329 | 165 | AINPUT_SOURCE_CLASS_MASK = 0x000000ff, | 165 | AINPUT_SOURCE_CLASS_MASK = 0x000000ff, |
3330 | 166 | 166 | ||
3331 | @@ -170,7 +170,7 @@ | |||
3332 | 170 | AINPUT_SOURCE_CLASS_POSITION = 0x00000008, | 170 | AINPUT_SOURCE_CLASS_POSITION = 0x00000008, |
3333 | 171 | AINPUT_SOURCE_CLASS_JOYSTICK = 0x00000010 | 171 | AINPUT_SOURCE_CLASS_JOYSTICK = 0x00000010 |
3334 | 172 | }; | 172 | }; |
3336 | 173 | enum | 173 | enum |
3337 | 174 | { | 174 | { |
3338 | 175 | AINPUT_SOURCE_UNKNOWN = 0x00000000, | 175 | AINPUT_SOURCE_UNKNOWN = 0x00000000, |
3339 | 176 | 176 | ||
3340 | @@ -325,7 +325,7 @@ | |||
3341 | 325 | 325 | ||
3342 | 326 | mir::EventUPtr mev::make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp, | 326 | mir::EventUPtr mev::make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp, |
3343 | 327 | std::vector<uint8_t> const& cookie, MirInputEventModifiers modifiers, MirPointerAction action, | 327 | std::vector<uint8_t> const& cookie, MirInputEventModifiers modifiers, MirPointerAction action, |
3345 | 328 | MirPointerButtons buttons_pressed, | 328 | MirPointerButtons buttons_pressed, |
3346 | 329 | float x_axis_value, float y_axis_value, | 329 | float x_axis_value, float y_axis_value, |
3347 | 330 | float hscroll_value, float vscroll_value, | 330 | float hscroll_value, float vscroll_value, |
3348 | 331 | float relative_x_value, float relative_y_value) | 331 | float relative_x_value, float relative_y_value) |
3349 | @@ -355,7 +355,7 @@ | |||
3350 | 355 | // Deprecated version with uint64_t mac | 355 | // Deprecated version with uint64_t mac |
3351 | 356 | mir::EventUPtr mev::make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp, | 356 | mir::EventUPtr mev::make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp, |
3352 | 357 | uint64_t /*mac*/, MirInputEventModifiers modifiers, MirPointerAction action, | 357 | uint64_t /*mac*/, MirInputEventModifiers modifiers, MirPointerAction action, |
3354 | 358 | MirPointerButtons buttons_pressed, | 358 | MirPointerButtons buttons_pressed, |
3355 | 359 | float x_axis_value, float y_axis_value, | 359 | float x_axis_value, float y_axis_value, |
3356 | 360 | float hscroll_value, float vscroll_value, | 360 | float hscroll_value, float vscroll_value, |
3357 | 361 | float relative_x_value, float relative_y_value) | 361 | float relative_x_value, float relative_y_value) |
3358 | @@ -381,7 +381,7 @@ | |||
3359 | 381 | // Deprecated version without relative axis | 381 | // Deprecated version without relative axis |
3360 | 382 | mir::EventUPtr mev::make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp, | 382 | mir::EventUPtr mev::make_event(MirInputDeviceId device_id, std::chrono::nanoseconds timestamp, |
3361 | 383 | uint64_t /*mac*/, MirInputEventModifiers modifiers, MirPointerAction action, | 383 | uint64_t /*mac*/, MirInputEventModifiers modifiers, MirPointerAction action, |
3363 | 384 | MirPointerButtons buttons_pressed, | 384 | MirPointerButtons buttons_pressed, |
3364 | 385 | float x_axis_value, float y_axis_value, | 385 | float x_axis_value, float y_axis_value, |
3365 | 386 | float hscroll_value, float vscroll_value) | 386 | float hscroll_value, float vscroll_value) |
3366 | 387 | { | 387 | { |
3367 | 388 | 388 | ||
3368 | === modified file 'src/client/input/android/event_conversion_helpers.cpp' | |||
3369 | --- src/client/input/android/event_conversion_helpers.cpp 2016-07-18 07:38:38 +0000 | |||
3370 | +++ src/client/input/android/event_conversion_helpers.cpp 2016-10-27 03:52:22 +0000 | |||
3371 | @@ -78,7 +78,7 @@ | |||
3372 | 78 | { | 78 | { |
3373 | 79 | if (repeat_count > 0) | 79 | if (repeat_count > 0) |
3374 | 80 | return mir_keyboard_action_repeat; | 80 | return mir_keyboard_action_repeat; |
3376 | 81 | 81 | ||
3377 | 82 | switch (android_action) | 82 | switch (android_action) |
3378 | 83 | { | 83 | { |
3379 | 84 | case AKEY_EVENT_ACTION_DOWN: | 84 | case AKEY_EVENT_ACTION_DOWN: |
3380 | @@ -211,7 +211,7 @@ | |||
3381 | 211 | } | 211 | } |
3382 | 212 | if (index_with_action < 0) | 212 | if (index_with_action < 0) |
3383 | 213 | return AMOTION_EVENT_ACTION_MOVE; | 213 | return AMOTION_EVENT_ACTION_MOVE; |
3385 | 214 | 214 | ||
3386 | 215 | int masked_action = AMOTION_EVENT_ACTION_MASK; | 215 | int masked_action = AMOTION_EVENT_ACTION_MASK; |
3387 | 216 | switch (mev.action(index_with_action)) | 216 | switch (mev.action(index_with_action)) |
3388 | 217 | { | 217 | { |
3389 | 218 | 218 | ||
3390 | === modified file 'src/client/input/input_event.cpp' | |||
3391 | --- src/client/input/input_event.cpp 2016-08-09 08:13:02 +0000 | |||
3392 | +++ src/client/input/input_event.cpp 2016-10-27 03:52:22 +0000 | |||
3393 | @@ -47,7 +47,7 @@ | |||
3394 | 47 | } | 47 | } |
3395 | 48 | 48 | ||
3396 | 49 | // Never exposed in old event, so lets avoid leaking it in to a header now. | 49 | // Never exposed in old event, so lets avoid leaking it in to a header now. |
3398 | 50 | enum | 50 | enum |
3399 | 51 | { | 51 | { |
3400 | 52 | AINPUT_SOURCE_CLASS_MASK = 0x000000ff, | 52 | AINPUT_SOURCE_CLASS_MASK = 0x000000ff, |
3401 | 53 | 53 | ||
3402 | @@ -57,7 +57,7 @@ | |||
3403 | 57 | AINPUT_SOURCE_CLASS_POSITION = 0x00000008, | 57 | AINPUT_SOURCE_CLASS_POSITION = 0x00000008, |
3404 | 58 | AINPUT_SOURCE_CLASS_JOYSTICK = 0x00000010 | 58 | AINPUT_SOURCE_CLASS_JOYSTICK = 0x00000010 |
3405 | 59 | }; | 59 | }; |
3407 | 60 | enum | 60 | enum |
3408 | 61 | { | 61 | { |
3409 | 62 | AINPUT_SOURCE_UNKNOWN = 0x00000000, | 62 | AINPUT_SOURCE_UNKNOWN = 0x00000000, |
3410 | 63 | 63 | ||
3411 | @@ -173,7 +173,7 @@ | |||
3412 | 173 | input_event_type_to_string(mir_input_event_get_type(ev))); | 173 | input_event_type_to_string(mir_input_event_get_type(ev))); |
3413 | 174 | abort(); | 174 | abort(); |
3414 | 175 | } | 175 | } |
3416 | 176 | 176 | ||
3417 | 177 | return reinterpret_cast<MirKeyboardEvent const*>(ev); | 177 | return reinterpret_cast<MirKeyboardEvent const*>(ev); |
3418 | 178 | } | 178 | } |
3419 | 179 | 179 | ||
3420 | @@ -193,13 +193,13 @@ | |||
3421 | 193 | } | 193 | } |
3422 | 194 | 194 | ||
3423 | 195 | MirInputEventModifiers mir_keyboard_event_modifiers(MirKeyboardEvent const* kev) | 195 | MirInputEventModifiers mir_keyboard_event_modifiers(MirKeyboardEvent const* kev) |
3425 | 196 | { | 196 | { |
3426 | 197 | return kev->modifiers(); | 197 | return kev->modifiers(); |
3427 | 198 | } | 198 | } |
3428 | 199 | /* Touch event accessors */ | 199 | /* Touch event accessors */ |
3429 | 200 | 200 | ||
3430 | 201 | MirInputEventModifiers mir_touch_event_modifiers(MirTouchEvent const* tev) | 201 | MirInputEventModifiers mir_touch_event_modifiers(MirTouchEvent const* tev) |
3432 | 202 | { | 202 | { |
3433 | 203 | return tev->to_motion()->modifiers(); | 203 | return tev->to_motion()->modifiers(); |
3434 | 204 | } | 204 | } |
3435 | 205 | 205 | ||
3436 | @@ -238,7 +238,7 @@ | |||
3437 | 238 | mir::log_critical("touch index is greater than pointer count"); | 238 | mir::log_critical("touch index is greater than pointer count"); |
3438 | 239 | abort(); | 239 | abort(); |
3439 | 240 | } | 240 | } |
3441 | 241 | 241 | ||
3442 | 242 | return static_cast<MirTouchAction>(event->to_motion()->action(touch_index)); | 242 | return static_cast<MirTouchAction>(event->to_motion()->action(touch_index)); |
3443 | 243 | } | 243 | } |
3444 | 244 | 244 | ||
3445 | @@ -281,7 +281,7 @@ | |||
3446 | 281 | default: | 281 | default: |
3447 | 282 | return -1; | 282 | return -1; |
3448 | 283 | } | 283 | } |
3450 | 284 | } | 284 | } |
3451 | 285 | 285 | ||
3452 | 286 | /* Pointer event accessors */ | 286 | /* Pointer event accessors */ |
3453 | 287 | 287 | ||
3454 | @@ -298,12 +298,12 @@ | |||
3455 | 298 | } | 298 | } |
3456 | 299 | 299 | ||
3457 | 300 | MirInputEventModifiers mir_pointer_event_modifiers(MirPointerEvent const* pev) | 300 | MirInputEventModifiers mir_pointer_event_modifiers(MirPointerEvent const* pev) |
3459 | 301 | { | 301 | { |
3460 | 302 | return pev->to_motion()->modifiers(); | 302 | return pev->to_motion()->modifiers(); |
3461 | 303 | } | 303 | } |
3462 | 304 | 304 | ||
3463 | 305 | MirPointerAction mir_pointer_event_action(MirPointerEvent const* pev) | 305 | MirPointerAction mir_pointer_event_action(MirPointerEvent const* pev) |
3465 | 306 | { | 306 | { |
3466 | 307 | return static_cast<MirPointerAction>(pev->to_motion()->action(0)); | 307 | return static_cast<MirPointerAction>(pev->to_motion()->action(0)); |
3467 | 308 | } | 308 | } |
3468 | 309 | 309 | ||
3469 | 310 | 310 | ||
3470 | === modified file 'src/client/lttng/CMakeLists.txt' | |||
3471 | --- src/client/lttng/CMakeLists.txt 2016-07-18 07:38:38 +0000 | |||
3472 | +++ src/client/lttng/CMakeLists.txt 2016-10-27 03:52:22 +0000 | |||
3473 | @@ -15,7 +15,7 @@ | |||
3474 | 15 | string(REPLACE "-flto" "" NO_LTO_FLAGS ${CMAKE_C_FLAGS}) | 15 | string(REPLACE "-flto" "" NO_LTO_FLAGS ${CMAKE_C_FLAGS}) |
3475 | 16 | set(CMAKE_C_FLAGS ${NO_LTO_FLAGS}) | 16 | set(CMAKE_C_FLAGS ${NO_LTO_FLAGS}) |
3476 | 17 | 17 | ||
3478 | 18 | # lttng-ust uses urcu headers which contain code blocks inside expressions | 18 | # lttng-ust uses urcu headers which contain code blocks inside expressions |
3479 | 19 | # this is a gnu extension. | 19 | # this is a gnu extension. |
3480 | 20 | string(REPLACE "-pedantic" "" NO_PEDANTIC_CHECK_FLAGS ${CMAKE_CXX_FLAGS}) | 20 | string(REPLACE "-pedantic" "" NO_PEDANTIC_CHECK_FLAGS ${CMAKE_CXX_FLAGS}) |
3481 | 21 | if("${CMAKE_CXX_COMPILER}" MATCHES "clang") | 21 | if("${CMAKE_CXX_COMPILER}" MATCHES "clang") |
3482 | 22 | 22 | ||
3483 | === modified file 'src/client/lttng/input_receiver_report.cpp' | |||
3484 | --- src/client/lttng/input_receiver_report.cpp 2015-04-28 07:54:10 +0000 | |||
3485 | +++ src/client/lttng/input_receiver_report.cpp 2016-10-27 03:52:22 +0000 | |||
3486 | @@ -62,8 +62,8 @@ | |||
3487 | 62 | void mir::client::lttng::InputReceiverReport::report_touch(MirInputEvent const* event) const | 62 | void mir::client::lttng::InputReceiverReport::report_touch(MirInputEvent const* event) const |
3488 | 63 | { | 63 | { |
3489 | 64 | auto tev = mir_input_event_get_touch_event(event); | 64 | auto tev = mir_input_event_get_touch_event(event); |
3492 | 65 | 65 | ||
3493 | 66 | mir_tracepoint(mir_client_input_receiver, touch_event, mir_input_event_get_device_id(event), | 66 | mir_tracepoint(mir_client_input_receiver, touch_event, mir_input_event_get_device_id(event), |
3494 | 67 | mir_touch_event_modifiers(tev), mir_input_event_get_event_time(event)); | 67 | mir_touch_event_modifiers(tev), mir_input_event_get_event_time(event)); |
3495 | 68 | 68 | ||
3496 | 69 | for (unsigned int i = 0; i < mir_touch_event_point_count(tev); i++) | 69 | for (unsigned int i = 0; i < mir_touch_event_point_count(tev); i++) |
3497 | 70 | 70 | ||
3498 | === modified file 'src/client/lttng/input_receiver_report.h' | |||
3499 | --- src/client/lttng/input_receiver_report.h 2015-04-28 07:54:10 +0000 | |||
3500 | +++ src/client/lttng/input_receiver_report.h 2016-10-27 03:52:22 +0000 | |||
3501 | @@ -36,7 +36,7 @@ | |||
3502 | 36 | private: | 36 | private: |
3503 | 37 | void report_touch(MirInputEvent const* event) const; | 37 | void report_touch(MirInputEvent const* event) const; |
3504 | 38 | void report_key(MirInputEvent const* event) const; | 38 | void report_key(MirInputEvent const* event) const; |
3506 | 39 | 39 | ||
3507 | 40 | ClientTracepointProvider tp_provider; | 40 | ClientTracepointProvider tp_provider; |
3508 | 41 | }; | 41 | }; |
3509 | 42 | 42 | ||
3510 | 43 | 43 | ||
3511 | === modified file 'src/client/mir_buffer_api.cpp' | |||
3512 | --- src/client/mir_buffer_api.cpp 2016-10-12 06:03:15 +0000 | |||
3513 | +++ src/client/mir_buffer_api.cpp 2016-10-27 03:52:22 +0000 | |||
3514 | @@ -34,7 +34,7 @@ | |||
3515 | 34 | 34 | ||
3516 | 35 | //private NBS api under development | 35 | //private NBS api under development |
3517 | 36 | void mir_connection_allocate_buffer( | 36 | void mir_connection_allocate_buffer( |
3519 | 37 | MirConnection* connection, | 37 | MirConnection* connection, |
3520 | 38 | int width, int height, | 38 | int width, int height, |
3521 | 39 | MirPixelFormat format, | 39 | MirPixelFormat format, |
3522 | 40 | MirBufferUsage usage, | 40 | MirBufferUsage usage, |
3523 | @@ -50,7 +50,7 @@ | |||
3524 | 50 | } | 50 | } |
3525 | 51 | 51 | ||
3526 | 52 | void ignore(MirBuffer*, void*){} | 52 | void ignore(MirBuffer*, void*){} |
3528 | 53 | void mir_buffer_release(MirBuffer* b) | 53 | void mir_buffer_release(MirBuffer* b) |
3529 | 54 | try | 54 | try |
3530 | 55 | { | 55 | { |
3531 | 56 | mir::require(b); | 56 | mir::require(b); |
3532 | @@ -94,7 +94,7 @@ | |||
3533 | 94 | { | 94 | { |
3534 | 95 | mir::require(b); | 95 | mir::require(b); |
3535 | 96 | auto buffer = reinterpret_cast<mcl::MirBuffer*>(b); | 96 | auto buffer = reinterpret_cast<mcl::MirBuffer*>(b); |
3537 | 97 | 97 | ||
3538 | 98 | return buffer->wait_fence(access, std::chrono::nanoseconds(timeout)) ? 0 : -1; | 98 | return buffer->wait_fence(access, std::chrono::nanoseconds(timeout)) ? 0 : -1; |
3539 | 99 | } | 99 | } |
3540 | 100 | catch (std::exception const& ex) | 100 | catch (std::exception const& ex) |
3541 | 101 | 101 | ||
3542 | === modified file 'src/client/mir_connection.cpp' | |||
3543 | --- src/client/mir_connection.cpp 2016-10-21 09:20:55 +0000 | |||
3544 | +++ src/client/mir_connection.cpp 2016-10-27 03:52:22 +0000 | |||
3545 | @@ -336,7 +336,7 @@ | |||
3546 | 336 | surface_requests.emplace_back(c); | 336 | surface_requests.emplace_back(c); |
3547 | 337 | } | 337 | } |
3548 | 338 | 338 | ||
3550 | 339 | try | 339 | try |
3551 | 340 | { | 340 | { |
3552 | 341 | server.create_surface(&message, c->response.get(), | 341 | server.create_surface(&message, c->response.get(), |
3553 | 342 | gp::NewCallback(this, &MirConnection::surface_created, c.get())); | 342 | gp::NewCallback(this, &MirConnection::surface_created, c.get())); |
3554 | @@ -377,7 +377,7 @@ | |||
3555 | 377 | if (request_it == surface_requests.end()) | 377 | if (request_it == surface_requests.end()) |
3556 | 378 | return; | 378 | return; |
3557 | 379 | 379 | ||
3559 | 380 | auto surface_proto = request->response; | 380 | auto surface_proto = request->response; |
3560 | 381 | auto callback = request->cb; | 381 | auto callback = request->cb; |
3561 | 382 | auto context = request->context; | 382 | auto context = request->context; |
3562 | 383 | auto const& spec = request->spec; | 383 | auto const& spec = request->spec; |
3563 | @@ -414,7 +414,7 @@ | |||
3564 | 414 | reason += surface_proto->error(); | 414 | reason += surface_proto->error(); |
3565 | 415 | if (surface_proto->has_error() && !surface_proto->has_id()) | 415 | if (surface_proto->has_error() && !surface_proto->has_id()) |
3566 | 416 | reason += " and "; | 416 | reason += " and "; |
3568 | 417 | if (!surface_proto->has_id()) | 417 | if (!surface_proto->has_id()) |
3569 | 418 | reason += "Server assigned surface no id"; | 418 | reason += "Server assigned surface no id"; |
3570 | 419 | auto id = next_error_id(lock); | 419 | auto id = next_error_id(lock); |
3571 | 420 | surf = std::make_shared<MirSurface>(reason, this, id, request->wh); | 420 | surf = std::make_shared<MirSurface>(reason, this, id, request->wh); |
3572 | @@ -505,7 +505,7 @@ | |||
3573 | 505 | callback(surface, context); | 505 | callback(surface, context); |
3574 | 506 | auto id = surface->id(); | 506 | auto id = surface->id(); |
3575 | 507 | surface_map->erase(mf::SurfaceId(id)); | 507 | surface_map->erase(mf::SurfaceId(id)); |
3577 | 508 | return new_wait_handle; | 508 | return new_wait_handle; |
3578 | 509 | } | 509 | } |
3579 | 510 | 510 | ||
3580 | 511 | SurfaceRelease surf_release{surface, new_wait_handle, callback, context}; | 511 | SurfaceRelease surf_release{surface, new_wait_handle, callback, context}; |
3581 | @@ -1245,7 +1245,7 @@ | |||
3582 | 1245 | std::unique_lock<decltype(mutex)> lock(mutex); | 1245 | std::unique_lock<decltype(mutex)> lock(mutex); |
3583 | 1246 | mf::BufferStreamId id(next_error_id(lock).as_value()); | 1246 | mf::BufferStreamId id(next_error_id(lock).as_value()); |
3584 | 1247 | auto chain = std::make_shared<mcl::ErrorChain>(this, id.as_value(), error_msg); | 1247 | auto chain = std::make_shared<mcl::ErrorChain>(this, id.as_value(), error_msg); |
3586 | 1248 | surface_map->insert(id, chain); | 1248 | surface_map->insert(id, chain); |
3587 | 1249 | 1249 | ||
3588 | 1250 | if (request->callback) | 1250 | if (request->callback) |
3589 | 1251 | request->callback(static_cast<MirPresentationChain*>(chain.get()), request->context); | 1251 | request->callback(static_cast<MirPresentationChain*>(chain.get()), request->context); |
3590 | 1252 | 1252 | ||
3591 | === modified file 'src/client/mir_connection.h' | |||
3592 | --- src/client/mir_connection.h 2016-10-13 16:32:59 +0000 | |||
3593 | +++ src/client/mir_connection.h 2016-10-27 03:52:22 +0000 | |||
3594 | @@ -337,7 +337,6 @@ | |||
3595 | 337 | std::unique_ptr<google::protobuf::Closure> const pong_callback; | 337 | std::unique_ptr<google::protobuf::Closure> const pong_callback; |
3596 | 338 | 338 | ||
3597 | 339 | std::unique_ptr<mir::dispatch::ThreadedDispatcher> const eventloop; | 339 | std::unique_ptr<mir::dispatch::ThreadedDispatcher> const eventloop; |
3598 | 340 | |||
3599 | 341 | 340 | ||
3600 | 342 | struct SurfaceRelease; | 341 | struct SurfaceRelease; |
3601 | 343 | struct StreamRelease; | 342 | struct StreamRelease; |
3602 | 344 | 343 | ||
3603 | === modified file 'src/client/mir_cursor_api.cpp' | |||
3604 | --- src/client/mir_cursor_api.cpp 2016-10-12 10:12:15 +0000 | |||
3605 | +++ src/client/mir_cursor_api.cpp 2016-10-27 03:52:22 +0000 | |||
3606 | @@ -47,7 +47,7 @@ | |||
3607 | 47 | 47 | ||
3608 | 48 | MirCursorConfiguration::MirCursorConfiguration(char const* name) : | 48 | MirCursorConfiguration::MirCursorConfiguration(char const* name) : |
3609 | 49 | name{name ? name : std::string()}, | 49 | name{name ? name : std::string()}, |
3611 | 50 | stream(nullptr) | 50 | stream(nullptr) |
3612 | 51 | { | 51 | { |
3613 | 52 | } | 52 | } |
3614 | 53 | 53 | ||
3615 | @@ -65,7 +65,7 @@ | |||
3616 | 65 | 65 | ||
3617 | 66 | MirCursorConfiguration* mir_cursor_configuration_from_name(char const* name) | 66 | MirCursorConfiguration* mir_cursor_configuration_from_name(char const* name) |
3618 | 67 | { | 67 | { |
3620 | 68 | try | 68 | try |
3621 | 69 | { | 69 | { |
3622 | 70 | return new MirCursorConfiguration(name); | 70 | return new MirCursorConfiguration(name); |
3623 | 71 | } | 71 | } |
3624 | @@ -79,7 +79,7 @@ | |||
3625 | 79 | MirCursorConfiguration* mir_cursor_configuration_from_buffer_stream(MirBufferStream const* stream, int hotspot_x, | 79 | MirCursorConfiguration* mir_cursor_configuration_from_buffer_stream(MirBufferStream const* stream, int hotspot_x, |
3626 | 80 | int hotspot_y) | 80 | int hotspot_y) |
3627 | 81 | { | 81 | { |
3629 | 82 | try | 82 | try |
3630 | 83 | { | 83 | { |
3631 | 84 | return new MirCursorConfiguration(reinterpret_cast<mcl::ClientBufferStream const*>(stream), hotspot_x, hotspot_y); | 84 | return new MirCursorConfiguration(reinterpret_cast<mcl::ClientBufferStream const*>(stream), hotspot_x, hotspot_y); |
3632 | 85 | } | 85 | } |
3633 | 86 | 86 | ||
3634 | === modified file 'src/client/mir_surface.cpp' | |||
3635 | --- src/client/mir_surface.cpp 2016-10-12 06:03:15 +0000 | |||
3636 | +++ src/client/mir_surface.cpp 2016-10-27 03:52:22 +0000 | |||
3637 | @@ -149,7 +149,7 @@ | |||
3638 | 149 | 149 | ||
3639 | 150 | if (surface_proto.fd_size() > 0 && handle_event_callback) | 150 | if (surface_proto.fd_size() > 0 && handle_event_callback) |
3640 | 151 | { | 151 | { |
3642 | 152 | input_thread = std::make_shared<md::ThreadedDispatcher>("Input dispatch", | 152 | input_thread = std::make_shared<md::ThreadedDispatcher>("Input dispatch", |
3643 | 153 | input_platform->create_input_receiver( surface_proto.fd(0), keymapper, handle_event_callback)); | 153 | input_platform->create_input_receiver( surface_proto.fd(0), keymapper, handle_event_callback)); |
3644 | 154 | } | 154 | } |
3645 | 155 | 155 | ||
3646 | @@ -271,11 +271,11 @@ | |||
3647 | 271 | } | 271 | } |
3648 | 272 | } | 272 | } |
3649 | 273 | } | 273 | } |
3651 | 274 | 274 | ||
3652 | 275 | configure_cursor_wait_handle.expect_result(); | 275 | configure_cursor_wait_handle.expect_result(); |
3653 | 276 | server->configure_cursor(&setting, void_response.get(), | 276 | server->configure_cursor(&setting, void_response.get(), |
3654 | 277 | google::protobuf::NewCallback(this, &MirSurface::on_cursor_configured)); | 277 | google::protobuf::NewCallback(this, &MirSurface::on_cursor_configured)); |
3656 | 278 | 278 | ||
3657 | 279 | return &configure_cursor_wait_handle; | 279 | return &configure_cursor_wait_handle; |
3658 | 280 | } | 280 | } |
3659 | 281 | 281 | ||
3660 | @@ -507,7 +507,7 @@ | |||
3661 | 507 | mir::client::ClientBufferStream* MirSurface::get_buffer_stream() | 507 | mir::client::ClientBufferStream* MirSurface::get_buffer_stream() |
3662 | 508 | { | 508 | { |
3663 | 509 | std::lock_guard<decltype(mutex)> lock(mutex); | 509 | std::lock_guard<decltype(mutex)> lock(mutex); |
3665 | 510 | 510 | ||
3666 | 511 | return default_stream.get(); | 511 | return default_stream.get(); |
3667 | 512 | } | 512 | } |
3668 | 513 | 513 | ||
3669 | 514 | 514 | ||
3670 | === modified file 'src/client/mir_surface.h' | |||
3671 | --- src/client/mir_surface.h 2016-10-21 07:53:23 +0000 | |||
3672 | +++ src/client/mir_surface.h 2016-10-27 03:52:22 +0000 | |||
3673 | @@ -181,7 +181,7 @@ | |||
3674 | 181 | // out into a separate class in the libmirclient-debug DSO. | 181 | // out into a separate class in the libmirclient-debug DSO. |
3675 | 182 | bool translate_to_screen_coordinates(int x, int y, | 182 | bool translate_to_screen_coordinates(int x, int y, |
3676 | 183 | int* screen_x, int* screen_y); | 183 | int* screen_x, int* screen_y); |
3678 | 184 | 184 | ||
3679 | 185 | // Non-blocking | 185 | // Non-blocking |
3680 | 186 | int attrib(MirSurfaceAttrib a) const; | 186 | int attrib(MirSurfaceAttrib a) const; |
3681 | 187 | 187 | ||
3682 | 188 | 188 | ||
3683 | === modified file 'src/client/mir_surface_api.cpp' | |||
3684 | --- src/client/mir_surface_api.cpp 2016-10-21 09:20:55 +0000 | |||
3685 | +++ src/client/mir_surface_api.cpp 2016-10-27 03:52:22 +0000 | |||
3686 | @@ -458,7 +458,7 @@ | |||
3687 | 458 | MirWaitHandle* mir_surface_configure_cursor(MirSurface* surface, MirCursorConfiguration const* cursor) | 458 | MirWaitHandle* mir_surface_configure_cursor(MirSurface* surface, MirCursorConfiguration const* cursor) |
3688 | 459 | { | 459 | { |
3689 | 460 | MirWaitHandle *result = nullptr; | 460 | MirWaitHandle *result = nullptr; |
3691 | 461 | 461 | ||
3692 | 462 | try | 462 | try |
3693 | 463 | { | 463 | { |
3694 | 464 | if (surface) | 464 | if (surface) |
3695 | @@ -601,7 +601,7 @@ | |||
3696 | 601 | if (spec->streams.is_set()) | 601 | if (spec->streams.is_set()) |
3697 | 602 | spec->streams.value().push_back(info); | 602 | spec->streams.value().push_back(info); |
3698 | 603 | else | 603 | else |
3700 | 604 | spec->streams = std::vector<ContentInfo>{info}; | 604 | spec->streams = std::vector<ContentInfo>{info}; |
3701 | 605 | } | 605 | } |
3702 | 606 | catch (std::exception const& ex) | 606 | catch (std::exception const& ex) |
3703 | 607 | { | 607 | { |
3704 | @@ -621,7 +621,7 @@ | |||
3705 | 621 | if (spec->streams.is_set()) | 621 | if (spec->streams.is_set()) |
3706 | 622 | spec->streams.value().push_back(info); | 622 | spec->streams.value().push_back(info); |
3707 | 623 | else | 623 | else |
3709 | 624 | spec->streams = std::vector<ContentInfo>{info}; | 624 | spec->streams = std::vector<ContentInfo>{info}; |
3710 | 625 | } | 625 | } |
3711 | 626 | catch (std::exception const& ex) | 626 | catch (std::exception const& ex) |
3712 | 627 | { | 627 | { |
3713 | 628 | 628 | ||
3714 | === modified file 'src/client/rpc/CMakeLists.txt' | |||
3715 | --- src/client/rpc/CMakeLists.txt 2016-08-01 07:24:32 +0000 | |||
3716 | +++ src/client/rpc/CMakeLists.txt 2016-10-27 03:52:22 +0000 | |||
3717 | @@ -1,4 +1,4 @@ | |||
3719 | 1 | add_library(mirclientrpc OBJECT | 1 | add_library(mirclientrpc OBJECT |
3720 | 2 | 2 | ||
3721 | 3 | mir_basic_rpc_channel.cpp | 3 | mir_basic_rpc_channel.cpp |
3722 | 4 | null_rpc_report.cpp | 4 | null_rpc_report.cpp |
3723 | 5 | 5 | ||
3724 | === modified file 'src/client/rpc/mir_protobuf_rpc_channel.cpp' | |||
3725 | --- src/client/rpc/mir_protobuf_rpc_channel.cpp 2016-10-12 06:03:15 +0000 | |||
3726 | +++ src/client/rpc/mir_protobuf_rpc_channel.cpp 2016-10-27 03:52:22 +0000 | |||
3727 | @@ -100,9 +100,9 @@ | |||
3728 | 100 | (*lifecycle_control)(mir_lifecycle_connection_lost); | 100 | (*lifecycle_control)(mir_lifecycle_connection_lost); |
3729 | 101 | } | 101 | } |
3730 | 102 | pending_calls.force_completion(); | 102 | pending_calls.force_completion(); |
3732 | 103 | //NB: once the old semantics are not around, this explicit call to notify | 103 | //NB: once the old semantics are not around, this explicit call to notify |
3733 | 104 | //the streams of disconnection shouldn't be needed. | 104 | //the streams of disconnection shouldn't be needed. |
3735 | 105 | if (auto map = surface_map.lock()) | 105 | if (auto map = surface_map.lock()) |
3736 | 106 | { | 106 | { |
3737 | 107 | map->with_all_streams_do( | 107 | map->with_all_streams_do( |
3738 | 108 | [](mcl::ClientBufferStream* receiver) { | 108 | [](mcl::ClientBufferStream* receiver) { |
3739 | @@ -324,7 +324,7 @@ | |||
3740 | 324 | receiver->buffer_available(seq.buffer_request().buffer()); | 324 | receiver->buffer_available(seq.buffer_request().buffer()); |
3741 | 325 | }); | 325 | }); |
3742 | 326 | } | 326 | } |
3744 | 327 | 327 | ||
3745 | 328 | else if (seq.buffer_request().has_operation()) | 328 | else if (seq.buffer_request().has_operation()) |
3746 | 329 | { | 329 | { |
3747 | 330 | auto stream_cmd = seq.buffer_request().operation(); | 330 | auto stream_cmd = seq.buffer_request().operation(); |
3748 | @@ -334,7 +334,7 @@ | |||
3749 | 334 | { | 334 | { |
3750 | 335 | case mp::BufferOperation::add: | 335 | case mp::BufferOperation::add: |
3751 | 336 | buffer = buffer_factory->generate_buffer(seq.buffer_request().buffer()); | 336 | buffer = buffer_factory->generate_buffer(seq.buffer_request().buffer()); |
3753 | 337 | map->insert(buffer_id, buffer); | 337 | map->insert(buffer_id, buffer); |
3754 | 338 | buffer->received(); | 338 | buffer->received(); |
3755 | 339 | break; | 339 | break; |
3756 | 340 | case mp::BufferOperation::update: | 340 | case mp::BufferOperation::update: |
3757 | 341 | 341 | ||
3758 | === modified file 'src/client/surface_map.h' | |||
3759 | --- src/client/surface_map.h 2016-07-18 07:38:38 +0000 | |||
3760 | +++ src/client/surface_map.h 2016-10-27 03:52:22 +0000 | |||
3761 | @@ -47,7 +47,7 @@ | |||
3762 | 47 | virtual void with_all_streams_do(std::function<void(ClientBufferStream*)> const&) const = 0; | 47 | virtual void with_all_streams_do(std::function<void(ClientBufferStream*)> const&) const = 0; |
3763 | 48 | virtual std::shared_ptr<MirBuffer> buffer(int buffer_id) const = 0; | 48 | virtual std::shared_ptr<MirBuffer> buffer(int buffer_id) const = 0; |
3764 | 49 | virtual void insert(int buffer_id, std::shared_ptr<MirBuffer> const& buffer) = 0; | 49 | virtual void insert(int buffer_id, std::shared_ptr<MirBuffer> const& buffer) = 0; |
3766 | 50 | virtual void erase(int buffer_id) = 0; | 50 | virtual void erase(int buffer_id) = 0; |
3767 | 51 | 51 | ||
3768 | 52 | protected: | 52 | protected: |
3769 | 53 | virtual ~SurfaceMap() = default; | 53 | virtual ~SurfaceMap() = default; |
3770 | 54 | 54 | ||
3771 | === modified file 'src/client/symbols-debug.map' | |||
3772 | --- src/client/symbols-debug.map 2015-06-17 05:20:42 +0000 | |||
3773 | +++ src/client/symbols-debug.map 2016-10-27 03:52:22 +0000 | |||
3774 | @@ -1,5 +1,5 @@ | |||
3775 | 1 | MIR_CLIENT_DEBUG_9 { | 1 | MIR_CLIENT_DEBUG_9 { |
3777 | 2 | global: | 2 | global: |
3778 | 3 | mir_debug_*; | 3 | mir_debug_*; |
3779 | 4 | local: *; | 4 | local: *; |
3780 | 5 | }; | 5 | }; |
3781 | 6 | 6 | ||
3782 | === modified file 'src/client/symbols.map' | |||
3783 | --- src/client/symbols.map 2016-10-13 16:32:59 +0000 | |||
3784 | +++ src/client/symbols.map 2016-10-27 03:52:22 +0000 | |||
3785 | @@ -299,7 +299,7 @@ | |||
3786 | 299 | 299 | ||
3787 | 300 | MIR_CLIENT_DETAIL_9 { | 300 | MIR_CLIENT_DETAIL_9 { |
3788 | 301 | global: | 301 | global: |
3790 | 302 | extern "C++" { | 302 | extern "C++" { |
3791 | 303 | mir::events::make_event*; | 303 | mir::events::make_event*; |
3792 | 304 | mir::events::add_touch*; | 304 | mir::events::add_touch*; |
3793 | 305 | mir::input::android::Lexicon::translate*; | 305 | mir::input::android::Lexicon::translate*; |
3794 | @@ -331,12 +331,12 @@ | |||
3795 | 331 | typeinfo?for?mir::client::DefaultConnectionConfiguration; | 331 | typeinfo?for?mir::client::DefaultConnectionConfiguration; |
3796 | 332 | vtable?for?mir::client::DefaultConnectionConfiguration; | 332 | vtable?for?mir::client::DefaultConnectionConfiguration; |
3797 | 333 | mir::operator???std::ostream???Mir* | 333 | mir::operator???std::ostream???Mir* |
3799 | 334 | }; | 334 | }; |
3800 | 335 | }; | 335 | }; |
3801 | 336 | 336 | ||
3802 | 337 | MIR_CLIENT_DETAIL_9v18 { | 337 | MIR_CLIENT_DETAIL_9v18 { |
3803 | 338 | global: | 338 | global: |
3805 | 339 | extern "C++" { | 339 | extern "C++" { |
3806 | 340 | mir::client::DefaultConnectionConfiguration::the_input_devices*; | 340 | mir::client::DefaultConnectionConfiguration::the_input_devices*; |
3807 | 341 | mir::events::set_modifier*; | 341 | mir::events::set_modifier*; |
3808 | 342 | mir::events::set_cursor_position*; | 342 | mir::events::set_cursor_position*; |
3809 | @@ -346,7 +346,7 @@ | |||
3810 | 346 | 346 | ||
3811 | 347 | MIR_CLIENT_DETAIL_9v19 { | 347 | MIR_CLIENT_DETAIL_9v19 { |
3812 | 348 | global: | 348 | global: |
3814 | 349 | extern "C++" { | 349 | extern "C++" { |
3815 | 350 | mir::input::android::android_pointer_action_from_mir*; | 350 | mir::input::android::android_pointer_action_from_mir*; |
3816 | 351 | mir::events::serialize_event*; | 351 | mir::events::serialize_event*; |
3817 | 352 | mir::events::deserialize_event*; | 352 | mir::events::deserialize_event*; |
3818 | @@ -355,7 +355,7 @@ | |||
3819 | 355 | 355 | ||
3820 | 356 | MIR_CLIENT_DETAIL_0.21 { | 356 | MIR_CLIENT_DETAIL_0.21 { |
3821 | 357 | global: | 357 | global: |
3823 | 358 | extern "C++" { | 358 | extern "C++" { |
3824 | 359 | mir::client::DefaultConnectionConfiguration::the_buffer_factory*; | 359 | mir::client::DefaultConnectionConfiguration::the_buffer_factory*; |
3825 | 360 | }; | 360 | }; |
3826 | 361 | } MIR_CLIENT_DETAIL_9v19; | 361 | } MIR_CLIENT_DETAIL_9v19; |
3827 | @@ -397,7 +397,7 @@ | |||
3828 | 397 | 397 | ||
3829 | 398 | MIR_CLIENT_DETAIL_0.24 { | 398 | MIR_CLIENT_DETAIL_0.24 { |
3830 | 399 | global: | 399 | global: |
3832 | 400 | extern "C++" { | 400 | extern "C++" { |
3833 | 401 | mir::input::receiver::XKBMapper::XKBMapper*; | 401 | mir::input::receiver::XKBMapper::XKBMapper*; |
3834 | 402 | mir::input::receiver::XKBMapper::?XKBMapper*; | 402 | mir::input::receiver::XKBMapper::?XKBMapper*; |
3835 | 403 | mir::input::receiver::XKBMapper::set_key_state*; | 403 | mir::input::receiver::XKBMapper::set_key_state*; |
3836 | 404 | 404 | ||
3837 | === modified file 'src/common/fd/fd.cpp' | |||
3838 | --- src/common/fd/fd.cpp 2015-02-22 07:46:25 +0000 | |||
3839 | +++ src/common/fd/fd.cpp 2016-10-27 03:52:22 +0000 | |||
3840 | @@ -36,7 +36,7 @@ | |||
3841 | 36 | if (!fd) return; | 36 | if (!fd) return; |
3842 | 37 | if (*fd > mir::Fd::invalid) ::close(*fd); | 37 | if (*fd > mir::Fd::invalid) ::close(*fd); |
3843 | 38 | delete fd; | 38 | delete fd; |
3845 | 39 | }} | 39 | }} |
3846 | 40 | { | 40 | { |
3847 | 41 | } | 41 | } |
3848 | 42 | 42 | ||
3849 | 43 | 43 | ||
3850 | === modified file 'src/common/fd/fd_socket_transmission.cpp' | |||
3851 | --- src/common/fd/fd_socket_transmission.cpp 2015-02-22 07:46:25 +0000 | |||
3852 | +++ src/common/fd/fd_socket_transmission.cpp 2016-10-27 03:52:22 +0000 | |||
3853 | @@ -105,13 +105,13 @@ | |||
3854 | 105 | struct iovec iov; | 105 | struct iovec iov; |
3855 | 106 | iov.iov_base = static_cast<uint8_t*>(buffer) + bytes_read; | 106 | iov.iov_base = static_cast<uint8_t*>(buffer) + bytes_read; |
3856 | 107 | iov.iov_len = bytes_requested - bytes_read; | 107 | iov.iov_len = bytes_requested - bytes_read; |
3858 | 108 | 108 | ||
3859 | 109 | // Allocate space for control message | 109 | // Allocate space for control message |
3860 | 110 | static auto const builtin_n_fds = 5; | 110 | static auto const builtin_n_fds = 5; |
3861 | 111 | static auto const builtin_cmsg_space = CMSG_SPACE(builtin_n_fds * sizeof(int)); | 111 | static auto const builtin_cmsg_space = CMSG_SPACE(builtin_n_fds * sizeof(int)); |
3862 | 112 | auto const fds_bytes = (fds.size() - fds_read) * sizeof(int); | 112 | auto const fds_bytes = (fds.size() - fds_read) * sizeof(int); |
3863 | 113 | mir::VariableLengthArray<builtin_cmsg_space> control{CMSG_SPACE(fds_bytes)}; | 113 | mir::VariableLengthArray<builtin_cmsg_space> control{CMSG_SPACE(fds_bytes)}; |
3865 | 114 | 114 | ||
3866 | 115 | // Message to read | 115 | // Message to read |
3867 | 116 | struct msghdr header; | 116 | struct msghdr header; |
3868 | 117 | header.msg_name = NULL; | 117 | header.msg_name = NULL; |
3869 | @@ -121,7 +121,7 @@ | |||
3870 | 121 | header.msg_controllen = control.size(); | 121 | header.msg_controllen = control.size(); |
3871 | 122 | header.msg_control = control.data(); | 122 | header.msg_control = control.data(); |
3872 | 123 | header.msg_flags = 0; | 123 | header.msg_flags = 0; |
3874 | 124 | 124 | ||
3875 | 125 | ssize_t const result = recvmsg(socket, &header, MSG_NOSIGNAL | MSG_WAITALL); | 125 | ssize_t const result = recvmsg(socket, &header, MSG_NOSIGNAL | MSG_WAITALL); |
3876 | 126 | if (result == 0) | 126 | if (result == 0) |
3877 | 127 | BOOST_THROW_EXCEPTION(socket_disconnected_error("Failed to read message from server: server has shutdown")); | 127 | BOOST_THROW_EXCEPTION(socket_disconnected_error("Failed to read message from server: server has shutdown")); |
3878 | @@ -142,7 +142,7 @@ | |||
3879 | 142 | } | 142 | } |
3880 | 143 | 143 | ||
3881 | 144 | bytes_read += result; | 144 | bytes_read += result; |
3883 | 145 | 145 | ||
3884 | 146 | // If we get a proper control message, copy the received | 146 | // If we get a proper control message, copy the received |
3885 | 147 | // file descriptors back to the caller | 147 | // file descriptors back to the caller |
3886 | 148 | struct cmsghdr const* const cmsg = CMSG_FIRSTHDR(&header); | 148 | struct cmsghdr const* const cmsg = CMSG_FIRSTHDR(&header); |
3887 | 149 | 149 | ||
3888 | === modified file 'src/common/sharedlibrary/CMakeLists.txt' | |||
3889 | --- src/common/sharedlibrary/CMakeLists.txt 2016-10-20 14:35:09 +0000 | |||
3890 | +++ src/common/sharedlibrary/CMakeLists.txt 2016-10-27 03:52:22 +0000 | |||
3891 | @@ -24,7 +24,7 @@ | |||
3892 | 24 | $<TARGET_OBJECTS:mirsharedsharedlibrary> | 24 | $<TARGET_OBJECTS:mirsharedsharedlibrary> |
3893 | 25 | ) | 25 | ) |
3894 | 26 | 26 | ||
3896 | 27 | list(APPEND MIR_COMMON_REFERENCES | 27 | list(APPEND MIR_COMMON_REFERENCES |
3897 | 28 | ${Boost_LIBRARIES} | 28 | ${Boost_LIBRARIES} |
3898 | 29 | dl | 29 | dl |
3899 | 30 | ) | 30 | ) |
3900 | 31 | 31 | ||
3901 | === modified file 'src/common/sharedlibrary/module_deleter.cpp' | |||
3902 | --- src/common/sharedlibrary/module_deleter.cpp 2016-07-18 07:38:38 +0000 | |||
3903 | +++ src/common/sharedlibrary/module_deleter.cpp 2016-10-27 03:52:22 +0000 | |||
3904 | @@ -32,13 +32,13 @@ | |||
3905 | 32 | 32 | ||
3906 | 33 | Dl_info library_info{nullptr, nullptr, nullptr, nullptr}; | 33 | Dl_info library_info{nullptr, nullptr, nullptr, nullptr}; |
3907 | 34 | Dl_info executable_info{nullptr, nullptr, nullptr, nullptr}; | 34 | Dl_info executable_info{nullptr, nullptr, nullptr, nullptr}; |
3909 | 35 | 35 | ||
3910 | 36 | dladdr(dlsym(nullptr, "main"), &executable_info); | 36 | dladdr(dlsym(nullptr, "main"), &executable_info); |
3911 | 37 | dladdr(address, &library_info); | 37 | dladdr(address, &library_info); |
3913 | 38 | 38 | ||
3914 | 39 | if (library_info.dli_fbase == executable_info.dli_fbase) | 39 | if (library_info.dli_fbase == executable_info.dli_fbase) |
3915 | 40 | return nullptr; | 40 | return nullptr; |
3917 | 41 | 41 | ||
3918 | 42 | return std::make_shared<mir::SharedLibrary>(library_info.dli_fname); | 42 | return std::make_shared<mir::SharedLibrary>(library_info.dli_fname); |
3919 | 43 | } | 43 | } |
3920 | 44 | } | 44 | } |
3921 | 45 | 45 | ||
3922 | === modified file 'src/common/symbols.map' | |||
3923 | --- src/common/symbols.map 2016-10-20 14:35:09 +0000 | |||
3924 | +++ src/common/symbols.map 2016-10-27 03:52:22 +0000 | |||
3925 | @@ -2,7 +2,7 @@ | |||
3926 | 2 | global: | 2 | global: |
3927 | 3 | extern "C++" { | 3 | extern "C++" { |
3928 | 4 | # The following symbols come from running a script over the generated docs. Vis: | 4 | # The following symbols come from running a script over the generated docs. Vis: |
3930 | 5 | # ../tools/process_doxygen_xml.py doc/xml/*.xml | grep "^mircommon public" | sed "s/mircommon public: / /" | sort | 5 | # ../tools/process_doxygen_xml.py doc/xml/*.xml | grep "^mircommon public" | sed "s/mircommon public: / /" | sort |
3931 | 6 | mir::detail::libname_impl*; | 6 | mir::detail::libname_impl*; |
3932 | 7 | mir::detail::RefCountedLibrary::operator*; | 7 | mir::detail::RefCountedLibrary::operator*; |
3933 | 8 | mir::detail::RefCountedLibrary::?RefCountedLibrary*; | 8 | mir::detail::RefCountedLibrary::?RefCountedLibrary*; |
3934 | 9 | 9 | ||
3935 | === modified file 'src/cookie/authority.cpp' | |||
3936 | --- src/cookie/authority.cpp 2016-07-18 07:38:38 +0000 | |||
3937 | +++ src/cookie/authority.cpp 2016-10-27 03:52:22 +0000 | |||
3938 | @@ -68,7 +68,7 @@ | |||
3939 | 68 | unsigned got = read(fd, buffer.data(), size); | 68 | unsigned got = read(fd, buffer.data(), size); |
3940 | 69 | int error = errno; | 69 | int error = errno; |
3941 | 70 | close(fd); | 70 | close(fd); |
3943 | 71 | 71 | ||
3944 | 72 | if (got != size) | 72 | if (got != size) |
3945 | 73 | BOOST_THROW_EXCEPTION(std::system_error(error, std::system_category(), | 73 | BOOST_THROW_EXCEPTION(std::system_error(error, std::system_category(), |
3946 | 74 | "read failed on urandom")); | 74 | "read failed on urandom")); |
3947 | 75 | 75 | ||
3948 | === modified file 'src/cookie/hmac_cookie.cpp' | |||
3949 | --- src/cookie/hmac_cookie.cpp 2016-01-22 15:12:20 +0000 | |||
3950 | +++ src/cookie/hmac_cookie.cpp 2016-10-27 03:52:22 +0000 | |||
3951 | @@ -48,6 +48,6 @@ | |||
3952 | 48 | cookie_ptr += sizeof(timestamp_); | 48 | cookie_ptr += sizeof(timestamp_); |
3953 | 49 | 49 | ||
3954 | 50 | memcpy(cookie_ptr, mac_.data(), mac_.size()); | 50 | memcpy(cookie_ptr, mac_.data(), mac_.size()); |
3956 | 51 | 51 | ||
3957 | 52 | return serialized_cookie; | 52 | return serialized_cookie; |
3958 | 53 | } | 53 | } |
3959 | 54 | 54 | ||
3960 | === modified file 'src/include/client/mir_toolkit/mir_buffer.h' | |||
3961 | --- src/include/client/mir_toolkit/mir_buffer.h 2016-10-12 06:03:15 +0000 | |||
3962 | +++ src/include/client/mir_toolkit/mir_buffer.h 2016-10-27 03:52:22 +0000 | |||
3963 | @@ -91,7 +91,7 @@ | |||
3964 | 91 | * Access the MirBufferPackage | 91 | * Access the MirBufferPackage |
3965 | 92 | * | 92 | * |
3966 | 93 | * \param [in] buffer The buffer | 93 | * \param [in] buffer The buffer |
3968 | 94 | * \return The MirBufferPackage representing buffer | 94 | * \return The MirBufferPackage representing buffer |
3969 | 95 | */ | 95 | */ |
3970 | 96 | MirBufferPackage* mir_buffer_get_buffer_package(MirBuffer* buffer); | 96 | MirBufferPackage* mir_buffer_get_buffer_package(MirBuffer* buffer); |
3971 | 97 | 97 | ||
3972 | @@ -126,7 +126,7 @@ | |||
3973 | 126 | * | 126 | * |
3974 | 127 | * \warning any fence currently associated with buffer will be replaced in favor | 127 | * \warning any fence currently associated with buffer will be replaced in favor |
3975 | 128 | * of fence without waiting for the replaced fence to clear | 128 | * of fence without waiting for the replaced fence to clear |
3977 | 129 | * \warning The Mir client api assumes ownership of the fence fd. | 129 | * \warning The Mir client api assumes ownership of the fence fd. |
3978 | 130 | * \param [in] buffer The buffer | 130 | * \param [in] buffer The buffer |
3979 | 131 | * \param [in] fence The fence that will be associated with buffer. If negative, | 131 | * \param [in] fence The fence that will be associated with buffer. If negative, |
3980 | 132 | * this will remove the fence associated with this buffer. | 132 | * this will remove the fence associated with this buffer. |
3981 | @@ -139,7 +139,7 @@ | |||
3982 | 139 | MirBufferAccess access); | 139 | MirBufferAccess access); |
3983 | 140 | 140 | ||
3984 | 141 | /** Wait for the fence associated with the buffer to signal. After returning, | 141 | /** Wait for the fence associated with the buffer to signal. After returning, |
3986 | 142 | * it is permissible to access the buffer's content for the designated purpose in access. | 142 | * it is permissible to access the buffer's content for the designated purpose in access. |
3987 | 143 | * | 143 | * |
3988 | 144 | * \param [in] buffer The buffer | 144 | * \param [in] buffer The buffer |
3989 | 145 | * \param [in] access The access to wait for. | 145 | * \param [in] access The access to wait for. |
3990 | 146 | 146 | ||
3991 | === modified file 'src/include/client/mir_toolkit/mir_buffer_private.h' | |||
3992 | --- src/include/client/mir_toolkit/mir_buffer_private.h 2016-10-07 17:08:50 +0000 | |||
3993 | +++ src/include/client/mir_toolkit/mir_buffer_private.h 2016-10-27 03:52:22 +0000 | |||
3994 | @@ -34,7 +34,7 @@ | |||
3995 | 34 | * | 34 | * |
3996 | 35 | * \param [in] buffer The buffer | 35 | * \param [in] buffer The buffer |
3997 | 36 | * \param [out] target The target to use | 36 | * \param [out] target The target to use |
3999 | 37 | * \param [out] client_buffer The EGLClientBuffer to use | 37 | * \param [out] client_buffer The EGLClientBuffer to use |
4000 | 38 | * \param [out] attrs The attributes to use | 38 | * \param [out] attrs The attributes to use |
4001 | 39 | **/ | 39 | **/ |
4002 | 40 | void mir_buffer_egl_image_parameters( | 40 | void mir_buffer_egl_image_parameters( |
4003 | 41 | 41 | ||
4004 | === modified file 'src/include/client/mir_toolkit/mir_presentation_chain.h' | |||
4005 | --- src/include/client/mir_toolkit/mir_presentation_chain.h 2016-07-18 07:38:38 +0000 | |||
4006 | +++ src/include/client/mir_toolkit/mir_presentation_chain.h 2016-10-27 03:52:22 +0000 | |||
4007 | @@ -50,7 +50,7 @@ | |||
4008 | 50 | MirPresentationChain* presentation_chain); | 50 | MirPresentationChain* presentation_chain); |
4009 | 51 | 51 | ||
4010 | 52 | /** | 52 | /** |
4012 | 53 | * Create a new presentation chain. | 53 | * Create a new presentation chain. |
4013 | 54 | * | 54 | * |
4014 | 55 | * \param [in] connection A valid connection | 55 | * \param [in] connection A valid connection |
4015 | 56 | * \param [in] callback Callback to be invoked when the request | 56 | * \param [in] callback Callback to be invoked when the request |
4016 | @@ -87,7 +87,7 @@ | |||
4017 | 87 | * The server will notify the client when the buffer is available again via | 87 | * The server will notify the client when the buffer is available again via |
4018 | 88 | * the callback registered during buffer creation. | 88 | * the callback registered during buffer creation. |
4019 | 89 | * | 89 | * |
4021 | 90 | * \warning: Once submitted, the buffer cannot be modified until the server | 90 | * \warning: Once submitted, the buffer cannot be modified until the server |
4022 | 91 | * has returned it. There's no guarantee about how long a server | 91 | * has returned it. There's no guarantee about how long a server |
4023 | 92 | * may hold the submitted buffer. | 92 | * may hold the submitted buffer. |
4024 | 93 | * | 93 | * |
4025 | @@ -108,7 +108,7 @@ | |||
4026 | 108 | * mir_surface_spec_add_buffer_stream will set the bottom-most content, | 108 | * mir_surface_spec_add_buffer_stream will set the bottom-most content, |
4027 | 109 | * and subsequent calls to either will stack the content on top. | 109 | * and subsequent calls to either will stack the content on top. |
4028 | 110 | * | 110 | * |
4030 | 111 | * \warning Setting the dimensions or displacements to exceed the | 111 | * \warning Setting the dimensions or displacements to exceed the |
4031 | 112 | * bounds of MirSurface may result in clipping to the size | 112 | * bounds of MirSurface may result in clipping to the size |
4032 | 113 | * of the MirSurface, at the server's discretion. | 113 | * of the MirSurface, at the server's discretion. |
4033 | 114 | * | 114 | * |
4034 | @@ -132,7 +132,7 @@ | |||
4035 | 132 | * mir_surface_spec_add_buffer_stream will set the bottom-most content, | 132 | * mir_surface_spec_add_buffer_stream will set the bottom-most content, |
4036 | 133 | * and subsequent calls to either will stack the content on top. | 133 | * and subsequent calls to either will stack the content on top. |
4037 | 134 | * | 134 | * |
4039 | 135 | * \warning Setting the displacements to exceed the | 135 | * \warning Setting the displacements to exceed the |
4040 | 136 | * bounds of MirSurface may result in clipping to the size | 136 | * bounds of MirSurface may result in clipping to the size |
4041 | 137 | * of the MirSurface, at the server's discretion. | 137 | * of the MirSurface, at the server's discretion. |
4042 | 138 | * | 138 | * |
4043 | 139 | 139 | ||
4044 | === modified file 'src/include/common/mir/events/event_private.h' | |||
4045 | --- src/include/common/mir/events/event_private.h 2016-07-18 07:38:38 +0000 | |||
4046 | +++ src/include/common/mir/events/event_private.h 2016-10-27 03:52:22 +0000 | |||
4047 | @@ -17,7 +17,7 @@ | |||
4048 | 17 | */ | 17 | */ |
4049 | 18 | 18 | ||
4050 | 19 | // ================================== | 19 | // ================================== |
4052 | 20 | // | 20 | // |
4053 | 21 | // Direct access to MirEvent deprecated. Prefer mir_event_* family of functions. | 21 | // Direct access to MirEvent deprecated. Prefer mir_event_* family of functions. |
4054 | 22 | // | 22 | // |
4055 | 23 | // ================================== | 23 | // ================================== |
4056 | 24 | 24 | ||
4057 | === modified file 'src/include/common/mir/protobuf/protocol_version.h' | |||
4058 | --- src/include/common/mir/protobuf/protocol_version.h 2016-07-18 07:38:38 +0000 | |||
4059 | +++ src/include/common/mir/protobuf/protocol_version.h 2016-10-27 03:52:22 +0000 | |||
4060 | @@ -26,7 +26,7 @@ | |||
4061 | 26 | namespace protobuf | 26 | namespace protobuf |
4062 | 27 | { | 27 | { |
4063 | 28 | inline constexpr int current_protocol_version() | 28 | inline constexpr int current_protocol_version() |
4065 | 29 | { | 29 | { |
4066 | 30 | return MIR_VERSION_NUMBER(0,3,3); | 30 | return MIR_VERSION_NUMBER(0,3,3); |
4067 | 31 | } | 31 | } |
4068 | 32 | 32 | ||
4069 | 33 | 33 | ||
4070 | === modified file 'src/include/server/mir/frontend/fd_sets.h' | |||
4071 | --- src/include/server/mir/frontend/fd_sets.h 2016-01-29 08:18:22 +0000 | |||
4072 | +++ src/include/server/mir/frontend/fd_sets.h 2016-10-27 03:52:22 +0000 | |||
4073 | @@ -20,7 +20,7 @@ | |||
4074 | 20 | 20 | ||
4075 | 21 | #include <vector> | 21 | #include <vector> |
4076 | 22 | #include <initializer_list> | 22 | #include <initializer_list> |
4078 | 23 | #include "mir/fd.h" | 23 | #include "mir/fd.h" |
4079 | 24 | 24 | ||
4080 | 25 | namespace mir | 25 | namespace mir |
4081 | 26 | { | 26 | { |
4082 | 27 | 27 | ||
4083 | === modified file 'src/include/server/mir/input/scene.h' | |||
4084 | --- src/include/server/mir/input/scene.h 2015-02-22 07:46:25 +0000 | |||
4085 | +++ src/include/server/mir/input/scene.h 2016-10-27 03:52:22 +0000 | |||
4086 | @@ -54,7 +54,7 @@ | |||
4087 | 54 | // Within the set of overlay renderables, rendering order is undefined. | 54 | // Within the set of overlay renderables, rendering order is undefined. |
4088 | 55 | virtual void add_input_visualization(std::shared_ptr<graphics::Renderable> const& overlay) = 0; | 55 | virtual void add_input_visualization(std::shared_ptr<graphics::Renderable> const& overlay) = 0; |
4089 | 56 | virtual void remove_input_visualization(std::weak_ptr<graphics::Renderable> const& overlay) = 0; | 56 | virtual void remove_input_visualization(std::weak_ptr<graphics::Renderable> const& overlay) = 0; |
4091 | 57 | 57 | ||
4092 | 58 | // As input visualizations added through the overlay system will not use the standard SurfaceObserver | 58 | // As input visualizations added through the overlay system will not use the standard SurfaceObserver |
4093 | 59 | // mechanism, we require this method to trigger recomposition. | 59 | // mechanism, we require this method to trigger recomposition. |
4094 | 60 | // TODO: How can something like SurfaceObserver be adapted to work with non surface renderables? | 60 | // TODO: How can something like SurfaceObserver be adapted to work with non surface renderables? |
4095 | 61 | 61 | ||
4096 | === modified file 'src/include/server/mir/scene/legacy_scene_change_notification.h' | |||
4097 | --- src/include/server/mir/scene/legacy_scene_change_notification.h 2016-07-21 13:10:03 +0000 | |||
4098 | +++ src/include/server/mir/scene/legacy_scene_change_notification.h 2016-10-27 03:52:22 +0000 | |||
4099 | @@ -33,7 +33,7 @@ | |||
4100 | 33 | class SurfaceObserver; | 33 | class SurfaceObserver; |
4101 | 34 | 34 | ||
4102 | 35 | // A simple implementation of surface observer which forwards all changes to a provided callback. | 35 | // A simple implementation of surface observer which forwards all changes to a provided callback. |
4104 | 36 | // Also installs surface observers on each added surface which in turn forward each change to | 36 | // Also installs surface observers on each added surface which in turn forward each change to |
4105 | 37 | // said callback. | 37 | // said callback. |
4106 | 38 | class LegacySceneChangeNotification : public Observer | 38 | class LegacySceneChangeNotification : public Observer |
4107 | 39 | { | 39 | { |
4108 | @@ -51,7 +51,7 @@ | |||
4109 | 51 | void surface_added(Surface* surface) override; | 51 | void surface_added(Surface* surface) override; |
4110 | 52 | void surface_removed(Surface* surface) override; | 52 | void surface_removed(Surface* surface) override; |
4111 | 53 | void surfaces_reordered() override; | 53 | void surfaces_reordered() override; |
4113 | 54 | 54 | ||
4114 | 55 | void scene_changed() override; | 55 | void scene_changed() override; |
4115 | 56 | 56 | ||
4116 | 57 | void surface_exists(Surface* surface) override; | 57 | void surface_exists(Surface* surface) override; |
4117 | @@ -64,7 +64,7 @@ | |||
4118 | 64 | 64 | ||
4119 | 65 | std::mutex surface_observers_guard; | 65 | std::mutex surface_observers_guard; |
4120 | 66 | std::map<Surface*, std::weak_ptr<SurfaceObserver>> surface_observers; | 66 | std::map<Surface*, std::weak_ptr<SurfaceObserver>> surface_observers; |
4122 | 67 | 67 | ||
4123 | 68 | void add_surface_observer(Surface* surface); | 68 | void add_surface_observer(Surface* surface); |
4124 | 69 | }; | 69 | }; |
4125 | 70 | 70 | ||
4126 | 71 | 71 | ||
4127 | === modified file 'src/platform/symbols.map' | |||
4128 | --- src/platform/symbols.map 2016-10-12 10:29:45 +0000 | |||
4129 | +++ src/platform/symbols.map 2016-10-27 03:52:22 +0000 | |||
4130 | @@ -2,7 +2,7 @@ | |||
4131 | 2 | global: | 2 | global: |
4132 | 3 | extern "C++" { | 3 | extern "C++" { |
4133 | 4 | # The following symbols come from running a script over the generated docs. Vis: | 4 | # The following symbols come from running a script over the generated docs. Vis: |
4135 | 5 | # ../tools/process_doxygen_xml.py doc/xml/*.xml | grep "^mirplatform public" | sed "s/mirplatform public: / /" | sort | 5 | # ../tools/process_doxygen_xml.py doc/xml/*.xml | grep "^mirplatform public" | sed "s/mirplatform public: / /" | sort |
4136 | 6 | mir::graphics::BufferBasic::BufferBasic*; | 6 | mir::graphics::BufferBasic::BufferBasic*; |
4137 | 7 | mir::graphics::Buffer::Buffer*; | 7 | mir::graphics::Buffer::Buffer*; |
4138 | 8 | mir::graphics::Buffer::id*; | 8 | mir::graphics::Buffer::id*; |
4139 | @@ -95,7 +95,7 @@ | |||
4140 | 95 | mir::graphics::UserDisplayConfigurationOutput::UserDisplayConfigurationOutput*; | 95 | mir::graphics::UserDisplayConfigurationOutput::UserDisplayConfigurationOutput*; |
4141 | 96 | mir::options::arw_server_socket_opt*; | 96 | mir::options::arw_server_socket_opt*; |
4142 | 97 | # Why are server-only options here in libmirplatform?... | 97 | # Why are server-only options here in libmirplatform?... |
4144 | 98 | mir::options::composite_delay_opt*; | 98 | mir::options::composite_delay_opt*; |
4145 | 99 | mir::options::compositor_report_opt*; | 99 | mir::options::compositor_report_opt*; |
4146 | 100 | mir::options::Configuration::?Configuration*; | 100 | mir::options::Configuration::?Configuration*; |
4147 | 101 | mir::options::Configuration::Configuration*; | 101 | mir::options::Configuration::Configuration*; |
4148 | @@ -223,9 +223,9 @@ | |||
4149 | 223 | vtable?for?mir::options::DefaultConfiguration; | 223 | vtable?for?mir::options::DefaultConfiguration; |
4150 | 224 | vtable?for?mir::options::Option; | 224 | vtable?for?mir::options::Option; |
4151 | 225 | vtable?for?mir::options::ProgramOption; | 225 | vtable?for?mir::options::ProgramOption; |
4153 | 226 | 226 | ||
4154 | 227 | # These are "private" (declared in src/include) but are used by libmirserver. | 227 | # These are "private" (declared in src/include) but are used by libmirserver. |
4156 | 228 | # They are also likely to be needed by any 3rd party "graphics platform" | 228 | # They are also likely to be needed by any 3rd party "graphics platform" |
4157 | 229 | # implementation. They should probably become public at some stage. | 229 | # implementation. They should probably become public at some stage. |
4158 | 230 | mir::graphics::alpha_channel_depth*; | 230 | mir::graphics::alpha_channel_depth*; |
4159 | 231 | mir::graphics::blue_channel_depth*; | 231 | mir::graphics::blue_channel_depth*; |
4160 | 232 | 232 | ||
4161 | === modified file 'src/platforms/CMakeLists.txt' | |||
4162 | --- src/platforms/CMakeLists.txt 2016-10-21 07:53:23 +0000 | |||
4163 | +++ src/platforms/CMakeLists.txt 2016-10-27 03:52:22 +0000 | |||
4164 | @@ -14,9 +14,9 @@ | |||
4165 | 14 | set(MIR_SERVER_GRAPHICS_PLATFORM_VERSION "MIR_GRAPHICS_PLATFORM_${MIR_SERVER_GRAPHICS_PLATFORM_STANZA_VERSION}") | 14 | set(MIR_SERVER_GRAPHICS_PLATFORM_VERSION "MIR_GRAPHICS_PLATFORM_${MIR_SERVER_GRAPHICS_PLATFORM_STANZA_VERSION}") |
4166 | 15 | set(MIR_SERVER_GRAPHICS_PLATFORM_VERSION ${MIR_SERVER_GRAPHICS_PLATFORM_VERSION} PARENT_SCOPE) | 15 | set(MIR_SERVER_GRAPHICS_PLATFORM_VERSION ${MIR_SERVER_GRAPHICS_PLATFORM_VERSION} PARENT_SCOPE) |
4167 | 16 | configure_file( | 16 | configure_file( |
4169 | 17 | ${CMAKE_CURRENT_SOURCE_DIR}/input_platform_symbols.map.in | 17 | ${CMAKE_CURRENT_SOURCE_DIR}/input_platform_symbols.map.in |
4170 | 18 | ${CMAKE_CURRENT_BINARY_DIR}/input_platform_symbols.map) | 18 | ${CMAKE_CURRENT_BINARY_DIR}/input_platform_symbols.map) |
4172 | 19 | set(MIR_INPUT_PLATFORM_VERSION_SCRIPT | 19 | set(MIR_INPUT_PLATFORM_VERSION_SCRIPT |
4173 | 20 | ${CMAKE_CURRENT_BINARY_DIR}/input_platform_symbols.map) | 20 | ${CMAKE_CURRENT_BINARY_DIR}/input_platform_symbols.map) |
4174 | 21 | set(MIR_INPUT_PLATFORM_VERSION_SCRIPT ${MIR_INPUT_PLATFORM_VERSION_SCRIPT} PARENT_SCOPE) | 21 | set(MIR_INPUT_PLATFORM_VERSION_SCRIPT ${MIR_INPUT_PLATFORM_VERSION_SCRIPT} PARENT_SCOPE) |
4175 | 22 | 22 | ||
4176 | 23 | 23 | ||
4177 | === modified file 'src/platforms/android/client/buffer.cpp' | |||
4178 | --- src/platforms/android/client/buffer.cpp 2016-10-12 06:03:15 +0000 | |||
4179 | +++ src/platforms/android/client/buffer.cpp 2016-10-27 03:52:22 +0000 | |||
4180 | @@ -79,7 +79,7 @@ | |||
4181 | 79 | 79 | ||
4182 | 80 | void mcla::Buffer::update_from(MirBufferPackage const& update_package) | 80 | void mcla::Buffer::update_from(MirBufferPackage const& update_package) |
4183 | 81 | { | 81 | { |
4185 | 82 | if ((update_package.flags & mir_buffer_flag_fenced) && | 82 | if ((update_package.flags & mir_buffer_flag_fenced) && |
4186 | 83 | (update_package.fd_items != 0)) | 83 | (update_package.fd_items != 0)) |
4187 | 84 | { | 84 | { |
4188 | 85 | auto fence_fd = update_package.fd[0]; | 85 | auto fence_fd = update_package.fd[0]; |
4189 | @@ -95,12 +95,12 @@ | |||
4190 | 95 | { | 95 | { |
4191 | 96 | message.flags = mir_buffer_flag_fenced; | 96 | message.flags = mir_buffer_flag_fenced; |
4192 | 97 | message.fd[0] = fence; | 97 | message.fd[0] = fence; |
4194 | 98 | message.fd_items = 1; | 98 | message.fd_items = 1; |
4195 | 99 | } | 99 | } |
4196 | 100 | else | 100 | else |
4197 | 101 | { | 101 | { |
4198 | 102 | message.flags = 0; | 102 | message.flags = 0; |
4200 | 103 | message.fd_items = 0; | 103 | message.fd_items = 0; |
4201 | 104 | } | 104 | } |
4202 | 105 | } | 105 | } |
4203 | 106 | 106 | ||
4204 | @@ -123,9 +123,9 @@ | |||
4205 | 123 | if (fence <= mir::Fd::invalid) | 123 | if (fence <= mir::Fd::invalid) |
4206 | 124 | native_buffer->reset_fence(); | 124 | native_buffer->reset_fence(); |
4207 | 125 | else if (access == mir_read) | 125 | else if (access == mir_read) |
4209 | 126 | native_buffer->update_usage(f, mga::BufferAccess::read); | 126 | native_buffer->update_usage(f, mga::BufferAccess::read); |
4210 | 127 | else if (access == mir_read_write) | 127 | else if (access == mir_read_write) |
4212 | 128 | native_buffer->update_usage(f, mga::BufferAccess::write); | 128 | native_buffer->update_usage(f, mga::BufferAccess::write); |
4213 | 129 | else | 129 | else |
4214 | 130 | BOOST_THROW_EXCEPTION(std::invalid_argument("invalid MirBufferAccess")); | 130 | BOOST_THROW_EXCEPTION(std::invalid_argument("invalid MirBufferAccess")); |
4215 | 131 | } | 131 | } |
4216 | @@ -144,9 +144,9 @@ | |||
4217 | 144 | ms = ms - std::chrono::milliseconds{1}; | 144 | ms = ms - std::chrono::milliseconds{1}; |
4218 | 145 | 145 | ||
4219 | 146 | if (access == mir_read) | 146 | if (access == mir_read) |
4221 | 147 | return native_buffer->ensure_available_for(mga::BufferAccess::read, ms); | 147 | return native_buffer->ensure_available_for(mga::BufferAccess::read, ms); |
4222 | 148 | if (access == mir_read_write) | 148 | if (access == mir_read_write) |
4224 | 149 | return native_buffer->ensure_available_for(mga::BufferAccess::write, ms); | 149 | return native_buffer->ensure_available_for(mga::BufferAccess::write, ms); |
4225 | 150 | 150 | ||
4226 | 151 | BOOST_THROW_EXCEPTION(std::invalid_argument("invalid MirBufferAccess")); | 151 | BOOST_THROW_EXCEPTION(std::invalid_argument("invalid MirBufferAccess")); |
4227 | 152 | } | 152 | } |
4228 | 153 | 153 | ||
4229 | === modified file 'src/platforms/android/client/buffer.h' | |||
4230 | --- src/platforms/android/client/buffer.h 2016-10-12 06:03:15 +0000 | |||
4231 | +++ src/platforms/android/client/buffer.h 2016-10-27 03:52:22 +0000 | |||
4232 | @@ -62,7 +62,7 @@ | |||
4233 | 62 | void pack_native_window_buffer(); | 62 | void pack_native_window_buffer(); |
4234 | 63 | 63 | ||
4235 | 64 | mir::Fd mutable api_user_fence; | 64 | mir::Fd mutable api_user_fence; |
4237 | 65 | 65 | ||
4238 | 66 | std::shared_ptr<BufferRegistrar> const buffer_registrar; | 66 | std::shared_ptr<BufferRegistrar> const buffer_registrar; |
4239 | 67 | std::shared_ptr<graphics::android::NativeBuffer> const native_buffer; | 67 | std::shared_ptr<graphics::android::NativeBuffer> const native_buffer; |
4240 | 68 | MirPixelFormat const buffer_pf; | 68 | MirPixelFormat const buffer_pf; |
4241 | 69 | 69 | ||
4242 | === modified file 'src/platforms/android/client/egl_native_surface_interpreter.cpp' | |||
4243 | --- src/platforms/android/client/egl_native_surface_interpreter.cpp 2016-10-21 07:53:23 +0000 | |||
4244 | +++ src/platforms/android/client/egl_native_surface_interpreter.cpp 2016-10-27 03:52:22 +0000 | |||
4245 | @@ -42,7 +42,7 @@ | |||
4246 | 42 | { | 42 | { |
4247 | 43 | auto buffer = surface.get_current_buffer(); | 43 | auto buffer = surface.get_current_buffer(); |
4248 | 44 | auto buffer_to_driver = mga::to_native_buffer_checked(buffer->native_buffer_handle()); | 44 | auto buffer_to_driver = mga::to_native_buffer_checked(buffer->native_buffer_handle()); |
4250 | 45 | 45 | ||
4251 | 46 | ANativeWindowBuffer* anwb = buffer_to_driver->anwb(); | 46 | ANativeWindowBuffer* anwb = buffer_to_driver->anwb(); |
4252 | 47 | anwb->format = driver_pixel_format; | 47 | anwb->format = driver_pixel_format; |
4253 | 48 | return buffer_to_driver.get(); | 48 | return buffer_to_driver.get(); |
4254 | @@ -91,7 +91,7 @@ | |||
4255 | 91 | } | 91 | } |
4256 | 92 | 92 | ||
4257 | 93 | void mcla::EGLNativeSurfaceInterpreter::sync_to_display(bool should_sync) | 93 | void mcla::EGLNativeSurfaceInterpreter::sync_to_display(bool should_sync) |
4259 | 94 | { | 94 | { |
4260 | 95 | surface.request_and_wait_for_configure(mir_surface_attrib_swapinterval, should_sync); | 95 | surface.request_and_wait_for_configure(mir_surface_attrib_swapinterval, should_sync); |
4261 | 96 | } | 96 | } |
4262 | 97 | 97 | ||
4263 | 98 | 98 | ||
4264 | === modified file 'src/platforms/android/common/android_native_buffer.cpp' | |||
4265 | --- src/platforms/android/common/android_native_buffer.cpp 2016-10-12 06:03:15 +0000 | |||
4266 | +++ src/platforms/android/common/android_native_buffer.cpp 2016-10-27 03:52:22 +0000 | |||
4267 | @@ -40,7 +40,7 @@ | |||
4268 | 40 | { | 40 | { |
4269 | 41 | if ((access == mga::BufferAccess::read) && (intent == mga::BufferAccess::read)) | 41 | if ((access == mga::BufferAccess::read) && (intent == mga::BufferAccess::read)) |
4270 | 42 | return; | 42 | return; |
4272 | 43 | 43 | ||
4273 | 44 | fence->wait(); | 44 | fence->wait(); |
4274 | 45 | } | 45 | } |
4275 | 46 | 46 | ||
4276 | 47 | 47 | ||
4277 | === modified file 'src/platforms/android/common/egl_sync_fence.cpp' | |||
4278 | --- src/platforms/android/common/egl_sync_fence.cpp 2016-07-18 07:38:38 +0000 | |||
4279 | +++ src/platforms/android/common/egl_sync_fence.cpp 2016-10-27 03:52:22 +0000 | |||
4280 | @@ -64,7 +64,7 @@ | |||
4281 | 64 | if (sync_point == EGL_NO_SYNC_KHR) | 64 | if (sync_point == EGL_NO_SYNC_KHR) |
4282 | 65 | { | 65 | { |
4283 | 66 | std::stringstream str; | 66 | std::stringstream str; |
4285 | 67 | str << "failed to add sync point to command buffer: 0x" << std::hex << eglGetError(); | 67 | str << "failed to add sync point to command buffer: 0x" << std::hex << eglGetError(); |
4286 | 68 | log_error(str.str()); | 68 | log_error(str.str()); |
4287 | 69 | } | 69 | } |
4288 | 70 | } | 70 | } |
4289 | 71 | 71 | ||
4290 | === modified file 'src/platforms/android/common/native_window_report.cpp' | |||
4291 | --- src/platforms/android/common/native_window_report.cpp 2016-07-11 12:49:51 +0000 | |||
4292 | +++ src/platforms/android/common/native_window_report.cpp 2016-10-27 03:52:22 +0000 | |||
4293 | @@ -100,7 +100,7 @@ | |||
4294 | 100 | 100 | ||
4295 | 101 | std::ostream& operator<<(std::ostream& out, ANativeWindow const* window) | 101 | std::ostream& operator<<(std::ostream& out, ANativeWindow const* window) |
4296 | 102 | { | 102 | { |
4298 | 103 | return out << "addr (" << static_cast<void const*>(window) << "): "; | 103 | return out << "addr (" << static_cast<void const*>(window) << "): "; |
4299 | 104 | } | 104 | } |
4300 | 105 | } | 105 | } |
4301 | 106 | 106 | ||
4302 | @@ -121,7 +121,7 @@ | |||
4303 | 121 | else | 121 | else |
4304 | 122 | str << "none"; | 122 | str << "none"; |
4305 | 123 | 123 | ||
4307 | 124 | logger->log(mir::logging::Severity::debug, str.str(), component_name); | 124 | logger->log(mir::logging::Severity::debug, str.str(), component_name); |
4308 | 125 | } | 125 | } |
4309 | 126 | 126 | ||
4310 | 127 | void mga::ConsoleNativeWindowReport::buffer_event( | 127 | void mga::ConsoleNativeWindowReport::buffer_event( |
4311 | @@ -129,14 +129,14 @@ | |||
4312 | 129 | { | 129 | { |
4313 | 130 | std::stringstream str; | 130 | std::stringstream str; |
4314 | 131 | str << win << type << "_deprecated: " << buf; | 131 | str << win << type << "_deprecated: " << buf; |
4316 | 132 | logger->log(mir::logging::Severity::debug, str.str(), component_name); | 132 | logger->log(mir::logging::Severity::debug, str.str(), component_name); |
4317 | 133 | } | 133 | } |
4318 | 134 | 134 | ||
4319 | 135 | void mga::ConsoleNativeWindowReport::query_event(ANativeWindow const* win, int type, int result) const | 135 | void mga::ConsoleNativeWindowReport::query_event(ANativeWindow const* win, int type, int result) const |
4320 | 136 | { | 136 | { |
4321 | 137 | std::stringstream str; | 137 | std::stringstream str; |
4322 | 138 | str << std::hex << win << "query: " << NativeQueryKey{type} << ": result: 0x" << result; | 138 | str << std::hex << win << "query: " << NativeQueryKey{type} << ": result: 0x" << result; |
4324 | 139 | logger->log(mir::logging::Severity::debug, str.str(), component_name); | 139 | logger->log(mir::logging::Severity::debug, str.str(), component_name); |
4325 | 140 | } | 140 | } |
4326 | 141 | 141 | ||
4327 | 142 | void mga::ConsoleNativeWindowReport::perform_event( | 142 | void mga::ConsoleNativeWindowReport::perform_event( |
4328 | @@ -150,7 +150,7 @@ | |||
4329 | 150 | str << ", "; | 150 | str << ", "; |
4330 | 151 | str << "0x" << args[i]; | 151 | str << "0x" << args[i]; |
4331 | 152 | } | 152 | } |
4333 | 153 | logger->log(mir::logging::Severity::debug, str.str(), component_name); | 153 | logger->log(mir::logging::Severity::debug, str.str(), component_name); |
4334 | 154 | } | 154 | } |
4335 | 155 | 155 | ||
4336 | 156 | void mga::NullNativeWindowReport::buffer_event(mga::BufferEvent, ANativeWindow const*, ANativeWindowBuffer*, int) const | 156 | void mga::NullNativeWindowReport::buffer_event(mga::BufferEvent, ANativeWindow const*, ANativeWindowBuffer*, int) const |
4337 | 157 | 157 | ||
4338 | === modified file 'src/platforms/android/include/android/native_window.h' | |||
4339 | --- src/platforms/android/include/android/native_window.h 2016-01-29 13:10:01 +0000 | |||
4340 | +++ src/platforms/android/include/android/native_window.h 2016-10-27 03:52:22 +0000 | |||
4341 | @@ -16,6 +16,6 @@ | |||
4342 | 16 | * Authored by: Kevin DuBois <kevin.dubois@canonical.com> | 16 | * Authored by: Kevin DuBois <kevin.dubois@canonical.com> |
4343 | 17 | */ | 17 | */ |
4344 | 18 | 18 | ||
4346 | 19 | //NOTE: this file exists to workaround a xenial packaging issue | 19 | //NOTE: this file exists to workaround a xenial packaging issue |
4347 | 20 | //described in LP: #1539571 | 20 | //described in LP: #1539571 |
4348 | 21 | #include "system/window.h" | 21 | #include "system/window.h" |
4349 | 22 | 22 | ||
4350 | === modified file 'src/platforms/android/include/command_stream_sync.h' | |||
4351 | --- src/platforms/android/include/command_stream_sync.h 2016-01-28 17:46:29 +0000 | |||
4352 | +++ src/platforms/android/include/command_stream_sync.h 2016-10-27 03:52:22 +0000 | |||
4353 | @@ -39,7 +39,7 @@ | |||
4354 | 39 | virtual bool wait_for(std::chrono::nanoseconds ns) = 0; | 39 | virtual bool wait_for(std::chrono::nanoseconds ns) = 0; |
4355 | 40 | 40 | ||
4356 | 41 | virtual ~CommandStreamSync() = default; | 41 | virtual ~CommandStreamSync() = default; |
4358 | 42 | CommandStreamSync() = default; | 42 | CommandStreamSync() = default; |
4359 | 43 | CommandStreamSync(CommandStreamSync const&) = delete; | 43 | CommandStreamSync(CommandStreamSync const&) = delete; |
4360 | 44 | CommandStreamSync& operator=(CommandStreamSync const&) = delete; | 44 | CommandStreamSync& operator=(CommandStreamSync const&) = delete; |
4361 | 45 | }; | 45 | }; |
4362 | 46 | 46 | ||
4363 | === modified file 'src/platforms/android/server/buffer.cpp' | |||
4364 | --- src/platforms/android/server/buffer.cpp 2016-08-30 03:39:59 +0000 | |||
4365 | +++ src/platforms/android/server/buffer.cpp 2016-10-27 03:52:22 +0000 | |||
4366 | @@ -148,7 +148,7 @@ | |||
4367 | 148 | std::unique_lock<std::mutex> lk(content_lock); | 148 | std::unique_lock<std::mutex> lk(content_lock); |
4368 | 149 | 149 | ||
4369 | 150 | native_buffer->ensure_available_for(mga::BufferAccess::write); | 150 | native_buffer->ensure_available_for(mga::BufferAccess::write); |
4371 | 151 | 151 | ||
4372 | 152 | auto bpp = MIR_BYTES_PER_PIXEL(pixel_format()); | 152 | auto bpp = MIR_BYTES_PER_PIXEL(pixel_format()); |
4373 | 153 | size_t buffer_size_bytes = size().height.as_int() * size().width.as_int() * bpp; | 153 | size_t buffer_size_bytes = size().height.as_int() * size().width.as_int() * bpp; |
4374 | 154 | if (buffer_size_bytes != data_size) | 154 | if (buffer_size_bytes != data_size) |
4375 | @@ -172,7 +172,7 @@ | |||
4376 | 172 | int line_offset_in_source = bpp*width*i; | 172 | int line_offset_in_source = bpp*width*i; |
4377 | 173 | memcpy(vaddr + line_offset_in_buffer, data + line_offset_in_source, width * bpp); | 173 | memcpy(vaddr + line_offset_in_buffer, data + line_offset_in_source, width * bpp); |
4378 | 174 | } | 174 | } |
4380 | 175 | 175 | ||
4381 | 176 | hw_module->unlock(hw_module, native_buffer->handle()); | 176 | hw_module->unlock(hw_module, native_buffer->handle()); |
4382 | 177 | } | 177 | } |
4383 | 178 | 178 | ||
4384 | 179 | 179 | ||
4385 | === modified file 'src/platforms/android/server/device_quirks.h' | |||
4386 | --- src/platforms/android/server/device_quirks.h 2016-08-09 08:13:02 +0000 | |||
4387 | +++ src/platforms/android/server/device_quirks.h 2016-10-27 03:52:22 +0000 | |||
4388 | @@ -87,7 +87,7 @@ | |||
4389 | 87 | bool const enable_width_alignment_quirk; | 87 | bool const enable_width_alignment_quirk; |
4390 | 88 | bool const clear_fb_context_fence_; | 88 | bool const clear_fb_context_fence_; |
4391 | 89 | bool const fb_ion_heap_; | 89 | bool const fb_ion_heap_; |
4393 | 90 | bool const working_egl_sync_; | 90 | bool const working_egl_sync_; |
4394 | 91 | }; | 91 | }; |
4395 | 92 | } | 92 | } |
4396 | 93 | } | 93 | } |
4397 | 94 | 94 | ||
4398 | === modified file 'src/platforms/android/server/display.cpp' | |||
4399 | --- src/platforms/android/server/display.cpp 2016-10-12 06:03:15 +0000 | |||
4400 | +++ src/platforms/android/server/display.cpp 2016-10-27 03:52:22 +0000 | |||
4401 | @@ -53,8 +53,8 @@ | |||
4402 | 53 | int pipes_raw[2] {-1, -1}; | 53 | int pipes_raw[2] {-1, -1}; |
4403 | 54 | if (::pipe2(pipes_raw, O_CLOEXEC | O_NONBLOCK)) | 54 | if (::pipe2(pipes_raw, O_CLOEXEC | O_NONBLOCK)) |
4404 | 55 | BOOST_THROW_EXCEPTION(std::runtime_error("failed to create display change pipe")); | 55 | BOOST_THROW_EXCEPTION(std::runtime_error("failed to create display change pipe")); |
4407 | 56 | read_pipe = mir::Fd{pipes_raw[0]}; | 56 | read_pipe = mir::Fd{pipes_raw[0]}; |
4408 | 57 | write_pipe = mir::Fd{pipes_raw[1]}; | 57 | write_pipe = mir::Fd{pipes_raw[1]}; |
4409 | 58 | } | 58 | } |
4410 | 59 | 59 | ||
4411 | 60 | void notify_change() | 60 | void notify_change() |
4412 | @@ -106,7 +106,7 @@ | |||
4413 | 106 | { | 106 | { |
4414 | 107 | power_mode_safe(mga::DisplayName::primary, control, config.primary(), intended_mode); | 107 | power_mode_safe(mga::DisplayName::primary, control, config.primary(), intended_mode); |
4415 | 108 | if (config.external().connected) | 108 | if (config.external().connected) |
4417 | 109 | power_mode_safe(mga::DisplayName::external, control, config.external(), intended_mode); | 109 | power_mode_safe(mga::DisplayName::external, control, config.external(), intended_mode); |
4418 | 110 | } | 110 | } |
4419 | 111 | 111 | ||
4420 | 112 | std::unique_ptr<mga::ConfigurableDisplayBuffer> create_display_buffer( | 112 | std::unique_ptr<mga::ConfigurableDisplayBuffer> create_display_buffer( |
4421 | @@ -123,7 +123,7 @@ | |||
4422 | 123 | std::shared_ptr<mga::FramebufferBundle> fbs{display_buffer_builder.create_framebuffers(config)}; | 123 | std::shared_ptr<mga::FramebufferBundle> fbs{display_buffer_builder.create_framebuffers(config)}; |
4423 | 124 | auto cache = std::make_shared<mga::InterpreterCache>(); | 124 | auto cache = std::make_shared<mga::InterpreterCache>(); |
4424 | 125 | mga::DeviceQuirks quirks(mga::PropertiesOps{}, gl_context); | 125 | mga::DeviceQuirks quirks(mga::PropertiesOps{}, gl_context); |
4426 | 126 | auto interpreter = std::make_shared<mga::ServerRenderWindow>(fbs, config.current_format, cache, quirks); | 126 | auto interpreter = std::make_shared<mga::ServerRenderWindow>(fbs, config.current_format, cache, quirks); |
4427 | 127 | auto native_window = std::make_shared<mga::MirNativeWindow>(interpreter, report); | 127 | auto native_window = std::make_shared<mga::MirNativeWindow>(interpreter, report); |
4428 | 128 | return std::unique_ptr<mga::ConfigurableDisplayBuffer>(new mga::DisplayBuffer( | 128 | return std::unique_ptr<mga::ConfigurableDisplayBuffer>(new mga::DisplayBuffer( |
4429 | 129 | name, | 129 | name, |
4430 | 130 | 130 | ||
4431 | === modified file 'src/platforms/android/server/display_device.h' | |||
4432 | --- src/platforms/android/server/display_device.h 2016-07-18 07:38:38 +0000 | |||
4433 | +++ src/platforms/android/server/display_device.h 2016-10-27 03:52:22 +0000 | |||
4434 | @@ -46,9 +46,9 @@ | |||
4435 | 46 | LayerList& list; | 46 | LayerList& list; |
4436 | 47 | geometry::Displacement list_offset; | 47 | geometry::Displacement list_offset; |
4437 | 48 | SwappingGLContext& context; | 48 | SwappingGLContext& context; |
4439 | 49 | RenderableListCompositor& compositor; | 49 | RenderableListCompositor& compositor; |
4440 | 50 | }; | 50 | }; |
4442 | 51 | 51 | ||
4443 | 52 | class DisplayDevice | 52 | class DisplayDevice |
4444 | 53 | { | 53 | { |
4445 | 54 | public: | 54 | public: |
4446 | 55 | 55 | ||
4447 | === modified file 'src/platforms/android/server/fb_device.cpp' | |||
4448 | --- src/platforms/android/server/fb_device.cpp 2016-10-20 15:05:56 +0000 | |||
4449 | +++ src/platforms/android/server/fb_device.cpp 2016-10-27 03:52:22 +0000 | |||
4450 | @@ -49,7 +49,7 @@ | |||
4451 | 49 | int enable = 0; | 49 | int enable = 0; |
4452 | 50 | if (mode == mir_power_mode_on) | 50 | if (mode == mir_power_mode_on) |
4453 | 51 | enable = 1; | 51 | enable = 1; |
4455 | 52 | 52 | ||
4456 | 53 | if (fb_device->enableScreen) | 53 | if (fb_device->enableScreen) |
4457 | 54 | fb_device->enableScreen(fb_device.get(), enable); | 54 | fb_device->enableScreen(fb_device.get(), enable); |
4458 | 55 | } | 55 | } |
4459 | 56 | 56 | ||
4460 | === modified file 'src/platforms/android/server/graphic_buffer_allocator.h' | |||
4461 | --- src/platforms/android/server/graphic_buffer_allocator.h 2016-08-09 08:13:02 +0000 | |||
4462 | +++ src/platforms/android/server/graphic_buffer_allocator.h 2016-10-27 03:52:22 +0000 | |||
4463 | @@ -22,7 +22,7 @@ | |||
4464 | 22 | 22 | ||
4465 | 23 | #include <cstddef> // to fix missing #includes in graphics.h from hardware.h | 23 | #include <cstddef> // to fix missing #includes in graphics.h from hardware.h |
4466 | 24 | #include <hardware/hardware.h> | 24 | #include <hardware/hardware.h> |
4468 | 25 | #include "mir_toolkit/mir_native_buffer.h" | 25 | #include "mir_toolkit/mir_native_buffer.h" |
4469 | 26 | 26 | ||
4470 | 27 | #include "mir/graphics/buffer_properties.h" | 27 | #include "mir/graphics/buffer_properties.h" |
4471 | 28 | #include "mir/graphics/graphic_buffer_allocator.h" | 28 | #include "mir/graphics/graphic_buffer_allocator.h" |
4472 | 29 | 29 | ||
4473 | === modified file 'src/platforms/android/server/hwc_device.cpp' | |||
4474 | --- src/platforms/android/server/hwc_device.cpp 2016-10-12 06:56:27 +0000 | |||
4475 | +++ src/platforms/android/server/hwc_device.cpp 2016-10-27 03:52:22 +0000 | |||
4476 | @@ -92,7 +92,7 @@ | |||
4477 | 92 | { | 92 | { |
4478 | 93 | if (content.name == mga::DisplayName::primary) | 93 | if (content.name == mga::DisplayName::primary) |
4479 | 94 | lists[HWC_DISPLAY_PRIMARY] = content.list.native_list(); | 94 | lists[HWC_DISPLAY_PRIMARY] = content.list.native_list(); |
4481 | 95 | else if (content.name == mga::DisplayName::external) | 95 | else if (content.name == mga::DisplayName::external) |
4482 | 96 | lists[HWC_DISPLAY_EXTERNAL] = content.list.native_list(); | 96 | lists[HWC_DISPLAY_EXTERNAL] = content.list.native_list(); |
4483 | 97 | 97 | ||
4484 | 98 | content.list.setup_fb(content.context.last_rendered_buffer()); | 98 | content.list.setup_fb(content.context.last_rendered_buffer()); |
4485 | @@ -118,7 +118,7 @@ | |||
4486 | 118 | content.list.swap_occurred(); | 118 | content.list.swap_occurred(); |
4487 | 119 | purely_overlays = false; | 119 | purely_overlays = false; |
4488 | 120 | } | 120 | } |
4490 | 121 | 121 | ||
4491 | 122 | //setup overlays | 122 | //setup overlays |
4492 | 123 | for (auto& layer : content.list) | 123 | for (auto& layer : content.list) |
4493 | 124 | { | 124 | { |
4494 | 125 | 125 | ||
4495 | === modified file 'src/platforms/android/server/hwc_fallback_gl_renderer.cpp' | |||
4496 | --- src/platforms/android/server/hwc_fallback_gl_renderer.cpp 2016-08-09 08:13:02 +0000 | |||
4497 | +++ src/platforms/android/server/hwc_fallback_gl_renderer.cpp 2016-10-27 03:52:22 +0000 | |||
4498 | @@ -87,7 +87,7 @@ | |||
4499 | 87 | glUseProgram(*program); | 87 | glUseProgram(*program); |
4500 | 88 | 88 | ||
4501 | 89 | auto display_transform_uniform = glGetUniformLocation(*program, "display_transform"); | 89 | auto display_transform_uniform = glGetUniformLocation(*program, "display_transform"); |
4503 | 90 | set_display_transform(display_transform_uniform, screen_pos); | 90 | set_display_transform(display_transform_uniform, screen_pos); |
4504 | 91 | 91 | ||
4505 | 92 | position_attr = glGetAttribLocation(*program, "position"); | 92 | position_attr = glGetAttribLocation(*program, "position"); |
4506 | 93 | texcoord_attr = glGetAttribLocation(*program, "texcoord"); | 93 | texcoord_attr = glGetAttribLocation(*program, "texcoord"); |
4507 | 94 | 94 | ||
4508 | === modified file 'src/platforms/android/server/hwc_fb_device.cpp' | |||
4509 | --- src/platforms/android/server/hwc_fb_device.cpp 2016-10-12 06:03:15 +0000 | |||
4510 | +++ src/platforms/android/server/hwc_fb_device.cpp 2016-10-27 03:52:22 +0000 | |||
4511 | @@ -39,7 +39,7 @@ | |||
4512 | 39 | mga::HwcFbDevice::HwcFbDevice( | 39 | mga::HwcFbDevice::HwcFbDevice( |
4513 | 40 | std::shared_ptr<HwcWrapper> const& hwc_wrapper, | 40 | std::shared_ptr<HwcWrapper> const& hwc_wrapper, |
4514 | 41 | std::shared_ptr<framebuffer_device_t> const& fb_device) : | 41 | std::shared_ptr<framebuffer_device_t> const& fb_device) : |
4516 | 42 | hwc_wrapper(hwc_wrapper), | 42 | hwc_wrapper(hwc_wrapper), |
4517 | 43 | fb_device(fb_device), | 43 | fb_device(fb_device), |
4518 | 44 | vsync_subscription{ | 44 | vsync_subscription{ |
4519 | 45 | [hwc_wrapper, this]{ | 45 | [hwc_wrapper, this]{ |
4520 | 46 | 46 | ||
4521 | === modified file 'src/platforms/android/server/hwc_fb_device.h' | |||
4522 | --- src/platforms/android/server/hwc_fb_device.h 2016-09-02 08:19:31 +0000 | |||
4523 | +++ src/platforms/android/server/hwc_fb_device.h 2016-10-27 03:52:22 +0000 | |||
4524 | @@ -36,7 +36,7 @@ | |||
4525 | 36 | { | 36 | { |
4526 | 37 | class HwcWrapper; | 37 | class HwcWrapper; |
4527 | 38 | 38 | ||
4529 | 39 | class HwcFbDevice : public DisplayDevice | 39 | class HwcFbDevice : public DisplayDevice |
4530 | 40 | { | 40 | { |
4531 | 41 | public: | 41 | public: |
4532 | 42 | HwcFbDevice(std::shared_ptr<HwcWrapper> const& hwc_wrapper, | 42 | HwcFbDevice(std::shared_ptr<HwcWrapper> const& hwc_wrapper, |
4533 | 43 | 43 | ||
4534 | === modified file 'src/platforms/android/server/hwc_layerlist.cpp' | |||
4535 | --- src/platforms/android/server/hwc_layerlist.cpp 2016-01-29 08:18:22 +0000 | |||
4536 | +++ src/platforms/android/server/hwc_layerlist.cpp 2016-10-27 03:52:22 +0000 | |||
4537 | @@ -80,7 +80,7 @@ | |||
4538 | 80 | mode = Mode::target_only; | 80 | mode = Mode::target_only; |
4539 | 81 | else if (renderlist.empty() && !layer_adapter->needs_fb_target()) | 81 | else if (renderlist.empty() && !layer_adapter->needs_fb_target()) |
4540 | 82 | mode = Mode::skip_only; | 82 | mode = Mode::skip_only; |
4542 | 83 | else | 83 | else |
4543 | 84 | mode = Mode::no_extra_layers; | 84 | mode = Mode::no_extra_layers; |
4544 | 85 | } | 85 | } |
4545 | 86 | 86 | ||
4546 | @@ -138,12 +138,12 @@ | |||
4547 | 138 | 138 | ||
4548 | 139 | std::list<mga::HwcLayerEntry>::iterator mga::LayerList::begin() | 139 | std::list<mga::HwcLayerEntry>::iterator mga::LayerList::begin() |
4549 | 140 | { | 140 | { |
4551 | 141 | return layers.begin(); | 141 | return layers.begin(); |
4552 | 142 | } | 142 | } |
4553 | 143 | 143 | ||
4554 | 144 | std::list<mga::HwcLayerEntry>::iterator mga::LayerList::end() | 144 | std::list<mga::HwcLayerEntry>::iterator mga::LayerList::end() |
4555 | 145 | { | 145 | { |
4557 | 146 | return layers.end(); | 146 | return layers.end(); |
4558 | 147 | } | 147 | } |
4559 | 148 | 148 | ||
4560 | 149 | hwc_display_contents_1_t* mga::LayerList::native_list() | 149 | hwc_display_contents_1_t* mga::LayerList::native_list() |
4561 | 150 | 150 | ||
4562 | === modified file 'src/platforms/android/server/hwc_layers.cpp' | |||
4563 | --- src/platforms/android/server/hwc_layers.cpp 2016-10-12 06:03:15 +0000 | |||
4564 | +++ src/platforms/android/server/hwc_layers.cpp 2016-10-27 03:52:22 +0000 | |||
4565 | @@ -41,7 +41,7 @@ | |||
4566 | 41 | void mga::FloatSourceCrop::fill_source_crop( | 41 | void mga::FloatSourceCrop::fill_source_crop( |
4567 | 42 | hwc_layer_1_t& hwc_layer, geometry::Rectangle const& crop_rect) const | 42 | hwc_layer_1_t& hwc_layer, geometry::Rectangle const& crop_rect) const |
4568 | 43 | { | 43 | { |
4570 | 44 | hwc_layer.sourceCropf = | 44 | hwc_layer.sourceCropf = |
4571 | 45 | { | 45 | { |
4572 | 46 | static_cast<float>(crop_rect.top_left.x.as_int()), | 46 | static_cast<float>(crop_rect.top_left.x.as_int()), |
4573 | 47 | static_cast<float>(crop_rect.top_left.y.as_int()), | 47 | static_cast<float>(crop_rect.top_left.y.as_int()), |
4574 | @@ -58,7 +58,7 @@ | |||
4575 | 58 | void mga::IntegerSourceCrop::fill_source_crop( | 58 | void mga::IntegerSourceCrop::fill_source_crop( |
4576 | 59 | hwc_layer_1_t& hwc_layer, geometry::Rectangle const& crop_rect) const | 59 | hwc_layer_1_t& hwc_layer, geometry::Rectangle const& crop_rect) const |
4577 | 60 | { | 60 | { |
4579 | 61 | hwc_layer.sourceCropi = | 61 | hwc_layer.sourceCropi = |
4580 | 62 | { | 62 | { |
4581 | 63 | crop_rect.top_left.x.as_int(), | 63 | crop_rect.top_left.x.as_int(), |
4582 | 64 | crop_rect.top_left.y.as_int(), | 64 | crop_rect.top_left.y.as_int(), |
4583 | @@ -75,7 +75,7 @@ | |||
4584 | 75 | void mga::Hwc10Adapter::fill_source_crop( | 75 | void mga::Hwc10Adapter::fill_source_crop( |
4585 | 76 | hwc_layer_1_t& hwc_layer, geometry::Rectangle const& crop_rect) const | 76 | hwc_layer_1_t& hwc_layer, geometry::Rectangle const& crop_rect) const |
4586 | 77 | { | 77 | { |
4588 | 78 | hwc_layer.sourceCropi = | 78 | hwc_layer.sourceCropi = |
4589 | 79 | { | 79 | { |
4590 | 80 | crop_rect.top_left.x.as_int(), | 80 | crop_rect.top_left.x.as_int(), |
4591 | 81 | crop_rect.top_left.y.as_int(), | 81 | crop_rect.top_left.y.as_int(), |
4592 | @@ -209,7 +209,7 @@ | |||
4593 | 209 | hwc_layer->planeAlpha = plane_alpha_max; | 209 | hwc_layer->planeAlpha = plane_alpha_max; |
4594 | 210 | 210 | ||
4595 | 211 | /* note, if the sourceCrop and DisplayFrame sizes differ, the output will be linearly scaled */ | 211 | /* note, if the sourceCrop and DisplayFrame sizes differ, the output will be linearly scaled */ |
4597 | 212 | hwc_layer->displayFrame = | 212 | hwc_layer->displayFrame = |
4598 | 213 | { | 213 | { |
4599 | 214 | position.top_left.x.as_int(), | 214 | position.top_left.x.as_int(), |
4600 | 215 | position.top_left.y.as_int(), | 215 | position.top_left.y.as_int(), |
4601 | 216 | 216 | ||
4602 | === modified file 'src/platforms/android/server/hwc_layers.h' | |||
4603 | --- src/platforms/android/server/hwc_layers.h 2016-09-20 04:32:25 +0000 | |||
4604 | +++ src/platforms/android/server/hwc_layers.h 2016-10-27 03:52:22 +0000 | |||
4605 | @@ -53,8 +53,8 @@ | |||
4606 | 53 | virtual bool needs_fb_target() const = 0; | 53 | virtual bool needs_fb_target() const = 0; |
4607 | 54 | virtual ~LayerAdapter() = default; | 54 | virtual ~LayerAdapter() = default; |
4608 | 55 | LayerAdapter() = default; | 55 | LayerAdapter() = default; |
4611 | 56 | LayerAdapter(LayerAdapter const&) = delete; | 56 | LayerAdapter(LayerAdapter const&) = delete; |
4612 | 57 | LayerAdapter& operator=(LayerAdapter const&) = delete; | 57 | LayerAdapter& operator=(LayerAdapter const&) = delete; |
4613 | 58 | }; | 58 | }; |
4614 | 59 | 59 | ||
4615 | 60 | //HWC 1.0 has int sourceCrop and no fbtarget | 60 | //HWC 1.0 has int sourceCrop and no fbtarget |
4616 | @@ -100,7 +100,7 @@ | |||
4617 | 100 | 100 | ||
4618 | 101 | HWCLayer& operator=(HWCLayer const& layer) = delete; | 101 | HWCLayer& operator=(HWCLayer const& layer) = delete; |
4619 | 102 | HWCLayer(HWCLayer const& layer) = delete; | 102 | HWCLayer(HWCLayer const& layer) = delete; |
4621 | 103 | 103 | ||
4622 | 104 | bool setup_layer( | 104 | bool setup_layer( |
4623 | 105 | LayerType type, | 105 | LayerType type, |
4624 | 106 | geometry::Rectangle const& position, | 106 | geometry::Rectangle const& position, |
4625 | 107 | 107 | ||
4626 | === modified file 'src/platforms/android/server/hwc_loggers.cpp' | |||
4627 | --- src/platforms/android/server/hwc_loggers.cpp 2016-04-14 06:59:49 +0000 | |||
4628 | +++ src/platforms/android/server/hwc_loggers.cpp 2016-10-27 03:52:22 +0000 | |||
4629 | @@ -76,9 +76,9 @@ | |||
4630 | 76 | case 0: | 76 | case 0: |
4631 | 77 | return str << std::string{"NONE"}; | 77 | return str << std::string{"NONE"}; |
4632 | 78 | case HWC_TRANSFORM_ROT_90: | 78 | case HWC_TRANSFORM_ROT_90: |
4634 | 79 | return str << std::string{"ROT_90"}; | 79 | return str << std::string{"ROT_90"}; |
4635 | 80 | case HWC_TRANSFORM_ROT_180: | 80 | case HWC_TRANSFORM_ROT_180: |
4637 | 81 | return str << std::string{"ROT_180"}; | 81 | return str << std::string{"ROT_180"}; |
4638 | 82 | case HWC_TRANSFORM_ROT_270: | 82 | case HWC_TRANSFORM_ROT_270: |
4639 | 83 | return str << std::string{"ROT_270"}; | 83 | return str << std::string{"ROT_270"}; |
4640 | 84 | default: | 84 | default: |
4641 | @@ -124,10 +124,10 @@ | |||
4642 | 124 | } | 124 | } |
4643 | 125 | 125 | ||
4644 | 126 | struct HwcRectMember { int member; }; | 126 | struct HwcRectMember { int member; }; |
4646 | 127 | std::ostream& operator<<(std::ostream& str, HwcRectMember rect) | 127 | std::ostream& operator<<(std::ostream& str, HwcRectMember rect) |
4647 | 128 | { | 128 | { |
4648 | 129 | StreamFormatter stream_format(str, rect_entry_column_size, std::ios_base::right); | 129 | StreamFormatter stream_format(str, rect_entry_column_size, std::ios_base::right); |
4650 | 130 | return str << rect.member; | 130 | return str << rect.member; |
4651 | 131 | } | 131 | } |
4652 | 132 | 132 | ||
4653 | 133 | struct HwcRect { hwc_rect_t const& rect; }; | 133 | struct HwcRect { hwc_rect_t const& rect; }; |
4654 | @@ -165,7 +165,7 @@ | |||
4655 | 165 | return str << "OFF"; | 165 | return str << "OFF"; |
4656 | 166 | } | 166 | } |
4657 | 167 | 167 | ||
4659 | 168 | std::ostream& operator<<(std::ostream& str, mga::HwcVersion version) | 168 | std::ostream& operator<<(std::ostream& str, mga::HwcVersion version) |
4660 | 169 | { | 169 | { |
4661 | 170 | switch (version) | 170 | switch (version) |
4662 | 171 | { | 171 | { |
4663 | 172 | 172 | ||
4664 | === modified file 'src/platforms/android/server/hwc_wrapper.h' | |||
4665 | --- src/platforms/android/server/hwc_wrapper.h 2016-09-02 08:19:31 +0000 | |||
4666 | +++ src/platforms/android/server/hwc_wrapper.h 2016-10-27 03:52:22 +0000 | |||
4667 | @@ -48,7 +48,7 @@ | |||
4668 | 48 | virtual void prepare(std::array<hwc_display_contents_1*, HWC_NUM_DISPLAY_TYPES> const&) const = 0; | 48 | virtual void prepare(std::array<hwc_display_contents_1*, HWC_NUM_DISPLAY_TYPES> const&) const = 0; |
4669 | 49 | virtual void set(std::array<hwc_display_contents_1*, HWC_NUM_DISPLAY_TYPES> const&) const = 0; | 49 | virtual void set(std::array<hwc_display_contents_1*, HWC_NUM_DISPLAY_TYPES> const&) const = 0; |
4670 | 50 | //receive vsync, invalidate, and hotplug events from the driver. | 50 | //receive vsync, invalidate, and hotplug events from the driver. |
4672 | 51 | //As with the HWC api, these events MUST NOT call-back to the other functions in HwcWrapper. | 51 | //As with the HWC api, these events MUST NOT call-back to the other functions in HwcWrapper. |
4673 | 52 | virtual void subscribe_to_events( | 52 | virtual void subscribe_to_events( |
4674 | 53 | void const* subscriber, | 53 | void const* subscriber, |
4675 | 54 | std::function<void(DisplayName, graphics::Frame::Timestamp)> const& vsync_callback, | 54 | std::function<void(DisplayName, graphics::Frame::Timestamp)> const& vsync_callback, |
4676 | 55 | 55 | ||
4677 | === modified file 'src/platforms/android/server/real_hwc_wrapper.cpp' | |||
4678 | --- src/platforms/android/server/real_hwc_wrapper.cpp 2016-09-19 09:53:06 +0000 | |||
4679 | +++ src/platforms/android/server/real_hwc_wrapper.cpp 2016-10-27 03:52:22 +0000 | |||
4680 | @@ -32,7 +32,7 @@ | |||
4681 | 32 | { | 32 | { |
4682 | 33 | int num_displays(std::array<hwc_display_contents_1_t*, HWC_NUM_DISPLAY_TYPES> const& displays) | 33 | int num_displays(std::array<hwc_display_contents_1_t*, HWC_NUM_DISPLAY_TYPES> const& displays) |
4683 | 34 | { | 34 | { |
4685 | 35 | return std::distance(displays.begin(), | 35 | return std::distance(displays.begin(), |
4686 | 36 | std::find_if(displays.begin(), displays.end(), | 36 | std::find_if(displays.begin(), displays.end(), |
4687 | 37 | [](hwc_display_contents_1_t* d){ return d == nullptr; })); | 37 | [](hwc_display_contents_1_t* d){ return d == nullptr; })); |
4688 | 38 | } | 38 | } |
4689 | 39 | 39 | ||
4690 | === modified file 'src/platforms/android/server/resource_factory.cpp' | |||
4691 | --- src/platforms/android/server/resource_factory.cpp 2016-07-18 07:38:38 +0000 | |||
4692 | +++ src/platforms/android/server/resource_factory.cpp 2016-10-27 03:52:22 +0000 | |||
4693 | @@ -83,7 +83,7 @@ | |||
4694 | 83 | case HWC_DEVICE_API_VERSION_1_5: version = mga::HwcVersion::hwc15; break; | 83 | case HWC_DEVICE_API_VERSION_1_5: version = mga::HwcVersion::hwc15; break; |
4695 | 84 | default: version = mga::HwcVersion::unknown; break; | 84 | default: version = mga::HwcVersion::unknown; break; |
4696 | 85 | } | 85 | } |
4698 | 86 | 86 | ||
4699 | 87 | return std::make_tuple( | 87 | return std::make_tuple( |
4700 | 88 | std::make_shared<mga::RealHwcWrapper>(hwc_native, hwc_report), | 88 | std::make_shared<mga::RealHwcWrapper>(hwc_native, hwc_report), |
4701 | 89 | version); | 89 | version); |
4702 | 90 | 90 | ||
4703 | === modified file 'src/platforms/android/utils/test_android_hardware_sanity.cpp' | |||
4704 | --- src/platforms/android/utils/test_android_hardware_sanity.cpp 2016-10-12 06:56:27 +0000 | |||
4705 | +++ src/platforms/android/utils/test_android_hardware_sanity.cpp 2016-10-27 03:52:22 +0000 | |||
4706 | @@ -87,7 +87,7 @@ | |||
4707 | 87 | char const* argv = "./aa"; | 87 | char const* argv = "./aa"; |
4708 | 88 | NoCompositingServer config{1, &argv}; | 88 | NoCompositingServer config{1, &argv}; |
4709 | 89 | }; | 89 | }; |
4711 | 90 | 90 | ||
4712 | 91 | struct AndroidMirDiagnostics : testing::Test | 91 | struct AndroidMirDiagnostics : testing::Test |
4713 | 92 | { | 92 | { |
4714 | 93 | static void SetUpTestCase() | 93 | static void SetUpTestCase() |
4715 | @@ -302,7 +302,7 @@ | |||
4716 | 302 | bool valid_content = false; | 302 | bool valid_content = false; |
4717 | 303 | std::vector<unsigned char> px( | 303 | std::vector<unsigned char> px( |
4718 | 304 | buffer->size().height.as_int() * | 304 | buffer->size().height.as_int() * |
4720 | 305 | buffer->size().width.as_int() * | 305 | buffer->size().width.as_int() * |
4721 | 306 | MIR_BYTES_PER_PIXEL(buffer->pixel_format())); | 306 | MIR_BYTES_PER_PIXEL(buffer->pixel_format())); |
4722 | 307 | uint32_t green{0x00FF00FF}; | 307 | uint32_t green{0x00FF00FF}; |
4723 | 308 | mt::DrawPatternSolid green_pattern(green); | 308 | mt::DrawPatternSolid green_pattern(green); |
4724 | 309 | 309 | ||
4725 | === modified file 'src/platforms/common/server/kms-utils/kms_connector.cpp' | |||
4726 | --- src/platforms/common/server/kms-utils/kms_connector.cpp 2016-09-20 04:32:25 +0000 | |||
4727 | +++ src/platforms/common/server/kms-utils/kms_connector.cpp 2016-10-27 03:52:22 +0000 | |||
4728 | @@ -187,7 +187,7 @@ | |||
4729 | 187 | { | 187 | { |
4730 | 188 | std::tie(crtc, crtc_index) = find_crtc_and_index_for_connector(resources, connector); | 188 | std::tie(crtc, crtc_index) = find_crtc_and_index_for_connector(resources, connector); |
4731 | 189 | } | 189 | } |
4733 | 190 | 190 | ||
4734 | 191 | mgk::PlaneResources plane_res{drm_fd}; | 191 | mgk::PlaneResources plane_res{drm_fd}; |
4735 | 192 | 192 | ||
4736 | 193 | for (auto& plane : plane_res.planes()) | 193 | for (auto& plane : plane_res.planes()) |
4737 | 194 | 194 | ||
4738 | === modified file 'src/platforms/eglstream-kms/client/client_platform.cpp' | |||
4739 | --- src/platforms/eglstream-kms/client/client_platform.cpp 2016-10-12 06:03:15 +0000 | |||
4740 | +++ src/platforms/eglstream-kms/client/client_platform.cpp 2016-10-27 03:52:22 +0000 | |||
4741 | @@ -71,7 +71,7 @@ | |||
4742 | 71 | { | 71 | { |
4743 | 72 | if (auto native = dynamic_cast<mir::graphics::eglstream::NativeBuffer*>(buf)) | 72 | if (auto native = dynamic_cast<mir::graphics::eglstream::NativeBuffer*>(buf)) |
4744 | 73 | return native; | 73 | return native; |
4746 | 74 | BOOST_THROW_EXCEPTION(std::invalid_argument("could not convert to NativeBuffer")); | 74 | BOOST_THROW_EXCEPTION(std::invalid_argument("could not convert to NativeBuffer")); |
4747 | 75 | } | 75 | } |
4748 | 76 | 76 | ||
4749 | 77 | 77 | ||
4750 | 78 | 78 | ||
4751 | === modified file 'src/platforms/evdev/CMakeLists.txt' | |||
4752 | --- src/platforms/evdev/CMakeLists.txt 2016-08-10 07:57:05 +0000 | |||
4753 | +++ src/platforms/evdev/CMakeLists.txt 2016-10-27 03:52:22 +0000 | |||
4754 | @@ -7,7 +7,7 @@ | |||
4755 | 7 | endif () | 7 | endif () |
4756 | 8 | 8 | ||
4757 | 9 | include_directories( | 9 | include_directories( |
4759 | 10 | ${LIBINPUT_CFLAGS} | 10 | ${LIBINPUT_CFLAGS} |
4760 | 11 | ${PROJECT_SOURCE_DIR}/include/platform | 11 | ${PROJECT_SOURCE_DIR}/include/platform |
4761 | 12 | ${PROJECT_SOURCE_DIR}/src/include/platform # udev Context | 12 | ${PROJECT_SOURCE_DIR}/src/include/platform # udev Context |
4762 | 13 | ${PROJECT_SOURCE_DIR}/src/include/common # raii.h | 13 | ${PROJECT_SOURCE_DIR}/src/include/common # raii.h |
4763 | 14 | 14 | ||
4764 | === modified file 'src/platforms/mesa/server/buffer_allocator.cpp' | |||
4765 | --- src/platforms/mesa/server/buffer_allocator.cpp 2016-10-11 07:12:33 +0000 | |||
4766 | +++ src/platforms/mesa/server/buffer_allocator.cpp 2016-10-27 03:52:22 +0000 | |||
4767 | @@ -284,7 +284,7 @@ | |||
4768 | 284 | auto const stride = geom::Stride{ | 284 | auto const stride = geom::Stride{ |
4769 | 285 | MIR_BYTES_PER_PIXEL(buffer_properties.format) * | 285 | MIR_BYTES_PER_PIXEL(buffer_properties.format) * |
4770 | 286 | buffer_properties.size.width.as_uint32_t()}; | 286 | buffer_properties.size.width.as_uint32_t()}; |
4772 | 287 | size_t const size_in_bytes = | 287 | size_t const size_in_bytes = |
4773 | 288 | stride.as_int() * buffer_properties.size.height.as_int(); | 288 | stride.as_int() * buffer_properties.size.height.as_int(); |
4774 | 289 | auto shm_file = | 289 | auto shm_file = |
4775 | 290 | std::make_unique<mgc::AnonymousShmFile>(size_in_bytes); | 290 | std::make_unique<mgc::AnonymousShmFile>(size_in_bytes); |
4776 | @@ -331,7 +331,7 @@ | |||
4777 | 331 | gbm_import_fd_data data; | 331 | gbm_import_fd_data data; |
4778 | 332 | data.fd = package->fd[0]; | 332 | data.fd = package->fd[0]; |
4779 | 333 | data.width = package->width; | 333 | data.width = package->width; |
4781 | 334 | data.height = package->height; | 334 | data.height = package->height; |
4782 | 335 | data.stride = package->stride; | 335 | data.stride = package->stride; |
4783 | 336 | data.format = format; | 336 | data.format = format; |
4784 | 337 | 337 | ||
4785 | 338 | 338 | ||
4786 | === modified file 'src/platforms/mesa/server/kms/cursor.cpp' | |||
4787 | --- src/platforms/mesa/server/kms/cursor.cpp 2016-08-05 07:33:22 +0000 | |||
4788 | +++ src/platforms/mesa/server/kms/cursor.cpp 2016-10-27 03:52:22 +0000 | |||
4789 | @@ -71,7 +71,7 @@ | |||
4790 | 71 | { | 71 | { |
4791 | 72 | // on some older hardware drm incorrectly reports the cursor size | 72 | // on some older hardware drm incorrectly reports the cursor size |
4792 | 73 | bool const force_64x64_cursor = getenv(mir_drm_cursor_64x64); | 73 | bool const force_64x64_cursor = getenv(mir_drm_cursor_64x64); |
4794 | 74 | 74 | ||
4795 | 75 | uint64_t height = fallback_cursor_size; | 75 | uint64_t height = fallback_cursor_size; |
4796 | 76 | if (!force_64x64_cursor) | 76 | if (!force_64x64_cursor) |
4797 | 77 | drmGetCap(fd, DRM_CAP_CURSOR_HEIGHT, &height); | 77 | drmGetCap(fd, DRM_CAP_CURSOR_HEIGHT, &height); |
4798 | @@ -82,7 +82,7 @@ | |||
4799 | 82 | { | 82 | { |
4800 | 83 | // on some older hardware drm incorrectly reports the cursor size | 83 | // on some older hardware drm incorrectly reports the cursor size |
4801 | 84 | bool const force_64x64_cursor = getenv(mir_drm_cursor_64x64); | 84 | bool const force_64x64_cursor = getenv(mir_drm_cursor_64x64); |
4803 | 85 | 85 | ||
4804 | 86 | uint64_t width = fallback_cursor_size; | 86 | uint64_t width = fallback_cursor_size; |
4805 | 87 | if (!force_64x64_cursor) | 87 | if (!force_64x64_cursor) |
4806 | 88 | drmGetCap(fd, DRM_CAP_CURSOR_WIDTH, &width); | 88 | drmGetCap(fd, DRM_CAP_CURSOR_WIDTH, &width); |
4807 | @@ -149,7 +149,7 @@ | |||
4808 | 149 | { | 149 | { |
4809 | 150 | BOOST_THROW_EXCEPTION(std::logic_error("Image is too big for GBM cursor buffer")); | 150 | BOOST_THROW_EXCEPTION(std::logic_error("Image is too big for GBM cursor buffer")); |
4810 | 151 | } | 151 | } |
4812 | 152 | 152 | ||
4813 | 153 | size_t buffer_stride = gbm_bo_get_stride(buffer); // in bytes | 153 | size_t buffer_stride = gbm_bo_get_stride(buffer); // in bytes |
4814 | 154 | size_t padded_size = buffer_stride * buffer_height; | 154 | size_t padded_size = buffer_stride * buffer_height; |
4815 | 155 | auto padded = std::unique_ptr<uint8_t[]>(new uint8_t[padded_size]); | 155 | auto padded = std::unique_ptr<uint8_t[]>(new uint8_t[padded_size]); |
4816 | @@ -198,7 +198,7 @@ | |||
4817 | 198 | write_buffer_data_locked(lg, cursor_image.as_argb_8888(), count); | 198 | write_buffer_data_locked(lg, cursor_image.as_argb_8888(), count); |
4818 | 199 | } | 199 | } |
4819 | 200 | hotspot = cursor_image.hotspot(); | 200 | hotspot = cursor_image.hotspot(); |
4821 | 201 | 201 | ||
4822 | 202 | // The hotspot may have changed so we need to call drmModeSetCursor again if the cursor was already visible. | 202 | // The hotspot may have changed so we need to call drmModeSetCursor again if the cursor was already visible. |
4823 | 203 | if (visible) | 203 | if (visible) |
4824 | 204 | place_cursor_at_locked(lg, current_position, ForceState); | 204 | place_cursor_at_locked(lg, current_position, ForceState); |
4825 | @@ -280,7 +280,7 @@ | |||
4826 | 280 | if (output_rect.contains(position)) | 280 | if (output_rect.contains(position)) |
4827 | 281 | { | 281 | { |
4828 | 282 | auto dp = transform(output_rect, position - output_rect.top_left, orientation); | 282 | auto dp = transform(output_rect, position - output_rect.top_left, orientation); |
4830 | 283 | 283 | ||
4831 | 284 | // It's a little strange that we implement hotspot this way as there is | 284 | // It's a little strange that we implement hotspot this way as there is |
4832 | 285 | // drmModeSetCursor2 with hotspot support. However it appears to not actually | 285 | // drmModeSetCursor2 with hotspot support. However it appears to not actually |
4833 | 286 | // work on radeon and intel. There also seems to be precedent in weston for | 286 | // work on radeon and intel. There also seems to be precedent in weston for |
4834 | 287 | 287 | ||
4835 | === modified file 'src/platforms/mesa/server/kms/cursor.h' | |||
4836 | --- src/platforms/mesa/server/kms/cursor.h 2016-08-05 07:33:22 +0000 | |||
4837 | +++ src/platforms/mesa/server/kms/cursor.h 2016-10-27 03:52:22 +0000 | |||
4838 | @@ -89,7 +89,7 @@ | |||
4839 | 89 | void place_cursor_at_locked(std::lock_guard<std::mutex> const&, geometry::Point position, ForceCursorState force_state); | 89 | void place_cursor_at_locked(std::lock_guard<std::mutex> const&, geometry::Point position, ForceCursorState force_state); |
4840 | 90 | void write_buffer_data_locked(std::lock_guard<std::mutex> const&, void const* data, size_t count); | 90 | void write_buffer_data_locked(std::lock_guard<std::mutex> const&, void const* data, size_t count); |
4841 | 91 | void pad_and_write_image_data_locked(std::lock_guard<std::mutex> const&, CursorImage const& image); | 91 | void pad_and_write_image_data_locked(std::lock_guard<std::mutex> const&, CursorImage const& image); |
4843 | 92 | 92 | ||
4844 | 93 | std::mutex guard; | 93 | std::mutex guard; |
4845 | 94 | 94 | ||
4846 | 95 | KMSOutputContainer& output_container; | 95 | KMSOutputContainer& output_container; |
4847 | 96 | 96 | ||
4848 | === modified file 'src/platforms/mesa/server/kms/display_buffer.cpp' | |||
4849 | --- src/platforms/mesa/server/kms/display_buffer.cpp 2016-10-12 06:03:15 +0000 | |||
4850 | +++ src/platforms/mesa/server/kms/display_buffer.cpp 2016-10-27 03:52:22 +0000 | |||
4851 | @@ -441,7 +441,7 @@ | |||
4852 | 441 | 441 | ||
4853 | 442 | visible_bypass_frame = scheduled_bypass_frame; | 442 | visible_bypass_frame = scheduled_bypass_frame; |
4854 | 443 | scheduled_bypass_frame = nullptr; | 443 | scheduled_bypass_frame = nullptr; |
4856 | 444 | 444 | ||
4857 | 445 | if (visible_composite_frame) | 445 | if (visible_composite_frame) |
4858 | 446 | visible_composite_frame->release(); | 446 | visible_composite_frame->release(); |
4859 | 447 | visible_composite_frame = scheduled_composite_frame; | 447 | visible_composite_frame = scheduled_composite_frame; |
4860 | 448 | 448 | ||
4861 | === modified file 'src/platforms/mesa/server/kms/guest_platform.h' | |||
4862 | --- src/platforms/mesa/server/kms/guest_platform.h 2016-07-20 04:54:07 +0000 | |||
4863 | +++ src/platforms/mesa/server/kms/guest_platform.h 2016-10-27 03:52:22 +0000 | |||
4864 | @@ -31,7 +31,7 @@ | |||
4865 | 31 | { | 31 | { |
4866 | 32 | namespace mesa | 32 | namespace mesa |
4867 | 33 | { | 33 | { |
4869 | 34 | class InternalNativeDisplay; | 34 | class InternalNativeDisplay; |
4870 | 35 | 35 | ||
4871 | 36 | class GuestPlatform : public graphics::Platform | 36 | class GuestPlatform : public graphics::Platform |
4872 | 37 | { | 37 | { |
4873 | 38 | 38 | ||
4874 | === modified file 'src/platforms/mesa/server/x11/graphics/display.cpp' | |||
4875 | --- src/platforms/mesa/server/x11/graphics/display.cpp 2016-10-12 06:03:15 +0000 | |||
4876 | +++ src/platforms/mesa/server/x11/graphics/display.cpp 2016-10-27 03:52:22 +0000 | |||
4877 | @@ -203,7 +203,7 @@ | |||
4878 | 203 | XMapWindow(x_dpy, win); | 203 | XMapWindow(x_dpy, win); |
4879 | 204 | 204 | ||
4880 | 205 | XEvent xev; | 205 | XEvent xev; |
4882 | 206 | do | 206 | do |
4883 | 207 | { | 207 | { |
4884 | 208 | XNextEvent(x_dpy, &xev); | 208 | XNextEvent(x_dpy, &xev); |
4885 | 209 | } | 209 | } |
4886 | 210 | 210 | ||
4887 | === modified file 'src/platforms/mesa/server/x11/symbols.map.in' | |||
4888 | --- src/platforms/mesa/server/x11/symbols.map.in 2016-01-29 08:18:22 +0000 | |||
4889 | +++ src/platforms/mesa/server/x11/symbols.map.in 2016-10-27 03:52:22 +0000 | |||
4890 | @@ -1,5 +1,5 @@ | |||
4891 | 1 | @MIR_SERVER_GRAPHICS_PLATFORM_VERSION@ { | 1 | @MIR_SERVER_GRAPHICS_PLATFORM_VERSION@ { |
4893 | 2 | global: | 2 | global: |
4894 | 3 | add_graphics_platform_options; | 3 | add_graphics_platform_options; |
4895 | 4 | probe_graphics_platform; | 4 | probe_graphics_platform; |
4896 | 5 | create_host_platform; | 5 | create_host_platform; |
4897 | @@ -9,7 +9,7 @@ | |||
4898 | 9 | }; | 9 | }; |
4899 | 10 | 10 | ||
4900 | 11 | @MIR_SERVER_INPUT_PLATFORM_VERSION@ { | 11 | @MIR_SERVER_INPUT_PLATFORM_VERSION@ { |
4902 | 12 | global: | 12 | global: |
4903 | 13 | add_input_platform_options; | 13 | add_input_platform_options; |
4904 | 14 | create_input_platform; | 14 | create_input_platform; |
4905 | 15 | probe_input_platform; | 15 | probe_input_platform; |
4906 | 16 | 16 | ||
4907 | === modified file 'src/protobuf/mir_protobuf.proto' | |||
4908 | --- src/protobuf/mir_protobuf.proto 2016-10-12 06:03:15 +0000 | |||
4909 | +++ src/protobuf/mir_protobuf.proto 2016-10-27 03:52:22 +0000 | |||
4910 | @@ -29,7 +29,7 @@ | |||
4911 | 29 | optional int32 state = 8; | 29 | optional int32 state = 8; |
4912 | 30 | optional int32 pref_orientation = 9; | 30 | optional int32 pref_orientation = 9; |
4913 | 31 | optional int32 parent_id = 10; | 31 | optional int32 parent_id = 10; |
4915 | 32 | 32 | ||
4916 | 33 | optional Rectangle aux_rect = 11; | 33 | optional Rectangle aux_rect = 11; |
4917 | 34 | optional int32 edge_attachment = 12; | 34 | optional int32 edge_attachment = 12; |
4918 | 35 | 35 | ||
4919 | @@ -45,7 +45,7 @@ | |||
4920 | 45 | optional PersistentSurfaceId parent_persistent_id = 21; | 45 | optional PersistentSurfaceId parent_persistent_id = 21; |
4921 | 46 | repeated Rectangle input_shape = 22; | 46 | repeated Rectangle input_shape = 22; |
4922 | 47 | optional int32 shell_chrome = 24; | 47 | optional int32 shell_chrome = 24; |
4924 | 48 | repeated StreamConfiguration stream = 25; | 48 | repeated StreamConfiguration stream = 25; |
4925 | 49 | optional int32 confine_pointer = 26; | 49 | optional int32 confine_pointer = 26; |
4926 | 50 | 50 | ||
4927 | 51 | optional int32 placement_hints = 27; | 51 | optional int32 placement_hints = 27; |
4928 | @@ -87,7 +87,7 @@ | |||
4929 | 87 | optional SurfaceAspectRatio min_aspect = 19; | 87 | optional SurfaceAspectRatio min_aspect = 19; |
4930 | 88 | optional SurfaceAspectRatio max_aspect = 20; | 88 | optional SurfaceAspectRatio max_aspect = 20; |
4931 | 89 | 89 | ||
4933 | 90 | repeated StreamConfiguration stream = 21; | 90 | repeated StreamConfiguration stream = 21; |
4934 | 91 | 91 | ||
4935 | 92 | optional PersistentSurfaceId parent_persistent_id = 22; | 92 | optional PersistentSurfaceId parent_persistent_id = 22; |
4936 | 93 | repeated Rectangle input_shape = 23; | 93 | repeated Rectangle input_shape = 23; |
4937 | @@ -145,11 +145,11 @@ | |||
4938 | 145 | 145 | ||
4939 | 146 | message BufferAllocation { | 146 | message BufferAllocation { |
4940 | 147 | optional BufferStreamId id = 1; | 147 | optional BufferStreamId id = 1; |
4942 | 148 | repeated BufferStreamParameters buffer_requests = 2; | 148 | repeated BufferStreamParameters buffer_requests = 2; |
4943 | 149 | }; | 149 | }; |
4944 | 150 | 150 | ||
4945 | 151 | message BufferRelease { | 151 | message BufferRelease { |
4947 | 152 | repeated Buffer buffers = 1; | 152 | repeated Buffer buffers = 1; |
4948 | 153 | optional BufferStreamId id = 2; | 153 | optional BufferStreamId id = 2; |
4949 | 154 | }; | 154 | }; |
4950 | 155 | 155 | ||
4951 | @@ -254,7 +254,7 @@ | |||
4952 | 254 | optional int32 pixel_format = 2; | 254 | optional int32 pixel_format = 2; |
4953 | 255 | optional int32 buffer_usage = 3; | 255 | optional int32 buffer_usage = 3; |
4954 | 256 | optional Buffer buffer = 4; | 256 | optional Buffer buffer = 4; |
4956 | 257 | 257 | ||
4957 | 258 | optional string error = 127; | 258 | optional string error = 127; |
4958 | 259 | optional StructuredError structured_error = 128; | 259 | optional StructuredError structured_error = 128; |
4959 | 260 | } | 260 | } |
4960 | @@ -269,9 +269,9 @@ | |||
4961 | 269 | 269 | ||
4962 | 270 | repeated sint32 fd = 7; | 270 | repeated sint32 fd = 7; |
4963 | 271 | optional int32 fds_on_side_channel = 8; | 271 | optional int32 fds_on_side_channel = 8; |
4965 | 272 | 272 | ||
4966 | 273 | repeated SurfaceSetting attributes = 9; | 273 | repeated SurfaceSetting attributes = 9; |
4968 | 274 | 274 | ||
4969 | 275 | optional BufferStream buffer_stream = 10; | 275 | optional BufferStream buffer_stream = 10; |
4970 | 276 | 276 | ||
4971 | 277 | optional string error = 127; | 277 | optional string error = 127; |
4972 | 278 | 278 | ||
4973 | === modified file 'src/server/compositor/CMakeLists.txt' | |||
4974 | --- src/server/compositor/CMakeLists.txt 2016-10-21 07:53:23 +0000 | |||
4975 | +++ src/server/compositor/CMakeLists.txt 2016-10-27 03:52:22 +0000 | |||
4976 | @@ -1,7 +1,7 @@ | |||
4977 | 1 | include_directories( | 1 | include_directories( |
4978 | 2 | ${PROJECT_SOURCE_DIR}/include/renderers/gl/ | 2 | ${PROJECT_SOURCE_DIR}/include/renderers/gl/ |
4979 | 3 | # TODO: This is a temporary dependency until renderers become proper plugins | 3 | # TODO: This is a temporary dependency until renderers become proper plugins |
4981 | 4 | ${PROJECT_SOURCE_DIR}/src/renderers/ | 4 | ${PROJECT_SOURCE_DIR}/src/renderers/ |
4982 | 5 | ) | 5 | ) |
4983 | 6 | 6 | ||
4984 | 7 | set( | 7 | set( |
4985 | 8 | 8 | ||
4986 | === modified file 'src/server/compositor/buffer_map.cpp' | |||
4987 | --- src/server/compositor/buffer_map.cpp 2016-10-11 07:12:33 +0000 | |||
4988 | +++ src/server/compositor/buffer_map.cpp 2016-10-27 03:52:22 +0000 | |||
4989 | @@ -70,7 +70,7 @@ | |||
4990 | 70 | auto it = checked_buffers_find(id, lk); | 70 | auto it = checked_buffers_find(id, lk); |
4991 | 71 | if (auto s = sink.lock()) | 71 | if (auto s = sink.lock()) |
4992 | 72 | s->remove_buffer(*it->second.buffer); | 72 | s->remove_buffer(*it->second.buffer); |
4994 | 73 | buffers.erase(it); | 73 | buffers.erase(it); |
4995 | 74 | } | 74 | } |
4996 | 75 | 75 | ||
4997 | 76 | void mc::BufferMap::send_buffer(mg::BufferID id) | 76 | void mc::BufferMap::send_buffer(mg::BufferID id) |
4998 | 77 | 77 | ||
4999 | === modified file 'src/server/compositor/buffer_map.h' | |||
5000 | --- src/server/compositor/buffer_map.h 2016-10-11 07:12:33 +0000 |
FAILED: Continuous integration, rev:3641 /mir-jenkins. ubuntu. com/job/ mir-ci/ 1430/ /mir-jenkins. ubuntu. com/job/ build-mir/ 1757/console /mir-jenkins. ubuntu. com/job/ build-0- fetch/1810 /mir-jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= vivid+overlay/ 1801/console /mir-jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= xenial+ overlay/ 1801/console /mir-jenkins. ubuntu. com/job/ build-1- sourcepkg/ release= yakkety/ 1801/console /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= amd64,compiler= clang,platform= mesa,release= vivid+overlay/ 1781 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= amd64,compiler= clang,platform= mesa,release= vivid+overlay/ 1781/artifact/ output/ *zip*/output. zip /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= amd64,compiler= gcc,platform= mesa,release= xenial+ overlay/ 1781 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= amd64,compiler= gcc,platform= mesa,release= xenial+ overlay/ 1781/artifact/ output/ *zip*/output. zip /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= amd64,compiler= gcc,platform= mesa,release= yakkety/ 1781 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= amd64,compiler= gcc,platform= mesa,release= yakkety/ 1781/artifact/ output/ *zip*/output. zip /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= cross-armhf, compiler= gcc,platform= android, release= vivid+overlay/ 1781 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= cross-armhf, compiler= gcc,platform= android, release= vivid+overlay/ 1781/artifact/ output/ *zip*/output. zip /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= i386,compiler= gcc,platform= android, release= vivid+overlay/ 1781 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= i386,compiler= gcc,platform= android, release= vivid+overlay/ 1781/artifact/ output/ *zip*/output. zip /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= i386,compiler= gcc,platform= mesa,release= xenial+ overlay/ 1781 /mir-jenkins. ubuntu. com/job/ build-2- binpkg- mir/arch= i386,compiler= gcc,platform= mesa,release= xenial+ overlay/ 1781/artifact/ output/ *zip*/output. zip
https:/
Executed test runs:
FAILURE: https:/
SUCCESS: https:/
FAILURE: https:/
FAILURE: https:/
FAILURE: 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: /mir-jenkins. ubuntu. com/job/ mir-ci/ 1430/rebuild
https:/