Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: Mir
Upstream-Contact: Alan Griffiths <alan.griffiths@canonical.com>
Source: https://github.com/MirServer/mir

Files:
 .mailmap
 SECURITY.md
 doc/*
 CMakeLists.txt
 README.md
 examples/client/make_shm_pool.c
 examples/client/make_shm_pool.h
 examples/client/mir_shell_demo.cpp
 examples/client/wayland_client.c
 examples/client/wayland_runner.cpp
 examples/client/wayland_runner.h
 examples/example-server-lib/decoration_provider.cpp
 examples/example-server-lib/decoration_provider.h
 examples/example-server-lib/floating_window_manager.cpp
 examples/example-server-lib/floating_window_manager.h
 examples/example-server-lib/sw_splash.cpp
 examples/example-server-lib/sw_splash.h
 examples/example-server-lib/tiling_window_manager.cpp
 examples/example-server-lib/tiling_window_manager.h
 examples/example-server-lib/wallpaper_config.cpp
 examples/example-server-lib/wallpaper_config.h
 examples/example-server-lib/wayland_app.cpp
 examples/example-server-lib/wayland_app.h
 examples/example-server-lib/wayland_shm.cpp
 examples/example-server-lib/wayland_shm.h
 examples/example-server-lib/wayland_surface.cpp
 examples/example-server-lib/wayland_surface.h
 examples/mir-x11-kiosk/x11_kiosk_main.cpp
 examples/mir-x11-kiosk/x11_kiosk_window_manager.cpp
 examples/mir-x11-kiosk/x11_kiosk_window_manager.h
 examples/mir_demo_server/server_example.cpp
 examples/mir_demo_server/server_example_input_event_filter.cpp
 examples/mir_demo_server/server_example_input_event_filter.h
 examples/mir_demo_server/server_example_input_filter.cpp
 examples/mir_demo_server/server_example_input_filter.h
 examples/mir_demo_server/server_example_test_client.cpp
 examples/mir_demo_server/server_example_test_client.h
 examples/miral-kiosk/kiosk_main.cpp
 examples/miral-kiosk/kiosk_window_manager.cpp
 examples/miral-kiosk/kiosk_window_manager.h
 examples/miral-shell/shell_main.cpp
 examples/miral-shell/spinner/eglapp.cpp
 examples/miral-shell/spinner/eglapp.h
 examples/miral-shell/spinner/eglspinner.cpp
 examples/miral-shell/spinner/miregl.cpp
 examples/miral-shell/spinner/miregl.h
 examples/miral-shell/spinner/png2header.py
 examples/miral-shell/spinner/splash.h
 examples/miral-system-compositor/system_compositor_main.cpp
 include/common/mir/executor.h
 include/common/mir/signal.h
 include/miral/miral/add_init_callback.h
 include/miral/miral/append_event_filter.h
 include/miral/miral/application.h
 include/miral/miral/application_authorizer.h
 include/miral/miral/application_info.h
 include/miral/miral/canonical_window_manager.h
 include/miral/miral/command_line_option.h
 include/miral/miral/config_file.h
 include/miral/miral/configuration_option.h
 include/miral/miral/cursor_theme.h
 include/miral/miral/custom_renderer.h
 include/miral/miral/decorations.h
 include/miral/miral/display_configuration_option.h
 include/miral/miral/external_client.h
 include/miral/miral/idle_listener.h
 include/miral/miral/input_configuration.h
 include/miral/miral/internal_client.h
 include/miral/miral/keymap.h
 include/miral/miral/lambda_as_function.h
 include/miral/miral/output.h
 include/miral/miral/prepend_event_filter.h
 include/miral/miral/runner.h
 include/miral/miral/session_lock_listener.h
 include/miral/miral/set_command_line_handler.h
 include/miral/miral/set_terminator.h
 include/miral/miral/set_window_management_policy.h
 include/miral/miral/toolkit_event.h
 include/miral/miral/wayland_extensions.h
 include/miral/miral/window.h
 include/miral/miral/window_info.h
 include/miral/miral/window_management_options.h
 include/miral/miral/window_management_policy.h
 include/miral/miral/window_manager_tools.h
 include/miral/miral/window_specification.h
 include/miral/miral/x11_support.h
 include/miral/miral/zone.h
 include/platform/mir/input/led_observer_registrar.h
 include/renderer/mir/renderer/renderer.h
 include/renderer/mir/renderer/renderer_factory.h
 include/test/mir/test/auto_unblock_thread.h
 include/test/mir/test/cross_process_action.h
 include/test/mir/test/cross_process_sync.h
 include/test/mir/test/death.h
 include/test/mir/test/display_config_matchers.h
 include/test/mir/test/doubles/fake_display.h
 include/test/mir/test/doubles/mock_egl.h
 include/test/mir/test/doubles/mock_gl.h
 include/test/mir/test/doubles/nested_mock_egl.h
 include/test/mir/test/doubles/null_gl_context.h
 include/test/mir/test/doubles/null_logger.h
 include/test/mir/test/doubles/stub_cursor.h
 include/test/mir/test/doubles/stub_cursor_image.h
 include/test/mir/test/doubles/stub_display_configuration.h
 include/test/mir/test/doubles/stub_keymap.h
 include/test/mir/test/empty_deleter.h
 include/test/mir/test/event_factory.h
 include/test/mir/test/event_matchers.h
 include/test/mir/test/fake_shared.h
 include/test/mir/test/geometry_matchers.h
 include/test/mir/test/pipe.h
 include/test/mir/test/popen.h
 include/test/mir/test/signal.h
 include/test/mir/test/signal_actions.h
 include/test/mir/test/spin_wait.h
 include/test/mir_test_framework/async_server_runner.h
 include/test/mir_test_framework/executable_path.h
 include/test/mir_test_framework/fake_input_device.h
 include/test/mir_test_framework/headless_display_buffer_compositor_factory.h
 include/test/mir_test_framework/headless_in_process_server.h
 include/test/mir_test_framework/headless_test.h
 include/test/mir_test_framework/main.h
 include/test/mir_test_framework/passthrough_tracker.h
 include/test/mir_test_framework/process.h
 include/test/mir_test_framework/server_runner.h
 include/test/mir_test_framework/stub_server_platform_factory.h
 include/test/mir_test_framework/temporary_environment_value.h
 include/test/miral/test_display_server.h
 include/test/miral/test_server.h
 include/wayland/mir/wayland/global.h
 include/wayland/mir/wayland/lifetime_tracker.h
 include/wayland/mir/wayland/protocol_error.h
 include/wayland/mir/wayland/resource.h
 include/wayland/mir/wayland/wayland_base.h
 include/wayland/mir/wayland/weak.h
 src/common/immediate_executor.cpp
 src/common/linearising_executor.cpp
 src/common/signal.cpp
 src/include/server/mir/basic_callback.h
 src/include/server/mir/compositor/buffer_stream.h
 src/include/server/mir/compositor/compositor.h
 src/include/server/mir/compositor/compositor_id.h
 src/include/server/mir/compositor/compositor_report.h
 src/include/server/mir/compositor/display_buffer_compositor.h
 src/include/server/mir/compositor/display_buffer_compositor_factory.h
 src/include/server/mir/compositor/display_listener.h
 src/include/server/mir/compositor/scene.h
 src/include/server/mir/compositor/scene_element.h
 src/include/server/mir/compositor/screen_shooter.h
 src/include/server/mir/compositor/stream.h
 src/include/server/mir/decoration_strategy.h
 src/include/server/mir/default_server_configuration.h
 src/include/server/mir/default_server_status_listener.h
 src/include/server/mir/display_changer.h
 src/include/server/mir/display_server.h
 src/include/server/mir/emergency_cleanup.h
 src/include/server/mir/frontend/buffer_stream.h
 src/include/server/mir/frontend/connector.h
 src/include/server/mir/frontend/display_changer.h
 src/include/server/mir/frontend/drag_icon_controller.h
 src/include/server/mir/frontend/event_sink.h
 src/include/server/mir/frontend/input_configuration_changer.h
 src/include/server/mir/frontend/pointer_input_dispatcher.h
 src/include/server/mir/frontend/prompt_session.h
 src/include/server/mir/frontend/session_authorizer.h
 src/include/server/mir/frontend/session_credentials.h
 src/include/server/mir/frontend/surface.h
 src/include/server/mir/frontend/surface_stack.h
 src/include/server/mir/frontend/wayland.h
 src/include/server/mir/glib_main_loop.h
 src/include/server/mir/glib_main_loop_sources.h
 src/include/server/mir/graphics/default_display_configuration_policy.h
 src/include/server/mir/graphics/display_configuration_observer.h
 src/include/server/mir/graphics/null_display_configuration_observer.h
 src/include/server/mir/input/composite_event_filter.h
 src/include/server/mir/input/cursor_images.h
 src/include/server/mir/input/cursor_listener.h
 src/include/server/mir/input/device.h
 src/include/server/mir/input/event_filter.h
 src/include/server/mir/input/input_device_hub.h
 src/include/server/mir/input/input_device_observer.h
 src/include/server/mir/input/input_dispatcher.h
 src/include/server/mir/input/input_manager.h
 src/include/server/mir/input/input_probe.h
 src/include/server/mir/input/input_reception_mode.h
 src/include/server/mir/input/keyboard_observer.h
 src/include/server/mir/input/scene.h
 src/include/server/mir/input/seat.h
 src/include/server/mir/input/seat_observer.h
 src/include/server/mir/input/surface.h
 src/include/server/mir/input/touch_visualizer.h
 src/include/server/mir/input/validator.h
 src/include/server/mir/input/virtual_input_device.h
 src/include/server/mir/input/vt_filter.h
 src/include/server/mir/input/xkb_mapper_registrar.h
 src/include/server/mir/lockable_callback.h
 src/include/server/mir/lockable_callback_wrapper.h
 src/include/server/mir/main_loop.h
 src/include/server/mir/observer_multiplexer.h
 src/include/server/mir/observer_registrar.h
 src/include/server/mir/report_exception.h
 src/include/server/mir/run_mir.h
 src/include/server/mir/scene/application_not_responding_detector.h
 src/include/server/mir/scene/application_not_responding_detector_wrapper.h
 src/include/server/mir/scene/clipboard.h
 src/include/server/mir/scene/data_exchange.h
 src/include/server/mir/scene/idle_hub.h
 src/include/server/mir/scene/null_observer.h
 src/include/server/mir/scene/null_prompt_session_listener.h
 src/include/server/mir/scene/null_session_listener.h
 src/include/server/mir/scene/null_surface_observer.h
 src/include/server/mir/scene/observer.h
 src/include/server/mir/scene/output_properties_cache.h
 src/include/server/mir/scene/prompt_session.h
 src/include/server/mir/scene/prompt_session_creation_parameters.h
 src/include/server/mir/scene/prompt_session_listener.h
 src/include/server/mir/scene/prompt_session_manager.h
 src/include/server/mir/scene/scene_change_notification.h
 src/include/server/mir/scene/scene_report.h
 src/include/server/mir/scene/session.h
 src/include/server/mir/scene/session_container.h
 src/include/server/mir/scene/session_coordinator.h
 src/include/server/mir/scene/session_event_handler_register.h
 src/include/server/mir/scene/session_event_sink.h
 src/include/server/mir/scene/session_listener.h
 src/include/server/mir/scene/session_lock.h
 src/include/server/mir/scene/surface.h
 src/include/server/mir/scene/surface_event_source.h
 src/include/server/mir/scene/surface_factory.h
 src/include/server/mir/scene/surface_observer.h
 src/include/server/mir/scene/surface_observers.h
 src/include/server/mir/scene/surface_state_tracker.h
 src/include/server/mir/scene/text_input_hub.h
 src/include/server/mir/server.h
 src/include/server/mir/server_action_queue.h
 src/include/server/mir/server_configuration.h
 src/include/server/mir/server_status_listener.h
 src/include/server/mir/shell/abstract_shell.h
 src/include/server/mir/shell/decoration.h
 src/include/server/mir/shell/display_configuration_controller.h
 src/include/server/mir/shell/display_layout.h
 src/include/server/mir/shell/focus_controller.h
 src/include/server/mir/shell/idle_handler.h
 src/include/server/mir/shell/input_targeter.h
 src/include/server/mir/shell/persistent_surface_store.h
 src/include/server/mir/shell/shell.h
 src/include/server/mir/shell/shell_report.h
 src/include/server/mir/shell/shell_wrapper.h
 src/include/server/mir/shell/surface_specification.h
 src/include/server/mir/shell/surface_stack.h
 src/include/server/mir/shell/surface_stack_wrapper.h
 src/include/server/mir/shell/system_compositor_window_manager.h
 src/include/server/mir/shell/window_manager.h
 src/include/server/mir/shell/window_manager_builder.h
 src/include/server/mir/terminate_with_current_exception.h
 src/include/server/mir/time/alarm.h
 src/include/server/mir/time/alarm_factory.h
 src/miral/active_outputs.cpp
 src/miral/active_outputs.h
 src/miral/add_init_callback.cpp
 src/miral/append_event_filter.cpp
 src/miral/application.cpp
 src/miral/application_authorizer.cpp
 src/miral/application_info.cpp
 src/miral/application_info_internal.cpp
 src/miral/application_selector.cpp
 src/miral/application_selector.h
 src/miral/basic_window_manager.cpp
 src/miral/basic_window_manager.h
 src/miral/canonical_window_manager.cpp
 src/miral/config_file.cpp
 src/miral/configuration_option.cpp
 src/miral/cursor_theme.cpp
 src/miral/custom_renderer.cpp
 src/miral/decorations.cpp
 src/miral/display_configuration_listeners.cpp
 src/miral/display_configuration_listeners.h
 src/miral/display_configuration_option.cpp
 src/miral/external_client.cpp
 src/miral/fd_manager.cpp
 src/miral/fd_manager.h
 src/miral/idle_listener.cpp
 src/miral/input_configuration.cpp
 src/miral/input_device_config.cpp
 src/miral/input_device_config.h
 src/miral/input_device_configuration_options.h
 src/miral/internal_client.cpp
 src/miral/join_client_threads.h
 src/miral/keymap.cpp
 src/miral/launch_app.cpp
 src/miral/launch_app.h
 src/miral/mru_window_list.cpp
 src/miral/mru_window_list.h
 src/miral/output.cpp
 src/miral/prepend_event_filter.cpp
 src/miral/runner.cpp
 src/miral/session_lock_listener.cpp
 src/miral/set_command_line_handler.cpp
 src/miral/set_terminator.cpp
 src/miral/set_window_management_policy.cpp
 src/miral/static_display_config.cpp
 src/miral/static_display_config.h
 src/miral/system_compositor_window_manager.cpp
 src/miral/system_compositor_window_manager.h
 src/miral/version.h.in
 src/miral/window.cpp
 src/miral/window_info.cpp
 src/miral/window_info_defaults.h
 src/miral/window_info_internal.cpp
 src/miral/window_management_options.cpp
 src/miral/window_management_policy.cpp
 src/miral/window_management_trace.cpp
 src/miral/window_management_trace.h
 src/miral/window_manager_tools.cpp
 src/miral/window_manager_tools_implementation.h
 src/miral/window_specification.cpp
 src/miral/x11_support.cpp
 src/miral/xcursor_loader.cpp
 src/miral/xcursor_loader.h
 src/miral/zone.cpp
 src/platforms/evdev/button_utils.cpp
 src/platforms/evdev/button_utils.h
 src/platforms/wayland/input.cpp
 src/platforms/wayland/input_device.cpp
 src/platforms/wayland/input_platform.cpp
 src/platforms/wayland/input_platform.h
 src/platforms/x11/input/input.cpp
 src/platforms/x11/input/input_device.cpp
 src/platforms/x11/input/input_platform.cpp
 src/platforms/x11/input/input_platform.h
 src/renderers/gl/renderer.cpp
 src/renderers/gl/renderer.h
 src/renderers/gl/renderer_factory.cpp
 src/renderers/gl/renderer_factory.h
 src/server/basic_callback.cpp
 src/server/compositor/basic_screen_shooter.cpp
 src/server/compositor/basic_screen_shooter.h
 src/server/compositor/default_configuration.cpp
 src/server/compositor/default_display_buffer_compositor.cpp
 src/server/compositor/default_display_buffer_compositor.h
 src/server/compositor/default_display_buffer_compositor_factory.cpp
 src/server/compositor/default_display_buffer_compositor_factory.h
 src/server/compositor/multi_monitor_arbiter.cpp
 src/server/compositor/multi_monitor_arbiter.h
 src/server/compositor/multi_threaded_compositor.cpp
 src/server/compositor/multi_threaded_compositor.h
 src/server/compositor/null_screen_shooter.cpp
 src/server/compositor/null_screen_shooter.h
 src/server/compositor/occlusion.cpp
 src/server/compositor/occlusion.h
 src/server/compositor/stream.cpp
 src/server/console/default_configuration.cpp
 src/server/console/ioctl_vt_switcher.cpp
 src/server/console/ioctl_vt_switcher.h
 src/server/console/linux_virtual_terminal.cpp
 src/server/console/linux_virtual_terminal.h
 src/server/console/logind_console_services.cpp
 src/server/console/logind_console_services.h
 src/server/console/minimal_console_services.cpp
 src/server/console/minimal_console_services.h
 src/server/default_emergency_cleanup.cpp
 src/server/default_emergency_cleanup.h
 src/server/default_server_configuration.cpp
 src/server/display_server.cpp
 src/server/frontend_wayland/fractional_scale_v1.cpp
 src/server/frontend_wayland/fractional_scale_v1.h
 src/server/frontend_wayland/pointer_constraints_unstable_v1.cpp
 src/server/frontend_wayland/pointer_constraints_unstable_v1.h
 src/server/frontend_wayland/relative_pointer_unstable_v1.cpp
 src/server/frontend_wayland/relative_pointer_unstable_v1.h
 src/server/frontend_wayland/session_credentials.cpp
 src/server/frontend_wayland/shm.cpp
 src/server/frontend_wayland/shm.h
 src/server/frontend_wayland/std_layout_uptr.h
 src/server/frontend_wayland/wayland_default_configuration.cpp
 src/server/frontend_wayland/wl_region.cpp
 src/server/frontend_wayland/wl_region.h
 src/server/frontend_wayland/xdg_activation_v1.cpp
 src/server/frontend_wayland/xdg_activation_v1.h
 src/server/frontend_wayland/xdg_decoration_unstable_v1.cpp
 src/server/frontend_wayland/xdg_decoration_unstable_v1.h
 src/server/frontend_xwayland/xwayland_client_manager.cpp
 src/server/frontend_xwayland/xwayland_client_manager.h
 src/server/frontend_xwayland/xwayland_clipboard_provider.cpp
 src/server/frontend_xwayland/xwayland_clipboard_provider.h
 src/server/frontend_xwayland/xwayland_clipboard_source.cpp
 src/server/frontend_xwayland/xwayland_clipboard_source.h
 src/server/glib_main_loop.cpp
 src/server/glib_main_loop_sources.cpp
 src/server/graphics/default_configuration.cpp
 src/server/graphics/default_display_configuration_policy.cpp
 src/server/graphics/display_configuration_observer_multiplexer.cpp
 src/server/graphics/display_configuration_observer_multiplexer.h
 src/server/graphics/multiplexing_display.cpp
 src/server/graphics/multiplexing_display.h
 src/server/graphics/multiplexing_hw_cursor.cpp
 src/server/graphics/multiplexing_hw_cursor.h
 src/server/graphics/null_cursor.h
 src/server/graphics/platform_probe.cpp
 src/server/graphics/platform_probe.h
 src/server/graphics/software_cursor.cpp
 src/server/graphics/software_cursor.h
 src/server/input/basic_seat.cpp
 src/server/input/basic_seat.h
 src/server/input/builtin_cursor_images.cpp
 src/server/input/builtin_cursor_images.h
 src/server/input/config_changer.cpp
 src/server/input/config_changer.h
 src/server/input/cursor_controller.cpp
 src/server/input/cursor_controller.h
 src/server/input/default_configuration.cpp
 src/server/input/default_device.cpp
 src/server/input/default_device.h
 src/server/input/default_event_builder.cpp
 src/server/input/default_event_builder.h
 src/server/input/default_input_device_hub.cpp
 src/server/input/default_input_device_hub.h
 src/server/input/default_input_manager.cpp
 src/server/input/default_input_manager.h
 src/server/input/event_filter_chain_dispatcher.cpp
 src/server/input/event_filter_chain_dispatcher.h
 src/server/input/input_modifier_utils.cpp
 src/server/input/input_modifier_utils.h
 src/server/input/input_probe.cpp
 src/server/input/key_repeat_dispatcher.cpp
 src/server/input/key_repeat_dispatcher.h
 src/server/input/null_input_dispatcher.cpp
 src/server/input/null_input_dispatcher.h
 src/server/input/null_input_manager.h
 src/server/input/null_input_targeter.h
 src/server/input/seat_input_device_tracker.cpp
 src/server/input/seat_input_device_tracker.h
 src/server/input/seat_observer_multiplexer.cpp
 src/server/input/seat_observer_multiplexer.h
 src/server/input/surface_input_dispatcher.cpp
 src/server/input/surface_input_dispatcher.h
 src/server/input/touchspot_controller.cpp
 src/server/input/touchspot_controller.h
 src/server/input/validator.cpp
 src/server/input/virtual_input_device.cpp
 src/server/input/vt_filter.cpp
 src/server/input/xkb_mapper_registrar.cpp
 src/server/lockable_callback_wrapper.cpp
 src/server/report/default_server_configuration.cpp
 src/server/report/logging/compositor_report.cpp
 src/server/report/logging/compositor_report.h
 src/server/report/logging/display_configuration_report.cpp
 src/server/report/logging/display_configuration_report.h
 src/server/report/logging/display_report.cpp
 src/server/report/logging/display_report.h
 src/server/report/logging/input_report.cpp
 src/server/report/logging/input_report.h
 src/server/report/logging/logging_report_factory.cpp
 src/server/report/logging/scene_report.cpp
 src/server/report/logging/scene_report.h
 src/server/report/logging/seat_report.cpp
 src/server/report/logging/seat_report.h
 src/server/report/logging/shell_report.cpp
 src/server/report/logging/shell_report.h
 src/server/report/logging_report_factory.h
 src/server/report/lttng/compositor_report.cpp
 src/server/report/lttng/compositor_report.h
 src/server/report/lttng/compositor_report_tp.h
 src/server/report/lttng/display_report.cpp
 src/server/report/lttng/display_report.h
 src/server/report/lttng/display_report_tp.h
 src/server/report/lttng/input_report.cpp
 src/server/report/lttng/input_report.h
 src/server/report/lttng/input_report_tp.h
 src/server/report/lttng/lttng_report_factory.cpp
 src/server/report/lttng/lttng_utils.h
 src/server/report/lttng/scene_report.cpp
 src/server/report/lttng/scene_report.h
 src/server/report/lttng/scene_report_tp.h
 src/server/report/lttng/server_tracepoint_provider.cpp
 src/server/report/lttng/server_tracepoint_provider.h
 src/server/report/lttng/shared_library_prober_report.cpp
 src/server/report/lttng/shared_library_prober_report.h
 src/server/report/lttng/shared_library_prober_report_tp.h
 src/server/report/lttng_report_factory.h
 src/server/report/null/compositor_report.cpp
 src/server/report/null/compositor_report.h
 src/server/report/null/display_report.cpp
 src/server/report/null/display_report.h
 src/server/report/null/input_report.cpp
 src/server/report/null/input_report.h
 src/server/report/null/null_report_factory.cpp
 src/server/report/null/scene_report.cpp
 src/server/report/null/scene_report.h
 src/server/report/null/seat_report.cpp
 src/server/report/null/seat_report.h
 src/server/report/null/shell_report.cpp
 src/server/report/null/shell_report.h
 src/server/report/null_report_factory.h
 src/server/report/report_factory.h
 src/server/report/reports.cpp
 src/server/report/reports.h
 src/server/report_exception.cpp
 src/server/run_mir.cpp
 src/server/scene/application_not_responding_detector_wrapper.cpp
 src/server/scene/application_session.cpp
 src/server/scene/application_session.h
 src/server/scene/basic_clipboard.cpp
 src/server/scene/basic_clipboard.h
 src/server/scene/basic_idle_hub.cpp
 src/server/scene/basic_idle_hub.h
 src/server/scene/basic_surface.cpp
 src/server/scene/basic_surface.h
 src/server/scene/basic_text_input_hub.cpp
 src/server/scene/basic_text_input_hub.h
 src/server/scene/broadcasting_session_event_sink.cpp
 src/server/scene/broadcasting_session_event_sink.h
 src/server/scene/default_configuration.cpp
 src/server/scene/mediating_display_changer.cpp
 src/server/scene/mediating_display_changer.h
 src/server/scene/null_observer.cpp
 src/server/scene/null_surface_observer.cpp
 src/server/scene/output_properties_cache.cpp
 src/server/scene/prompt_session_container.cpp
 src/server/scene/prompt_session_container.h
 src/server/scene/prompt_session_impl.cpp
 src/server/scene/prompt_session_impl.h
 src/server/scene/prompt_session_manager_impl.cpp
 src/server/scene/prompt_session_manager_impl.h
 src/server/scene/rendering_tracker.cpp
 src/server/scene/rendering_tracker.h
 src/server/scene/scene_change_notification.cpp
 src/server/scene/session_container.cpp
 src/server/scene/session_manager.cpp
 src/server/scene/session_manager.h
 src/server/scene/surface_allocator.cpp
 src/server/scene/surface_allocator.h
 src/server/scene/surface_change_notification.cpp
 src/server/scene/surface_change_notification.h
 src/server/scene/surface_event_source.cpp
 src/server/scene/surface_stack.cpp
 src/server/scene/surface_stack.h
 src/server/scene/surface_state_tracker.cpp
 src/server/scene/timeout_application_not_responding_detector.cpp
 src/server/scene/timeout_application_not_responding_detector.h
 src/server/server.cpp
 src/server/shell/abstract_shell.cpp
 src/server/shell/basic_idle_handler.cpp
 src/server/shell/basic_idle_handler.h
 src/server/shell/decoration/basic_decoration.cpp
 src/server/shell/decoration/basic_decoration.h
 src/server/shell/decoration/basic_manager.cpp
 src/server/shell/decoration/basic_manager.h
 src/server/shell/decoration/decoration.h
 src/server/shell/decoration/input.cpp
 src/server/shell/decoration/input.h
 src/server/shell/decoration/manager.h
 src/server/shell/decoration/null_manager.h
 src/server/shell/decoration/renderer.cpp
 src/server/shell/decoration/renderer.h
 src/server/shell/decoration/threadsafe_access.h
 src/server/shell/decoration/window.cpp
 src/server/shell/decoration/window.h
 src/server/shell/default_configuration.cpp
 src/server/shell/default_persistent_surface_store.cpp
 src/server/shell/default_persistent_surface_store.h
 src/server/shell/graphics_display_layout.cpp
 src/server/shell/graphics_display_layout.h
 src/server/shell/persistent_surface_store.cpp
 src/server/shell/shell_wrapper.cpp
 src/server/shell/surface_specification.cpp
 src/server/shell/surface_stack_wrapper.cpp
 src/server/shell/system_compositor_window_manager.cpp
 src/server/shm_backing.cpp
 src/server/shm_backing.h
 src/server/terminate_with_current_exception.cpp
 src/server/version.h.in
 src/wayland/client.cpp
 src/wayland/generated/CMakeLists.txt
 src/wayland/generator/argument.cpp
 src/wayland/generator/argument.h
 src/wayland/generator/emitter.cpp
 src/wayland/generator/emitter.h
 src/wayland/generator/enum.cpp
 src/wayland/generator/enum.h
 src/wayland/generator/event.cpp
 src/wayland/generator/event.h
 src/wayland/generator/global.cpp
 src/wayland/generator/global.h
 src/wayland/generator/interface.cpp
 src/wayland/generator/interface.h
 src/wayland/generator/method.cpp
 src/wayland/generator/method.h
 src/wayland/generator/request.cpp
 src/wayland/generator/request.h
 src/wayland/generator/utils.cpp
 src/wayland/generator/utils.h
 src/wayland/generator/wrapper_generator.cpp
 src/wayland/global.cpp
 src/wayland/lifetime_tracker.cpp
 src/wayland/protocol_error.cpp
 src/wayland/resource.cpp
 src/wrapper.c
 tests/acceptance-tests/platforms/eglstream-kms_platform.cpp
 tests/acceptance-tests/platforms/gbm-kms_platform.cpp
 tests/acceptance-tests/platforms/platform_test_harness.h
 tests/acceptance-tests/platforms/renderer_generic_egl_platform.cpp
 tests/acceptance-tests/platforms/test_display_platform.cpp
 tests/acceptance-tests/platforms/test_display_platform.h
 tests/acceptance-tests/platforms/test_rendering_platform.cpp
 tests/acceptance-tests/platforms/test_rendering_platform.h
 tests/acceptance-tests/platforms/wayland_platform.cpp
 tests/acceptance-tests/platforms/x11_platform.cpp
 tests/acceptance-tests/server_configuration_options.cpp
 tests/acceptance-tests/server_configuration_wrapping.cpp
 tests/acceptance-tests/server_stop_callback.cpp
 tests/acceptance-tests/strict_close.cpp
 tests/acceptance-tests/test_command_line_handling.cpp
 tests/acceptance-tests/test_input_device_hub.cpp
 tests/acceptance-tests/test_seat_report.cpp
 tests/include/mir/test/barrier.h
 tests/include/mir/test/current_thread_name.h
 tests/include/mir/test/doubles/advanceable_clock.h
 tests/include/mir/test/doubles/explicit_executor.h
 tests/include/mir/test/doubles/fake_alarm_factory.h
 tests/include/mir/test/doubles/fake_display_configuration_observer_registrar.h
 tests/include/mir/test/doubles/fake_renderable.h
 tests/include/mir/test/doubles/fd_matcher.h
 tests/include/mir/test/doubles/mock_buffer.h
 tests/include/mir/test/doubles/mock_buffer_stream.h
 tests/include/mir/test/doubles/mock_compositor.h
 tests/include/mir/test/doubles/mock_compositor_report.h
 tests/include/mir/test/doubles/mock_console_services.h
 tests/include/mir/test/doubles/mock_cursor_listener.h
 tests/include/mir/test/doubles/mock_device.h
 tests/include/mir/test/doubles/mock_display.h
 tests/include/mir/test/doubles/mock_display_configuration.h
 tests/include/mir/test/doubles/mock_display_configuration_observer.h
 tests/include/mir/test/doubles/mock_display_report.h
 tests/include/mir/test/doubles/mock_display_sink.h
 tests/include/mir/test/doubles/mock_drm.h
 tests/include/mir/test/doubles/mock_event_filter.h
 tests/include/mir/test/doubles/mock_event_handler_register.h
 tests/include/mir/test/doubles/mock_event_sink.h
 tests/include/mir/test/doubles/mock_frontend_surface_stack.h
 tests/include/mir/test/doubles/mock_gbm.h
 tests/include/mir/test/doubles/mock_gl_buffer.h
 tests/include/mir/test/doubles/mock_gl_config.h
 tests/include/mir/test/doubles/mock_gl_display_buffer.h
 tests/include/mir/test/doubles/mock_gl_rendering_provider.h
 tests/include/mir/test/doubles/mock_idle_hub.h
 tests/include/mir/test/doubles/mock_input_device.h
 tests/include/mir/test/doubles/mock_input_device_hub.h
 tests/include/mir/test/doubles/mock_input_device_observer.h
 tests/include/mir/test/doubles/mock_input_device_registry.h
 tests/include/mir/test/doubles/mock_input_dispatcher.h
 tests/include/mir/test/doubles/mock_input_manager.h
 tests/include/mir/test/doubles/mock_input_platform.h
 tests/include/mir/test/doubles/mock_input_seat.h
 tests/include/mir/test/doubles/mock_input_sink.h
 tests/include/mir/test/doubles/mock_input_surface.h
 tests/include/mir/test/doubles/mock_key_mapper.h
 tests/include/mir/test/doubles/mock_led_observer_registrar.h
 tests/include/mir/test/doubles/mock_libinput.h
 tests/include/mir/test/doubles/mock_lockable_callback.h
 tests/include/mir/test/doubles/mock_main_loop.h
 tests/include/mir/test/doubles/mock_option.h
 tests/include/mir/test/doubles/mock_output_surface.h
 tests/include/mir/test/doubles/mock_prompt_session_listener.h
 tests/include/mir/test/doubles/mock_renderable.h
 tests/include/mir/test/doubles/mock_renderer.h
 tests/include/mir/test/doubles/mock_scene.h
 tests/include/mir/test/doubles/mock_scene_session.h
 tests/include/mir/test/doubles/mock_seat_report.h
 tests/include/mir/test/doubles/mock_server_status_listener.h
 tests/include/mir/test/doubles/mock_session_listener.h
 tests/include/mir/test/doubles/mock_surface.h
 tests/include/mir/test/doubles/mock_surface_stack.h
 tests/include/mir/test/doubles/mock_touch_visualizer.h
 tests/include/mir/test/doubles/mock_udev.h
 tests/include/mir/test/doubles/mock_udev_device.h
 tests/include/mir/test/doubles/mock_window_manager.h
 tests/include/mir/test/doubles/mock_x11.h
 tests/include/mir/test/doubles/mock_x11_resources.h
 tests/include/mir/test/doubles/mock_xkb.h
 tests/include/mir/test/doubles/null_application_not_responding_detector.h
 tests/include/mir/test/doubles/null_client_event_sink.h
 tests/include/mir/test/doubles/null_console_services.h
 tests/include/mir/test/doubles/null_device_observer.h
 tests/include/mir/test/doubles/null_display.h
 tests/include/mir/test/doubles/null_display_buffer_compositor_factory.h
 tests/include/mir/test/doubles/null_display_changer.h
 tests/include/mir/test/doubles/null_display_configuration.h
 tests/include/mir/test/doubles/null_display_configuration_policy.h
 tests/include/mir/test/doubles/null_display_sink.h
 tests/include/mir/test/doubles/null_display_sync_group.h
 tests/include/mir/test/doubles/null_emergency_cleanup.h
 tests/include/mir/test/doubles/null_event_sink.h
 tests/include/mir/test/doubles/null_gl_config.h
 tests/include/mir/test/doubles/null_message_sender.h
 tests/include/mir/test/doubles/null_pixel_buffer.h
 tests/include/mir/test/doubles/null_platform.h
 tests/include/mir/test/doubles/null_prompt_session.h
 tests/include/mir/test/doubles/null_prompt_session_manager.h
 tests/include/mir/test/doubles/null_screencast.h
 tests/include/mir/test/doubles/null_session_event_sink.h
 tests/include/mir/test/doubles/simple_device_observer.h
 tests/include/mir/test/doubles/stub_alarm.h
 tests/include/mir/test/doubles/stub_buffer.h
 tests/include/mir/test/doubles/stub_buffer_allocator.h
 tests/include/mir/test/doubles/stub_buffer_stream.h
 tests/include/mir/test/doubles/stub_client_buffer.h
 tests/include/mir/test/doubles/stub_client_buffer_factory.h
 tests/include/mir/test/doubles/stub_client_platform_factory.h
 tests/include/mir/test/doubles/stub_console_services.h
 tests/include/mir/test/doubles/stub_cursor_listener.h
 tests/include/mir/test/doubles/stub_display.h
 tests/include/mir/test/doubles/stub_display_sink.h
 tests/include/mir/test/doubles/stub_gl_config.h
 tests/include/mir/test/doubles/stub_gl_program.h
 tests/include/mir/test/doubles/stub_gl_rendering_provider.h
 tests/include/mir/test/doubles/stub_input_device_registry.h
 tests/include/mir/test/doubles/stub_input_scene.h
 tests/include/mir/test/doubles/stub_input_surface.h
 tests/include/mir/test/doubles/stub_input_targeter.h
 tests/include/mir/test/doubles/stub_observer_registrar.h
 tests/include/mir/test/doubles/stub_renderable.h
 tests/include/mir/test/doubles/stub_renderer.h
 tests/include/mir/test/doubles/stub_scene.h
 tests/include/mir/test/doubles/stub_scene_element.h
 tests/include/mir/test/doubles/stub_session.h
 tests/include/mir/test/doubles/stub_session_authorizer.h
 tests/include/mir/test/doubles/stub_session_lock.h
 tests/include/mir/test/doubles/stub_shell.h
 tests/include/mir/test/doubles/stub_surface.h
 tests/include/mir/test/doubles/stub_surface_factory.h
 tests/include/mir/test/doubles/stub_touch_visualizer.h
 tests/include/mir/test/doubles/triggered_main_loop.h
 tests/include/mir/test/fd_utils.h
 tests/include/mir/test/input_config_matchers.h
 tests/include/mir/test/input_devices_matcher.h
 tests/include/mir/test/make_surface_spec.h
 tests/include/mir/test/test_dispatchable.h
 tests/include/mir_test_framework/command_line_server_configuration.h
 tests/include/mir_test_framework/deferred_in_process_server.h
 tests/include/mir_test_framework/fake_input_server_configuration.h
 tests/include/mir_test_framework/input_testing_server_configuration.h
 tests/include/mir_test_framework/interposer_helper.h
 tests/include/mir_test_framework/libinput_environment.h
 tests/include/mir_test_framework/mmap_wrapper.h
 tests/include/mir_test_framework/open_wrapper.h
 tests/include/mir_test_framework/stub_input_platform.h
 tests/include/mir_test_framework/stub_input_platform_accessor.h
 tests/include/mir_test_framework/stubbed_server_configuration.h
 tests/include/mir_test_framework/testing_server_configuration.h
 tests/include/mir_test_framework/udev_environment.h
 tests/include/mir_test_framework/window_management_test_harness.h
 tests/integration-tests/compositor/multithread_harness.h
 tests/integration-tests/compositor/test_synchronizer.cpp
 tests/integration-tests/input/test_configuring_input_manager.cpp
 tests/integration-tests/input/test_cursor_listener.cpp
 tests/integration-tests/input/test_single_seat_setup.cpp
 tests/integration-tests/process/test_process.cpp
 tests/integration-tests/test_custom_input_dispatcher.cpp
 tests/integration-tests/test_display_server_main_loop_events.cpp
 tests/integration-tests/test_server_client_types.cpp
 tests/integration-tests/test_surface_stack_with_compositor.cpp
 tests/integration-tests/test_touchspot_visualization.cpp
 tests/mir_test/cross_process_action.cpp
 tests/mir_test/cross_process_sync.cpp
 tests/mir_test/current_thread_name.cpp
 tests/mir_test/display_config_matchers.cpp
 tests/mir_test/event_factory.cpp
 tests/mir_test/event_matchers.cpp
 tests/mir_test/fd_utils.cpp
 tests/mir_test/make_surface_spec.cpp
 tests/mir_test/pipe.cpp
 tests/mir_test/popen.cpp
 tests/mir_test/signal.cpp
 tests/mir_test/spin_wait.cpp
 tests/mir_test/test_dispatchable.cpp
 tests/mir_test_doubles/fake_alarm_factory.cpp
 tests/mir_test_doubles/fake_display.cpp
 tests/mir_test_doubles/mock_drm.cpp
 tests/mir_test_doubles/mock_egl.cpp
 tests/mir_test_doubles/mock_gbm.cpp
 tests/mir_test_doubles/mock_gl.cpp
 tests/mir_test_doubles/mock_input_device.cpp
 tests/mir_test_doubles/mock_libinput.cpp
 tests/mir_test_doubles/mock_udev.cpp
 tests/mir_test_doubles/mock_x11.cpp
 tests/mir_test_doubles/mock_xkb.cpp
 tests/mir_test_doubles/nested_mock_egl.cpp
 tests/mir_test_doubles/null_logger.cpp
 tests/mir_test_doubles/simple_device_observer.cpp
 tests/mir_test_doubles/stub_buffer_allocator.cpp
 tests/mir_test_doubles/stub_console_services.cpp
 tests/mir_test_doubles/stub_display_configuration.cpp
 tests/mir_test_doubles/triggered_main_loop.cpp
 tests/mir_test_framework/async_server_runner.cpp
 tests/mir_test_framework/command_line_server_configuration.cpp
 tests/mir_test_framework/executable_path.cpp
 tests/mir_test_framework/fake_input_device_impl.cpp
 tests/mir_test_framework/fake_input_device_impl.h
 tests/mir_test_framework/fake_input_server_configuration.cpp
 tests/mir_test_framework/headless_display_buffer_compositor_factory.cpp
 tests/mir_test_framework/headless_in_process_server.cpp
 tests/mir_test_framework/headless_test.cpp
 tests/mir_test_framework/input_testing_server_options.cpp
 tests/mir_test_framework/libinput_environment.cpp
 tests/mir_test_framework/main.cpp
 tests/mir_test_framework/mmap_wrapper.cpp
 tests/mir_test_framework/open_wrapper.cpp
 tests/mir_test_framework/passthrough_tracker.cpp
 tests/mir_test_framework/platform_graphics_dummy.cpp
 tests/mir_test_framework/platform_graphics_throw.cpp
 tests/mir_test_framework/process.cpp
 tests/mir_test_framework/server_runner.cpp
 tests/mir_test_framework/stub_input.cpp
 tests/mir_test_framework/stub_input_platform.cpp
 tests/mir_test_framework/stub_input_platform_accessor.cpp
 tests/mir_test_framework/stub_server_platform_factory.cpp
 tests/mir_test_framework/stub_session.cpp
 tests/mir_test_framework/stub_surface.cpp
 tests/mir_test_framework/stubbed_graphics_platform.cpp
 tests/mir_test_framework/stubbed_graphics_platform.h
 tests/mir_test_framework/stubbed_server_configuration.cpp
 tests/mir_test_framework/temporary_environment_value.cpp
 tests/mir_test_framework/test_display_server.cpp
 tests/mir_test_framework/test_server.cpp
 tests/mir_test_framework/testing_server_options.cpp
 tests/mir_test_framework/udev_environment.cpp
 tests/mir_test_framework/window_management_test_harness.cpp
 tests/miral/active_outputs.cpp
 tests/miral/application_selector.cpp
 tests/miral/application_zone.cpp
 tests/miral/command_line_option.cpp
 tests/miral/config_file.cpp
 tests/miral/depth_layer.cpp
 tests/miral/display_reconfiguration.cpp
 tests/miral/drag_active_window.cpp
 tests/miral/fd_manager.cpp
 tests/miral/focus_mode.cpp
 tests/miral/initial_window_placement.cpp
 tests/miral/modify_window_state.cpp
 tests/miral/mru_window_list.cpp
 tests/miral/output_updates.cpp
 tests/miral/popup_window_placement.cpp
 tests/miral/raise_tree.cpp
 tests/miral/resize_and_move.cpp
 tests/miral/runner.cpp
 tests/miral/select_active_window.cpp
 tests/miral/server_example_decoration.cpp
 tests/miral/server_example_decoration.h
 tests/miral/test_window_manager_tools.cpp
 tests/miral/test_window_manager_tools.h
 tests/miral/window_info.cpp
 tests/miral/window_placement_anchors_to_parent.cpp
 tests/miral/window_placement_attached.cpp
 tests/miral/window_placement_fullscreen.cpp
 tests/miral/window_placement_maximized.cpp
 tests/miral/window_placement_output.cpp
 tests/miral/zone.cpp
 tests/performance-tests/system_performance_test.cpp
 tests/performance-tests/system_performance_test.h
 tests/performance-tests/test_compositor.cpp
 tests/performance-tests/test_glmark2-es2.cpp
 tests/umock-acceptance-tests/test_libinput.cpp
 tests/umock-acceptance-tests/test_platform_probing.cpp
 tests/unit-tests/compositor/test_basic_screen_shooter.cpp
 tests/unit-tests/compositor/test_default_display_buffer_compositor.cpp
 tests/unit-tests/compositor/test_multi_monitor_arbiter.cpp
 tests/unit-tests/compositor/test_multi_threaded_compositor.cpp
 tests/unit-tests/compositor/test_occlusion.cpp
 tests/unit-tests/compositor/test_stream.cpp
 tests/unit-tests/console/test_linux_virtual_terminal.cpp
 tests/unit-tests/console/test_logind_console_services.cpp
 tests/unit-tests/console/test_minimal_console_services.cpp
 tests/unit-tests/dispatch/test_action_queue.cpp
 tests/unit-tests/dispatch/test_dispatch_utils.cpp
 tests/unit-tests/dispatch/test_multiplexing_dispatchable.cpp
 tests/unit-tests/dispatch/test_readable_fd.cpp
 tests/unit-tests/dispatch/test_threaded_dispatcher.cpp
 tests/unit-tests/frontend_wayland/test_desktop_file_manager.cpp
 tests/unit-tests/frontend_wayland/test_g_desktop_file_cache.cpp
 tests/unit-tests/frontend_wayland/test_screencopy_v1_damage_tracker.cpp
 tests/unit-tests/frontend_wayland/test_wayland_timespec.cpp
 tests/unit-tests/frontend_xwayland/test_xwayland_client_manager.cpp
 tests/unit-tests/geometry/test-dimensions-generic.cpp
 tests/unit-tests/geometry/test-dimensions.cpp
 tests/unit-tests/geometry/test-displacement.cpp
 tests/unit-tests/geometry/test-length.cpp
 tests/unit-tests/geometry/test-point.cpp
 tests/unit-tests/geometry/test-rectangle.cpp
 tests/unit-tests/geometry/test-rectangles.cpp
 tests/unit-tests/geometry/test-size.cpp
 tests/unit-tests/gl/test_tessellation_helpers.cpp
 tests/unit-tests/graphics/egl_mock/egl_mock_test.cpp
 tests/unit-tests/graphics/test_anonymous_shm_file.cpp
 tests/unit-tests/graphics/test_buffer_id.cpp
 tests/unit-tests/graphics/test_buffer_properties.cpp
 tests/unit-tests/graphics/test_default_display_configuration_policy.cpp
 tests/unit-tests/graphics/test_display_configuration.cpp
 tests/unit-tests/graphics/test_egl_error.cpp
 tests/unit-tests/graphics/test_egl_extensions.cpp
 tests/unit-tests/graphics/test_gamma_curves.cpp
 tests/unit-tests/graphics/test_multiplexing_display.cpp
 tests/unit-tests/graphics/test_overlapping_output_grouping.cpp
 tests/unit-tests/graphics/test_pixel_format_utils.cpp
 tests/unit-tests/graphics/test_platform_prober.cpp
 tests/unit-tests/graphics/test_shm_buffer.cpp
 tests/unit-tests/graphics/test_software_cursor.cpp
 tests/unit-tests/input/evdev/test_evdev_device_detection.cpp
 tests/unit-tests/input/evdev/test_evdev_input_platform.cpp
 tests/unit-tests/input/evdev/test_libinput_device.cpp
 tests/unit-tests/input/test_buffer_keymap.cpp
 tests/unit-tests/input/test_config_changer.cpp
 tests/unit-tests/input/test_cursor_controller.cpp
 tests/unit-tests/input/test_default_device.cpp
 tests/unit-tests/input/test_default_event_builder.cpp
 tests/unit-tests/input/test_default_input_device_hub.cpp
 tests/unit-tests/input/test_default_input_manager.cpp
 tests/unit-tests/input/test_event_builders.cpp
 tests/unit-tests/input/test_event_filter_chain_dispatcher.cpp
 tests/unit-tests/input/test_external_input_device_hub.cpp
 tests/unit-tests/input/test_idle_poking_dispatcher.cpp
 tests/unit-tests/input/test_input_event.cpp
 tests/unit-tests/input/test_input_platform_probing.cpp
 tests/unit-tests/input/test_key_repeat_dispatcher.cpp
 tests/unit-tests/input/test_keyboard_resync_dispatcher.cpp
 tests/unit-tests/input/test_seat_input_device_tracker.cpp
 tests/unit-tests/input/test_surface_input_dispatcher.cpp
 tests/unit-tests/input/test_touchspot_controller.cpp
 tests/unit-tests/input/test_validator.cpp
 tests/unit-tests/input/test_x11_module.cpp
 tests/unit-tests/input/test_x11_platform.cpp
 tests/unit-tests/library_example.cpp
 tests/unit-tests/library_example.h
 tests/unit-tests/logging/test_compositor_report.cpp
 tests/unit-tests/logging/test_display_report.cpp
 tests/unit-tests/mir_image.h
 tests/unit-tests/options/test_program_option.cpp
 tests/unit-tests/platforms/eglstream-kms/server/test_utils.cpp
 tests/unit-tests/platforms/gbm-kms/kms-utils/test_connector_utils.cpp
 tests/unit-tests/platforms/gbm-kms/kms-utils/test_drm_mode_resources.cpp
 tests/unit-tests/platforms/gbm-kms/kms/mock_kms_output.h
 tests/unit-tests/platforms/gbm-kms/kms/test_buffer_allocator.cpp
 tests/unit-tests/platforms/gbm-kms/kms/test_bypass.cpp
 tests/unit-tests/platforms/gbm-kms/kms/test_cursor.cpp
 tests/unit-tests/platforms/gbm-kms/kms/test_display_configuration.cpp
 tests/unit-tests/platforms/gbm-kms/kms/test_display_generic.cpp
 tests/unit-tests/platforms/gbm-kms/kms/test_display_multi_monitor.cpp
 tests/unit-tests/platforms/gbm-kms/kms/test_display_sink.cpp
 tests/unit-tests/platforms/gbm-kms/kms/test_drm_helper.cpp
 tests/unit-tests/platforms/gbm-kms/kms/test_kms_page_flipper.cpp
 tests/unit-tests/platforms/gbm-kms/kms/test_platform.cpp
 tests/unit-tests/platforms/gbm-kms/kms/test_quirks.cpp
 tests/unit-tests/platforms/gbm-kms/kms/test_real_kms_output.cpp
 tests/unit-tests/platforms/test_display.h
 tests/unit-tests/platforms/test_threaded_drm_event_handler.cpp
 tests/unit-tests/platforms/virtual/test_display.cpp
 tests/unit-tests/platforms/virtual/test_platform.cpp
 tests/unit-tests/platforms/x11/test_display.cpp
 tests/unit-tests/platforms/x11/test_platform.cpp
 tests/unit-tests/renderers/gl/test_gl_renderer.cpp
 tests/unit-tests/scene/test_abstract_shell.cpp
 tests/unit-tests/scene/test_application_session.cpp
 tests/unit-tests/scene/test_basic_clipboard.cpp
 tests/unit-tests/scene/test_basic_idle_hub.cpp
 tests/unit-tests/scene/test_basic_surface.cpp
 tests/unit-tests/scene/test_basic_text_input_hub.cpp
 tests/unit-tests/scene/test_broadcasting_session_event_sink.cpp
 tests/unit-tests/scene/test_mediating_display_changer.cpp
 tests/unit-tests/scene/test_prompt_session_container.cpp
 tests/unit-tests/scene/test_prompt_session_impl.cpp
 tests/unit-tests/scene/test_prompt_session_manager.cpp
 tests/unit-tests/scene/test_rendering_tracker.cpp
 tests/unit-tests/scene/test_scene_change_notification.cpp
 tests/unit-tests/scene/test_session_manager.cpp
 tests/unit-tests/scene/test_surface.cpp
 tests/unit-tests/scene/test_surface_impl.cpp
 tests/unit-tests/scene/test_surface_stack.cpp
 tests/unit-tests/scene/test_surface_state_tracker.cpp
 tests/unit-tests/scene/test_the_session_container_implementation.cpp
 tests/unit-tests/scene/test_timeout_application_not_responding_detector.cpp
 tests/unit-tests/shared_library_test.cpp
 tests/unit-tests/shell/test_basic_idle_handler.cpp
 tests/unit-tests/shell/test_decoration_basic_decoration.cpp
 tests/unit-tests/shell/test_decoration_basic_manager.cpp
 tests/unit-tests/shell/test_default_persistent_surface_store.cpp
 tests/unit-tests/shell/test_graphics_display_layout.cpp
 tests/unit-tests/shell/test_persistent_surface_store_id.cpp
 tests/unit-tests/test_default_emergency_cleanup.cpp
 tests/unit-tests/test_edid.cpp
 tests/unit-tests/test_fatal.cpp
 tests/unit-tests/test_fd.cpp
 tests/unit-tests/test_flags.cpp
 tests/unit-tests/test_glib_main_loop.cpp
 tests/unit-tests/test_linearising_executor.cpp
 tests/unit-tests/test_lockable_callback.cpp
 tests/unit-tests/test_module_deleter.cpp
 tests/unit-tests/test_observer_multiplexer.cpp
 tests/unit-tests/test_posix_rw_mutex.cpp
 tests/unit-tests/test_posix_timestamp.cpp
 tests/unit-tests/test_raii.cpp
 tests/unit-tests/test_recursive_read_write_mutex.cpp
 tests/unit-tests/test_report_exception.cpp
 tests/unit-tests/test_shared_library_prober.cpp
 tests/unit-tests/test_shm_backing.cpp
 tests/unit-tests/test_signal.cpp
 tests/unit-tests/test_thread_name.cpp
 tests/unit-tests/test_thread_pool_executor.cpp
 tests/unit-tests/test_thread_safe_list.cpp
 tests/unit-tests/test_udev_wrapper.cpp
 tests/unit-tests/test_udev_wrapper_asan_skip.cpp
 tests/unit-tests/wayland/test_lifetime_tracker.cpp
 tests/unit-tests/wayland/test_wayland_executor.cpp
 tests/unit-tests/wayland/test_wayland_weak.cpp
 tests/window_management_tests/test_minimal_window_manager.cpp
 tools/png2header.py
 tools/scan_symbols.py
 tools/symbols_map_generator/main.py
Copyright: 2012, 2016, Canonical Ltd.
  2012, Canonical Ltd.
  2012, 2014, Canonical Ltd.
  2012-2013, Canonical Ltd.
  2012-2014, Canonical Ltd.
  2012-2015, Canonical Ltd.
  2012-2016, Canonical Ltd.
  2012-2017, Canonical Ltd.
  2012-2018, Canonical Ltd.
  2012-2019, Canonical Ltd.
  2012-2020, Canonical Ltd.
  2013, 2016, Canonical Ltd.
  2013, Canonical Ltd.
  2013-2014, Canonical Ltd.
  2013-2015, Canonical Ltd.
  2013-2016, Canonical Ltd.
  2013-2017, Canonical Ltd.
  2013-2018, Canonical Ltd.
  2013-2019, Canonical Ltd.
  2013-2020, Canonical Ltd.
  2014, 2021, Canonical Ltd.
  2014, Canonical Ltd.
  2014-2015, Canonical Ltd.
  2014-2016, Canonical Ltd.
  2014-2017, Canonical Ltd.
  2014-2018, Canonical Ltd.
  2014-2019, Canonical Ltd.
  2014-2022, Canonical Ltd.
  2015, Canonical Ltd.
  2015-2016, Canonical Ltd.
  2015-2018, Canonical Ltd.
  2015-2019, Canonical Ltd.
  2015-2020, Canonical Ltd.
  2016, Canonical Ltd.
  2016-2018, Canonical Ltd.
  2016-2019, Canonical Ltd.
  2016-2020, Canonical Ltd.
  2016-2021, Canonical Ltd.
  2016-2022, Canonical Ltd.
  2017, Canonical Ltd.
  2017-2020, Canonical Ltd.
  2018, 2021, Canonical Ltd.
  2018, Canonical Ltd.
  2018-2019, Canonical Ltd.
  2018-2020, Canonical Ltd.
  2019, Canonical Ltd.
  2020, Canonical Ltd.
  2021, Canonical Ltd.
  2022, Canonical Ltd.
  Canonical Ltd.
License: GPL-3-or-GPL-2

Files: include/common/mir/assert_module_entry_point.h
 include/common/mir/cached_ptr.h
 include/common/mir/dispatch/action_queue.h
 include/common/mir/dispatch/dispatchable.h
 include/common/mir/dispatch/multiplexing_dispatchable.h
 include/common/mir/dispatch/readable_fd.h
 include/common/mir/dispatch/threaded_dispatcher.h
 include/common/mir/event_printer.h
 include/common/mir/events/contact_state.h
 include/common/mir/events/event_builders.h
 include/common/mir/events/event_type_to_string.h
 include/common/mir/events/input_device_state.h
 include/common/mir/events/scroll_axis.h
 include/common/mir/events/touch_contact.h
 include/common/mir/flags.h
 include/common/mir/frontend/surface_id.h
 include/common/mir/input/buffer_keymap.h
 include/common/mir/input/device_capability.h
 include/common/mir/input/keyboard_leds.h
 include/common/mir/input/keymap.h
 include/common/mir/input/mir_input_config.h
 include/common/mir/input/mir_keyboard_config.h
 include/common/mir/input/mir_pointer_config.h
 include/common/mir/input/mir_touchpad_config.h
 include/common/mir/input/mir_touchscreen_config.h
 include/common/mir/input/parameter_keymap.h
 include/common/mir/libname.h
 include/common/mir/log.h
 include/common/mir/logging/file_logger.h
 include/common/mir/logging/logger.h
 include/common/mir/logging/multi_logger.h
 include/common/mir/module_deleter.h
 include/common/mir/output_type_names.h
 include/common/mir/posix_rw_mutex.h
 include/common/mir/raii.h
 include/common/mir/shared_library.h
 include/common/mir/time/posix_timestamp.h
 include/common/mir/time/types.h
 include/common/mir/uncaught.h
 include/common/mir_toolkit/client_types.h
 include/common/mir_toolkit/cursors.h
 include/common/mir_toolkit/event.h
 include/common/mir_toolkit/events/event.h
 include/common/mir_toolkit/events/input/input_event.h
 include/common/mir_toolkit/events/input/keyboard_event.h
 include/common/mir_toolkit/events/input/pointer_event.h
 include/common/mir_toolkit/events/input/touch_event.h
 include/common/mir_toolkit/events/input_device_state_event.h
 include/common/mir_toolkit/events/orientation_event.h
 include/common/mir_toolkit/events/prompt_session_event.h
 include/common/mir_toolkit/events/resize_event.h
 include/common/mir_toolkit/events/window_event.h
 include/common/mir_toolkit/events/window_output_event.h
 include/core/mir/abnormal_exit.h
 include/core/mir/anonymous_shm_file.h
 include/core/mir/depth_layer.h
 include/core/mir/fatal.h
 include/core/mir/fd.h
 include/core/mir/geometry/dimensions.h
 include/core/mir/geometry/displacement.h
 include/core/mir/geometry/forward.h
 include/core/mir/geometry/point.h
 include/core/mir/geometry/rectangle.h
 include/core/mir/geometry/rectangles.h
 include/core/mir/geometry/size.h
 include/core/mir/int_wrapper.h
 include/core/mir/optional_value.h
 include/core/mir/proof_of_mutex_lock.h
 include/core/mir/shm_file.h
 include/core/mir/synchronised.h
 include/core/mir_toolkit/common.h
 include/core/mir_toolkit/events/enums.h
 include/core/mir_toolkit/mir_input_device_types.h
 include/core/mir_toolkit/mir_native_buffer.h
 include/core/mir_toolkit/mir_version_number.h
 include/miroil/miroil/mir_prompt_session.h
 include/platform/mir/console_services.h
 include/platform/mir/emergency_cleanup_registry.h
 include/platform/mir/graphics/buffer.h
 include/platform/mir/graphics/buffer_basic.h
 include/platform/mir/graphics/buffer_id.h
 include/platform/mir/graphics/buffer_properties.h
 include/platform/mir/graphics/cursor.h
 include/platform/mir/graphics/cursor_image.h
 include/platform/mir/graphics/display.h
 include/platform/mir/graphics/display_configuration.h
 include/platform/mir/graphics/display_configuration_policy.h
 include/platform/mir/graphics/display_report.h
 include/platform/mir/graphics/display_sink.h
 include/platform/mir/graphics/dmabuf_buffer.h
 include/platform/mir/graphics/drm_formats.h
 include/platform/mir/graphics/egl_context_executor.h
 include/platform/mir/graphics/egl_error.h
 include/platform/mir/graphics/egl_logger.h
 include/platform/mir/graphics/egl_resources.h
 include/platform/mir/graphics/egl_wayland_allocator.h
 include/platform/mir/graphics/event_handler_register.h
 include/platform/mir/graphics/frame.h
 include/platform/mir/graphics/gamma_curves.h
 include/platform/mir/graphics/gl_config.h
 include/platform/mir/graphics/gl_format.h
 include/platform/mir/graphics/graphic_buffer_allocator.h
 include/platform/mir/graphics/linux_dmabuf.h
 include/platform/mir/graphics/overlapping_output_grouping.h
 include/platform/mir/graphics/pixel_format_utils.h
 include/platform/mir/graphics/platform.h
 include/platform/mir/graphics/program.h
 include/platform/mir/graphics/program_factory.h
 include/platform/mir/graphics/renderable.h
 include/platform/mir/graphics/texture.h
 include/platform/mir/graphics/transformation.h
 include/platform/mir/input/event_builder.h
 include/platform/mir/input/input_device.h
 include/platform/mir/input/input_device_info.h
 include/platform/mir/input/input_device_registry.h
 include/platform/mir/input/input_report.h
 include/platform/mir/input/input_sink.h
 include/platform/mir/input/platform.h
 include/platform/mir/input/pointer_settings.h
 include/platform/mir/input/touchpad_settings.h
 include/platform/mir/input/touchscreen_settings.h
 include/platform/mir/module_properties.h
 include/platform/mir/options/configuration.h
 include/platform/mir/options/default_configuration.h
 include/platform/mir/options/option.h
 include/platform/mir/options/program_option.h
 include/platform/mir/renderer/gl/gl_surface.h
 include/platform/mir/renderer/sw/pixel_source.h
 include/platform/mir/udev/wrapper.h
 include/renderers/gl/mir/renderer/gl/context.h
 include/renderers/gl/mir/renderer/gl/context_source.h
 include/renderers/gl/mir/renderer/gl/render_target.h
 src/common/dispatch/CMakeLists.txt
 src/common/dispatch/action_queue.cpp
 src/common/dispatch/multiplexing_dispatchable.cpp
 src/common/dispatch/readable_fd.cpp
 src/common/dispatch/threaded_dispatcher.cpp
 src/common/dispatch/utils.cpp
 src/common/dispatch/utils.h
 src/common/edid.cpp
 src/common/event.cpp
 src/common/event_printer.cpp
 src/common/events/CMakeLists.txt
 src/common/events/close_window_event.cpp
 src/common/events/event.cpp
 src/common/events/event_builders.cpp
 src/common/events/event_helpers.cpp
 src/common/events/input_device_state_event.cpp
 src/common/events/input_event.cpp
 src/common/events/keyboard_event.cpp
 src/common/events/keyboard_resync_event.cpp
 src/common/events/orientation_event.cpp
 src/common/events/pointer_event.cpp
 src/common/events/prompt_session_event.cpp
 src/common/events/resize_event.cpp
 src/common/events/touch_event.cpp
 src/common/events/window_event.cpp
 src/common/events/window_output_event.cpp
 src/common/events/window_placement_event.cpp
 src/common/handle_event_exception.h
 src/common/input/buffer_keymap.cpp
 src/common/input/input_event.cpp
 src/common/input/mir_input_config.cpp
 src/common/input/mir_keyboard_config.cpp
 src/common/input/mir_pointer_config.cpp
 src/common/input/mir_touchpad_config.cpp
 src/common/input/mir_touchscreen_config.cpp
 src/common/input/parameter_keymap.cpp
 src/common/input/xkb_mapper.cpp
 src/common/libname.cpp
 src/common/log.cpp
 src/common/logging/CMakeLists.txt
 src/common/logging/dumb_console_logger.cpp
 src/common/logging/file_logger.cpp
 src/common/logging/input_timestamp.cpp
 src/common/logging/logger.cpp
 src/common/logging/multi_logger.cpp
 src/common/logging/shared_library_prober_report.cpp
 src/common/mir_cursor_api.cpp
 src/common/output_type_names.cpp
 src/common/posix_rw_mutex.cpp
 src/common/report/lttng/tracepoint_provider.cpp
 src/common/sharedlibrary/CMakeLists.txt
 src/common/sharedlibrary/module_deleter.cpp
 src/common/sharedlibrary/shared_library.cpp
 src/common/sharedlibrary/shared_library_prober.cpp
 src/common/thread/CMakeLists.txt
 src/common/thread/recursive_read_write_mutex.cpp
 src/common/thread/signal_blocker.cpp
 src/common/thread/thread_name.cpp
 src/common/thread_pool_executor.cpp
 src/common/time/steady_clock.cpp
 src/core/anonymous_shm_file.cpp
 src/core/depth_layer.cpp
 src/core/fatal.cpp
 src/core/fd.cpp
 src/core/geometry/rectangles.cpp
 src/gl/tessellation_helpers.cpp
 src/include/common/mir/basic_observers.h
 src/include/common/mir/client_visible_error.h
 src/include/common/mir/events/close_window_event.h
 src/include/common/mir/events/event.h
 src/include/common/mir/events/event_helpers.h
 src/include/common/mir/events/event_private.h
 src/include/common/mir/events/input_device_state_event.h
 src/include/common/mir/events/input_event.h
 src/include/common/mir/events/keyboard_event.h
 src/include/common/mir/events/keyboard_resync_event.h
 src/include/common/mir/events/orientation_event.h
 src/include/common/mir/events/pointer_event.h
 src/include/common/mir/events/prompt_session_event.h
 src/include/common/mir/events/resize_event.h
 src/include/common/mir/events/touch_event.h
 src/include/common/mir/events/window_event.h
 src/include/common/mir/events/window_output_event.h
 src/include/common/mir/events/window_placement_event.h
 src/include/common/mir/events/xkb_modifiers.h
 src/include/common/mir/graphics/edid.h
 src/include/common/mir/input/key_mapper.h
 src/include/common/mir/input/xkb_mapper.h
 src/include/common/mir/logging/dumb_console_logger.h
 src/include/common/mir/logging/input_timestamp.h
 src/include/common/mir/logging/null_shared_library_prober_report.h
 src/include/common/mir/logging/shared_library_prober_report.h
 src/include/common/mir/recursive_read_write_mutex.h
 src/include/common/mir/report/lttng/mir_tracepoint.h
 src/include/common/mir/report/lttng/tracepoint_provider.h
 src/include/common/mir/shared_library_prober.h
 src/include/common/mir/shared_library_prober_report.h
 src/include/common/mir/signal_blocker.h
 src/include/common/mir/thread_name.h
 src/include/common/mir/thread_safe_list.h
 src/include/common/mir/time/clock.h
 src/include/common/mir/time/steady_clock.h
 src/include/common/mir/unwind_helpers.h
 src/include/gl/mir/gl/primitive.h
 src/include/gl/mir/gl/tessellation_helpers.h
 src/platform/graphics/buffer_basic.cpp
 src/platform/graphics/cpu_buffers.cpp
 src/platform/graphics/display_configuration.cpp
 src/platform/graphics/drm_formats.cpp
 src/platform/graphics/egl_buffer_copy.cpp
 src/platform/graphics/egl_buffer_copy.h
 src/platform/graphics/egl_context_executor.cpp
 src/platform/graphics/egl_error.cpp
 src/platform/graphics/egl_extensions.cpp
 src/platform/graphics/egl_logger.cpp
 src/platform/graphics/egl_resources.cpp
 src/platform/graphics/egl_wayland_allocator.cpp
 src/platform/graphics/gamma_curves.cpp
 src/platform/graphics/linux_dmabuf.cpp
 src/platform/graphics/overlapping_output_grouping.cpp
 src/platform/graphics/pixel_format_utils.cpp
 src/platform/graphics/program.cpp
 src/platform/graphics/program_factory.cpp
 src/platform/graphics/texture.cpp
 src/platform/options/default_configuration.cpp
 src/platform/options/program_option.cpp
 src/platform/udev/udev_wrapper.cpp
 src/platforms/atomic-kms/server/display_helpers.cpp
 src/platforms/atomic-kms/server/display_helpers.h
 src/platforms/atomic-kms/server/gbm_display_allocator.cpp
 src/platforms/atomic-kms/server/gbm_display_allocator.h
 src/platforms/atomic-kms/server/kms/atomic_kms_output.cpp
 src/platforms/atomic-kms/server/kms/atomic_kms_output.h
 src/platforms/atomic-kms/server/kms/bypass.cpp
 src/platforms/atomic-kms/server/kms/bypass.h
 src/platforms/atomic-kms/server/kms/cursor.cpp
 src/platforms/atomic-kms/server/kms/cursor.h
 src/platforms/atomic-kms/server/kms/display.cpp
 src/platforms/atomic-kms/server/kms/display.h
 src/platforms/atomic-kms/server/kms/display_buffer.cpp
 src/platforms/atomic-kms/server/kms/display_sink.h
 src/platforms/atomic-kms/server/kms/egl_helper.cpp
 src/platforms/atomic-kms/server/kms/egl_helper.h
 src/platforms/atomic-kms/server/kms/kms_display_configuration.h
 src/platforms/atomic-kms/server/kms/kms_output.h
 src/platforms/atomic-kms/server/kms/kms_output_container.h
 src/platforms/atomic-kms/server/kms/kms_page_flipper.cpp
 src/platforms/atomic-kms/server/kms/kms_page_flipper.h
 src/platforms/atomic-kms/server/kms/platform.cpp
 src/platforms/atomic-kms/server/kms/platform.h
 src/platforms/atomic-kms/server/kms/platform_symbols.cpp
 src/platforms/atomic-kms/server/kms/quirks.cpp
 src/platforms/atomic-kms/server/kms/quirks.h
 src/platforms/atomic-kms/server/kms/real_kms_display_configuration.cpp
 src/platforms/atomic-kms/server/kms/real_kms_display_configuration.h
 src/platforms/atomic-kms/server/kms/real_kms_output_container.cpp
 src/platforms/atomic-kms/server/kms/real_kms_output_container.h
 src/platforms/atomic-kms/server/platform_common.h
 src/platforms/common/server/cpu_addressable_fb.cpp
 src/platforms/common/server/cpu_addressable_fb.h
 src/platforms/common/server/cpu_copy_output_surface.cpp
 src/platforms/common/server/cpu_copy_output_surface.h
 src/platforms/common/server/kms-utils/drm_event_handler.h
 src/platforms/common/server/kms-utils/drm_mode_resources.cpp
 src/platforms/common/server/kms-utils/drm_mode_resources.h
 src/platforms/common/server/kms-utils/kms_connector.cpp
 src/platforms/common/server/kms-utils/kms_connector.h
 src/platforms/common/server/kms-utils/threaded_drm_event_handler.cpp
 src/platforms/common/server/kms-utils/threaded_drm_event_handler.h
 src/platforms/common/server/kms_cpu_addressable_display_provider.cpp
 src/platforms/common/server/kms_cpu_addressable_display_provider.h
 src/platforms/common/server/kms_framebuffer.h
 src/platforms/common/server/one_shot_device_observer.cpp
 src/platforms/common/server/one_shot_device_observer.h
 src/platforms/common/server/options_parsing_helpers.cpp
 src/platforms/common/server/options_parsing_helpers.h
 src/platforms/common/server/shm_buffer.cpp
 src/platforms/common/server/shm_buffer.h
 src/platforms/eglstream-kms/include/native_buffer.h
 src/platforms/eglstream-kms/server/buffer_allocator.cpp
 src/platforms/eglstream-kms/server/buffer_allocator.h
 src/platforms/eglstream-kms/server/display.cpp
 src/platforms/eglstream-kms/server/display.h
 src/platforms/eglstream-kms/server/egl_output.cpp
 src/platforms/eglstream-kms/server/egl_output.h
 src/platforms/eglstream-kms/server/kms_display_configuration.cpp
 src/platforms/eglstream-kms/server/kms_display_configuration.h
 src/platforms/eglstream-kms/server/platform.cpp
 src/platforms/eglstream-kms/server/platform.h
 src/platforms/eglstream-kms/server/platform_symbols.cpp
 src/platforms/eglstream-kms/server/utils.cpp
 src/platforms/eglstream-kms/server/utils.h
 src/platforms/evdev/fd_store.cpp
 src/platforms/evdev/fd_store.h
 src/platforms/evdev/libinput_device.cpp
 src/platforms/evdev/libinput_device.h
 src/platforms/evdev/libinput_device_ptr.cpp
 src/platforms/evdev/libinput_device_ptr.h
 src/platforms/evdev/libinput_ptr.cpp
 src/platforms/evdev/libinput_ptr.h
 src/platforms/evdev/platform.cpp
 src/platforms/evdev/platform.h
 src/platforms/evdev/platform_factory.cpp
 src/platforms/gbm-kms/include/gbm_format_conversions.h
 src/platforms/gbm-kms/server/buffer_allocator.cpp
 src/platforms/gbm-kms/server/buffer_allocator.h
 src/platforms/gbm-kms/server/display_helpers.cpp
 src/platforms/gbm-kms/server/display_helpers.h
 src/platforms/gbm-kms/server/gbm_display_allocator.cpp
 src/platforms/gbm-kms/server/gbm_display_allocator.h
 src/platforms/gbm-kms/server/kms/bypass.cpp
 src/platforms/gbm-kms/server/kms/bypass.h
 src/platforms/gbm-kms/server/kms/cursor.cpp
 src/platforms/gbm-kms/server/kms/cursor.h
 src/platforms/gbm-kms/server/kms/display.cpp
 src/platforms/gbm-kms/server/kms/display.h
 src/platforms/gbm-kms/server/kms/display_buffer.cpp
 src/platforms/gbm-kms/server/kms/display_sink.h
 src/platforms/gbm-kms/server/kms/egl_helper.cpp
 src/platforms/gbm-kms/server/kms/egl_helper.h
 src/platforms/gbm-kms/server/kms/kms_display_configuration.h
 src/platforms/gbm-kms/server/kms/kms_output.h
 src/platforms/gbm-kms/server/kms/kms_output_container.h
 src/platforms/gbm-kms/server/kms/kms_page_flipper.cpp
 src/platforms/gbm-kms/server/kms/kms_page_flipper.h
 src/platforms/gbm-kms/server/kms/page_flipper.h
 src/platforms/gbm-kms/server/kms/platform.cpp
 src/platforms/gbm-kms/server/kms/platform.h
 src/platforms/gbm-kms/server/kms/platform_symbols.cpp
 src/platforms/gbm-kms/server/kms/quirks.cpp
 src/platforms/gbm-kms/server/kms/quirks.h
 src/platforms/gbm-kms/server/kms/real_kms_display_configuration.cpp
 src/platforms/gbm-kms/server/kms/real_kms_display_configuration.h
 src/platforms/gbm-kms/server/kms/real_kms_output.cpp
 src/platforms/gbm-kms/server/kms/real_kms_output.h
 src/platforms/gbm-kms/server/kms/real_kms_output_container.cpp
 src/platforms/gbm-kms/server/kms/real_kms_output_container.h
 src/platforms/gbm-kms/server/platform_common.h
 src/platforms/gbm-kms/server/surfaceless_egl_context.cpp
 src/platforms/gbm-kms/server/surfaceless_egl_context.h
 src/platforms/renderer-generic-egl/buffer_allocator.cpp
 src/platforms/renderer-generic-egl/buffer_allocator.h
 src/platforms/renderer-generic-egl/platform_symbols.cpp
 src/platforms/renderer-generic-egl/rendering_platform.cpp
 src/platforms/renderer-generic-egl/rendering_platform.h
 src/platforms/virtual/display.cpp
 src/platforms/virtual/display.h
 src/platforms/virtual/display_configuration.cpp
 src/platforms/virtual/display_configuration.h
 src/platforms/virtual/graphics.cpp
 src/platforms/virtual/platform.cpp
 src/platforms/virtual/platform.h
 src/platforms/wayland/cursor.cpp
 src/platforms/wayland/cursor.h
 src/platforms/wayland/display.cpp
 src/platforms/wayland/display.h
 src/platforms/wayland/display_input.h
 src/platforms/wayland/input_device.h
 src/platforms/wayland/platform.cpp
 src/platforms/wayland/platform.h
 src/platforms/wayland/platform_symbols.cpp
 src/platforms/wayland/wayland_display.cpp
 src/platforms/wayland/wayland_display.h
 src/platforms/wayland/wl_egl_display_provider.h
 src/platforms/x11/graphics/display.cpp
 src/platforms/x11/graphics/display.h
 src/platforms/x11/graphics/display_configuration.cpp
 src/platforms/x11/graphics/display_configuration.h
 src/platforms/x11/graphics/display_sink.cpp
 src/platforms/x11/graphics/display_sink.h
 src/platforms/x11/graphics/egl_helper.cpp
 src/platforms/x11/graphics/egl_helper.h
 src/platforms/x11/graphics/graphics.cpp
 src/platforms/x11/graphics/platform.cpp
 src/platforms/x11/graphics/platform.h
 src/platforms/x11/input/input_device.h
 src/platforms/x11/x11_resources.cpp
 src/platforms/x11/x11_resources.h
Copyright: 2012, 2014, Canonical Ltd.
  2012, Canonical Ltd.
  2012-2013, 2016, Canonical Ltd.
  2012-2014, Canonical Ltd.
  2012-2022, Canonical Ltd.
  2013, Canonical Ltd.
  2013-2014, Canonical Ltd.
  2013-2015, Canonical Ltd.
  2013-2016, Canonical Ltd.
  2013-2020, Canonical Ltd.
  2013-2022, Canonical Ltd.
  2014, Canonical Ltd.
  2014-2015, Canonical Ltd.
  2014-2016, Canonical Ltd.
  2014-2020, Canonical Ltd.
  2014-2022, Canonical Ltd.
  2015, Canonical Ltd.
  2015-2016, Canonical Ltd.
  2015-2020, Canonical Ltd.
  2016, Canonical Ltd.
  2016-2017, Canonical Ltd.
  2017, Canonical Ltd.
  2018, Canonical Ltd.
  2019, Canonical Ltd.
  2020, Canonical Ltd.
  2021, Canonical Ltd.
  2022, Canonical Ltd.
  2023, Canonical Ltd.
License: LGPL-3-or-LGPL-2

Files:
 codecov.yml
 HACKING.md
 cmake/CMakeLists.txt
 cmake/Debian.cmake
 cmake/FindGtestGmock.cmake
 cmake/FindPIL.cmake
 cmake/FindXKBCOMMON.cmake
 cmake/JoinPaths.cmake
 cmake/LinuxCrossCompile.cmake
 cmake/MirCommon.cmake
 cmake/ParseArguments.cmake
 cmake/src/CMakeLists.txt
 cmake/src/mir/CMakeLists.txt
 cmake/src/mir/fail_on_success.sh
 cmake/src/mir/mir_test_fd_leak.cpp
 cmake/src/mir/mir_test_memory_error.cpp
 cmake/src/mir/mir_test_tmpfile.cpp
 cmake/src/mir/xfail_if_gtest_exists.sh
 examples/CMakeLists.txt
 examples/client/CMakeLists.txt
 examples/example-server-lib/CMakeLists.txt
 examples/mir-x11-kiosk/CMakeLists.txt
 examples/mir-x11-kiosk/mir-x11-kiosk-launch.sh
 examples/mir_demo_server/CMakeLists.txt
 examples/miral-kiosk/CMakeLists.txt
 examples/miral-shell/CMakeLists.txt
 examples/miral-shell/desktop/CMakeLists.txt
 examples/miral-shell/desktop/miral-shell.desktop.in
 examples/miral-shell/desktop/spiral-logo.svg
 examples/miral-shell/miral-app.sh
 examples/miral-shell/miral-terminal.sh
 examples/miral-shell/spinner/spinner-glow.svg
 examples/miral-shell/spinner/spinner-glow.png
 examples/miral-shell/spinner/spinner-logo.svg
 examples/miral-shell/spinner/spinner-logo.png
 examples/miral-system-compositor/CMakeLists.txt
 guides/CMakeLists.txt
 guides/favicon.ico
 guides/cppguide.xml
 guides/styleguide.css
 guides/styleguide.xsl
 include/miroil/miroil/display_id.h
 renovate.json
 snap/snapcraft.yaml
 src/CMakeLists.txt
 src/common/CMakeLists.txt
 src/common/mircommon-internal.pc.in
 src/common/mircommon.pc.in
 src/common/report/lttng/CMakeLists.txt
 src/common/symbols.map
 src/common/time/CMakeLists.txt
 src/core/CMakeLists.txt
 src/core/mircore.pc.in
 src/core/symbols.map
 src/gl/CMakeLists.txt
 src/miral/CMakeLists.txt
 src/miral/check-and-update-debian-symbols.py
 src/miral/miral.pc.in
 src/miral/symbols.map
 src/miroil/CMakeLists.txt
 src/miroil/check-and-update-debian-symbols.py
 src/miroil/mir_prompt_session.cpp
 src/miroil/miroil.pc.in
 src/miroil/symbols.map
 src/platform/CMakeLists.txt
 src/platform/graphics/CMakeLists.txt
 src/platform/mirplatform.pc.in
 src/platform/options/CMakeLists.txt
 src/platform/symbols.map
 src/platform/udev/CMakeLists.txt
 src/platforms/CMakeLists.txt
 src/platforms/atomic-kms/CMakeLists.txt
 src/platforms/atomic-kms/server/CMakeLists.txt
 src/platforms/atomic-kms/server/kms/CMakeLists.txt
 src/platforms/atomic-kms/server/kms/symbols.map.in
 src/platforms/common/CMakeLists.txt
 src/platforms/common/server/CMakeLists.txt
 src/platforms/common/server/kms-utils/CMakeLists.txt
 src/platforms/eglstream-kms/CMakeLists.txt
 src/platforms/eglstream-kms/server/CMakeLists.txt
 src/platforms/eglstream-kms/server/symbols.map.in
 src/platforms/evdev/CMakeLists.txt
 src/platforms/gbm-kms/CMakeLists.txt
 src/platforms/gbm-kms/server/CMakeLists.txt
 src/platforms/gbm-kms/server/kms/CMakeLists.txt
 src/platforms/gbm-kms/server/kms/symbols.map.in
 src/platforms/input_platform_symbols.map.in
 src/platforms/renderer-generic-egl/CMakeLists.txt
 src/platforms/renderer-generic-egl/symbols.map.in
 src/platforms/virtual/CMakeLists.txt
 src/platforms/virtual/symbols.map.in
 src/platforms/wayland/CMakeLists.txt
 src/platforms/wayland/protocol/CMakeLists.txt
 src/platforms/wayland/symbols.map.in
 src/platforms/wayland/wl_egl_display_provider.cpp
 src/platforms/x11/CMakeLists.txt
 src/platforms/x11/graphics/CMakeLists.txt
 src/platforms/x11/input/CMakeLists.txt
 src/platforms/x11/symbols.map.in
 src/renderer/CMakeLists.txt
 src/renderer/mirrenderer.pc.in
 src/renderers/CMakeLists.txt
 src/renderers/gl/CMakeLists.txt
 src/renderers/gl/mir-renderer-gl-dev.pc.in
 src/server/CMakeLists.txt
 src/server/compositor/CMakeLists.txt
 src/server/console/CMakeLists.txt
 src/server/console/logind-seat.xml
 src/server/console/logind-session.xml
 src/server/frontend_wayland/CMakeLists.txt
 src/server/frontend_wayland/wayland_frontend.tp
 src/server/frontend_xwayland/CMakeLists.txt
 src/server/graphics/CMakeLists.txt
 src/server/input/CMakeLists.txt
 src/server/input/default-theme.h
 src/server/input/touchspot_image.c
 src/server/mirserver-internal.pc.in
 src/server/mirserver.pc.in
 src/server/report/CMakeLists.txt
 src/server/report/logging/CMakeLists.txt
 src/server/report/lttng/CMakeLists.txt
 src/server/report/lttng/input_report_tp.c
 src/server/report/lttng/tracepoints.c
 src/server/report/null/CMakeLists.txt
 src/server/scene/CMakeLists.txt
 src/server/shell/CMakeLists.txt
 src/server/shell/decoration/CMakeLists.txt
 src/server/symbols.map
 src/wayland/CMakeLists.txt
 src/wayland/generator/CMakeLists.txt
 src/wayland/mirwayland.pc.in
 src/wayland/symbols.map
 tests/CMakeLists.txt
 tests/acceptance-tests/CMakeLists.txt
 tests/acceptance-tests/platforms/CMakeLists.txt
 tests/acceptance-tests/wayland-generator/CMakeLists.txt
 tests/acceptance-tests/wayland-generator/expected.cpp
 tests/acceptance-tests/wayland-generator/expected.h
 tests/acceptance-tests/wayland-generator/test_wayland_generator.sh.in
 tests/acceptance-tests/wayland-generator/update_wayland_generator_test.sh.in
 tests/acceptance-tests/wayland/CMakeLists.txt
 tests/acceptance-tests/wayland/print_missing_wlcs_tests.cmake
 tests/acceptance-tests/wayland/symbol.map
 tests/integration-tests/CMakeLists.txt
 tests/integration-tests/compositor/CMakeLists.txt
 tests/integration-tests/input/CMakeLists.txt
 tests/integration-tests/process/CMakeLists.txt
 tests/mir_test/CMakeLists.txt
 tests/mir_test_doubles/CMakeLists.txt
 tests/mir_test_framework/CMakeLists.txt
 tests/mir_test_framework/symbols-server.map.in
 tests/mir_test_framework/testing-cursor-theme/CMakeLists.txt
 tests/mir_test_framework/testing-cursor-theme/default/cursors/arrow
 tests/mir_test_framework/testing-cursor-theme/default/cursors/arrow.in
 tests/mir_test_framework/testing-cursor-theme/default/cursors/arrow.png
 tests/mir_test_framework/testing-cursor-theme/default/cursors/blue
 tests/mir_test_framework/testing-cursor-theme/default/cursors/blue.in
 tests/mir_test_framework/testing-cursor-theme/default/cursors/blue.png
 tests/mir_test_framework/testing-cursor-theme/default/cursors/generate-theme.sh
 tests/mir_test_framework/testing-cursor-theme/default/cursors/green
 tests/mir_test_framework/testing-cursor-theme/default/cursors/green.in
 tests/mir_test_framework/testing-cursor-theme/default/cursors/green.png
 tests/mir_test_framework/testing-cursor-theme/default/cursors/red
 tests/mir_test_framework/testing-cursor-theme/default/cursors/red.in
 tests/mir_test_framework/testing-cursor-theme/default/cursors/red.png
 tests/mir_test_framework/udev-recordings/CMakeLists.txt
 tests/mir_test_framework/udev-recordings/bluetooth-magic-trackpad.ioctl
 tests/mir_test_framework/udev-recordings/bluetooth-magic-trackpad.umockdev
 tests/mir_test_framework/udev-recordings/joystick-detection.ioctl
 tests/mir_test_framework/udev-recordings/joystick-detection.umockdev
 tests/mir_test_framework/udev-recordings/laptop-keyboard-hello.evemu
 tests/mir_test_framework/udev-recordings/laptop-keyboard.ioctl
 tests/mir_test_framework/udev-recordings/laptop-keyboard.umockdev
 tests/mir_test_framework/udev-recordings/laptop-mouse-click.evemu
 tests/mir_test_framework/udev-recordings/laptop-mouse-motion.evemu
 tests/mir_test_framework/udev-recordings/laptop-mouse.ioctl
 tests/mir_test_framework/udev-recordings/laptop-mouse.umockdev
 tests/mir_test_framework/udev-recordings/mt-screen-detection.ioctl
 tests/mir_test_framework/udev-recordings/mt-screen-detection.umockdev
 tests/mir_test_framework/udev-recordings/standard-drm-devices.umockdev
 tests/mir_test_framework/udev-recordings/standard-drm-render-nodes.ioctl
 tests/mir_test_framework/udev-recordings/standard-drm-render-nodes.umockdev
 tests/mir_test_framework/udev-recordings/synaptics-touchpad.ioctl
 tests/mir_test_framework/udev-recordings/synaptics-touchpad.umockdev
 tests/mir_test_framework/udev-recordings/usb-keyboard.ioctl
 tests/mir_test_framework/udev-recordings/usb-keyboard.umockdev
 tests/mir_test_framework/udev-recordings/usb-mouse.ioctl
 tests/mir_test_framework/udev-recordings/usb-mouse.umockdev
 tests/miral/CMakeLists.txt
 tests/mirtest.pc.in
 tests/performance-tests/CMakeLists.txt
 tests/platform_test_harness/CMakeLists.txt
 tests/umock-acceptance-tests/CMakeLists.txt
 tests/unit-tests/CMakeLists.txt
 tests/unit-tests/compositor/CMakeLists.txt
 tests/unit-tests/console/CMakeLists.txt
 tests/unit-tests/dbus/session.conf
 tests/unit-tests/dbus/system.conf
 tests/unit-tests/dispatch/CMakeLists.txt
 tests/unit-tests/frontend_wayland/CMakeLists.txt
 tests/unit-tests/frontend_xwayland/CMakeLists.txt
 tests/unit-tests/geometry/CMakeLists.txt
 tests/unit-tests/gl/CMakeLists.txt
 tests/unit-tests/graphics/CMakeLists.txt
 tests/unit-tests/graphics/egl_mock/CMakeLists.txt
 tests/unit-tests/input/CMakeLists.txt
 tests/unit-tests/input/evdev/CMakeLists.txt
 tests/unit-tests/logging/CMakeLists.txt
 tests/unit-tests/options/CMakeLists.txt
 tests/unit-tests/platforms/CMakeLists.txt
 tests/unit-tests/platforms/eglstream-kms/CMakeLists.txt
 tests/unit-tests/platforms/eglstream-kms/client/CMakeLists.txt
 tests/unit-tests/platforms/eglstream-kms/server/CMakeLists.txt
 tests/unit-tests/platforms/gbm-kms/CMakeLists.txt
 tests/unit-tests/platforms/gbm-kms/kms-utils/CMakeLists.txt
 tests/unit-tests/platforms/gbm-kms/kms/CMakeLists.txt
 tests/unit-tests/platforms/virtual/CMakeLists.txt
 tests/unit-tests/platforms/x11/CMakeLists.txt
 tests/unit-tests/renderers/gl/CMakeLists.txt
 tests/unit-tests/scene/CMakeLists.txt
 tests/unit-tests/shared-libraries/README
 tests/unit-tests/shared-libraries/libamd64.so
 tests/unit-tests/shared-libraries/libarm64.so
 tests/unit-tests/shared-libraries/libarmhf.so
 tests/unit-tests/shared-libraries/libi386.so
 tests/unit-tests/shared-libraries/libpowerpc.so
 tests/unit-tests/shared-libraries/libppc64el.so
 tests/unit-tests/shared-libraries/libinvalid.so.3
 tests/unit-tests/shared-libraries/empty_input.c
 tests/unit-tests/shell/CMakeLists.txt
 tests/unit-tests/wayland/CMakeLists.txt
 tests/window_management_tests/CMakeLists.txt
 tools/abi-check-mircommon-skip-symbols
 tools/abi-check-mirserver-skip-symbols
 tools/abigail_check.sh
 tools/abigail_suppressions_client
 tools/abigail_suppressions_generic
 tools/detect_fd_leaks.bash
 tools/discover_gtests.sh
 tools/lib_descriptor.xml.skel
 tools/mir-smoke-test-runner.sh
 tools/process_doxygen_xml.py
 tools/run_ctests.sh
 tools/symbols_map_generator/README.md
 tools/tsan-suppressions
 tools/ubsan-suppressions
 tools/update_package_abis.sh
 tools/valgrind_suppressions_armhf
 tools/valgrind_suppressions_generic
 tools/valgrind_suppressions_glibc_2.23
 tools/valgrind_suppressions_libhybris
Copyright: 2012-2025, Canonical Ltd.
License: GPL-3-or-GPL-2
Comment:
 No license headers. Assuming license and copyright
 holdership from majority of code files.
 .
 Upstream ships a debian/copyright with
 'Files: *' using the same license.

Files: examples/client/spinner.cpp
 examples/example-server-lib/splash_session.h
 examples/miral-shell/spinner/CMakeLists.txt
 include/common/mir/c_memory.h
 include/miral/miral/display_configuration.h
 include/miral/miral/minimal_window_manager.h
 include/miroil/miroil/compositor.h
 include/miroil/miroil/display_configuration_policy.h
 include/miroil/miroil/display_configuration_storage.h
 include/miroil/miroil/edid.h
 include/miroil/miroil/eventdispatch.h
 include/miroil/miroil/mir_server_hooks.h
 include/miroil/miroil/mirbuffer.h
 include/miroil/miroil/open_gl_context.h
 include/miroil/miroil/persist_display_config.h
 include/miroil/miroil/prompt_session_listener.h
 include/miroil/miroil/prompt_session_manager.h
 include/miroil/miroil/set_compositor.h
 include/miroil/miroil/surface_observer.h
 include/test/mir_test_framework/input_device_faker.h
 include/wayland/mir/wayland/client.h
 src/miral/application_info_internal.h
 src/miral/display_configuration.cpp
 src/miral/minimal_window_manager.cpp
 src/miral/open_desktop_entry.cpp
 src/miral/open_desktop_entry.h
 src/miral/toolkit_event.cpp
 src/miral/wayland_extensions.cpp
 src/miral/window_info_internal.h
 src/miral/window_specification_internal.cpp
 src/miral/window_specification_internal.h
 src/miroil/display_configuration_policy.cpp
 src/miroil/edid.cpp
 src/miroil/eventdispatch.cpp
 src/miroil/input_device.cpp
 src/miroil/mir_server_hooks.cpp
 src/miroil/open_gl_context.cpp
 src/miroil/persist_display_config.cpp
 src/miroil/prompt_session_manager.cpp
 src/miroil/set_compositor.cpp
 src/server/frontend_wayland/desktop_file_manager.cpp
 src/server/frontend_wayland/desktop_file_manager.h
 src/server/frontend_wayland/foreign_toplevel_manager_v1.cpp
 src/server/frontend_wayland/foreign_toplevel_manager_v1.h
 src/server/frontend_wayland/frame_executor.cpp
 src/server/frontend_wayland/frame_executor.h
 src/server/frontend_wayland/idle_inhibit_v1.cpp
 src/server/frontend_wayland/idle_inhibit_v1.h
 src/server/frontend_wayland/input_method_common.cpp
 src/server/frontend_wayland/input_method_common.h
 src/server/frontend_wayland/input_method_grab_keyboard_v2.cpp
 src/server/frontend_wayland/input_method_grab_keyboard_v2.h
 src/server/frontend_wayland/input_method_v1.cpp
 src/server/frontend_wayland/input_method_v1.h
 src/server/frontend_wayland/input_method_v2.cpp
 src/server/frontend_wayland/input_method_v2.h
 src/server/frontend_wayland/keyboard_helper.cpp
 src/server/frontend_wayland/keyboard_helper.h
 src/server/frontend_wayland/layer_shell_v1.cpp
 src/server/frontend_wayland/layer_shell_v1.h
 src/server/frontend_wayland/mir_shell.cpp
 src/server/frontend_wayland/mir_shell.h
 src/server/frontend_wayland/null_event_sink.cpp
 src/server/frontend_wayland/null_event_sink.h
 src/server/frontend_wayland/output_manager.cpp
 src/server/frontend_wayland/output_manager.h
 src/server/frontend_wayland/primary_selection_v1.cpp
 src/server/frontend_wayland/primary_selection_v1.h
 src/server/frontend_wayland/resource_lifetime_tracker.cpp
 src/server/frontend_wayland/resource_lifetime_tracker.h
 src/server/frontend_wayland/session_lock_v1.cpp
 src/server/frontend_wayland/session_lock_v1.h
 src/server/frontend_wayland/text_input_v1.cpp
 src/server/frontend_wayland/text_input_v1.h
 src/server/frontend_wayland/text_input_v2.cpp
 src/server/frontend_wayland/text_input_v2.h
 src/server/frontend_wayland/text_input_v3.cpp
 src/server/frontend_wayland/text_input_v3.h
 src/server/frontend_wayland/virtual_keyboard_v1.cpp
 src/server/frontend_wayland/virtual_keyboard_v1.h
 src/server/frontend_wayland/virtual_pointer_v1.cpp
 src/server/frontend_wayland/virtual_pointer_v1.h
 src/server/frontend_wayland/wayland_connector.cpp
 src/server/frontend_wayland/wayland_connector.h
 src/server/frontend_wayland/wayland_executor.cpp
 src/server/frontend_wayland/wayland_executor.h
 src/server/frontend_wayland/wayland_input_dispatcher.cpp
 src/server/frontend_wayland/wayland_input_dispatcher.h
 src/server/frontend_wayland/wayland_surface_observer.cpp
 src/server/frontend_wayland/wayland_surface_observer.h
 src/server/frontend_wayland/wayland_timespec.h
 src/server/frontend_wayland/wayland_utils.h
 src/server/frontend_wayland/window_wl_surface_role.cpp
 src/server/frontend_wayland/window_wl_surface_role.h
 src/server/frontend_wayland/wl_client.cpp
 src/server/frontend_wayland/wl_client.h
 src/server/frontend_wayland/wl_data_device.cpp
 src/server/frontend_wayland/wl_data_device.h
 src/server/frontend_wayland/wl_data_device_manager.cpp
 src/server/frontend_wayland/wl_data_device_manager.h
 src/server/frontend_wayland/wl_data_source.cpp
 src/server/frontend_wayland/wl_data_source.h
 src/server/frontend_wayland/wl_keyboard.cpp
 src/server/frontend_wayland/wl_keyboard.h
 src/server/frontend_wayland/wl_pointer.cpp
 src/server/frontend_wayland/wl_pointer.h
 src/server/frontend_wayland/wl_seat.cpp
 src/server/frontend_wayland/wl_seat.h
 src/server/frontend_wayland/wl_shell.cpp
 src/server/frontend_wayland/wl_shell.h
 src/server/frontend_wayland/wl_subcompositor.cpp
 src/server/frontend_wayland/wl_subcompositor.h
 src/server/frontend_wayland/wl_surface.cpp
 src/server/frontend_wayland/wl_surface.h
 src/server/frontend_wayland/wl_surface_role.h
 src/server/frontend_wayland/wl_touch.cpp
 src/server/frontend_wayland/wl_touch.h
 src/server/frontend_wayland/wlr_screencopy_v1.cpp
 src/server/frontend_wayland/wlr_screencopy_v1.h
 src/server/frontend_wayland/wp_viewporter.cpp
 src/server/frontend_wayland/wp_viewporter.h
 src/server/frontend_wayland/xdg_output_v1.cpp
 src/server/frontend_wayland/xdg_output_v1.h
 src/server/frontend_wayland/xdg_shell_stable.cpp
 src/server/frontend_wayland/xdg_shell_stable.h
 src/server/frontend_wayland/xdg_shell_v6.cpp
 src/server/frontend_wayland/xdg_shell_v6.h
 src/server/frontend_xwayland/scaled_buffer_stream.cpp
 src/server/frontend_xwayland/scaled_buffer_stream.h
 src/server/frontend_xwayland/xwayland_surface_observer.cpp
 src/server/frontend_xwayland/xwayland_surface_observer.h
 src/server/frontend_xwayland/xwayland_surface_observer_surface.h
 src/server/frontend_xwayland/xwayland_surface_role.cpp
 src/server/frontend_xwayland/xwayland_surface_role.h
 src/server/frontend_xwayland/xwayland_surface_role_surface.h
 src/server/input/idle_poking_dispatcher.cpp
 src/server/input/idle_poking_dispatcher.h
 src/server/input/keyboard_resync_dispatcher.cpp
 src/server/input/keyboard_resync_dispatcher.h
 tests/acceptance-tests/wayland/miral_integration.cpp
 tests/acceptance-tests/wayland/test_wlcs_display_server.cpp
 tests/acceptance-tests/wayland/test_wlcs_display_server.h
 tests/include/mir/test/doubles/stub_main_loop.h
 tests/mir_test_framework/input_device_faker.cpp
 tests/miral/external_client.cpp
 tests/miral/ignored_requests.cpp
 tests/miral/modify_window_specification.cpp
 tests/miral/static_display_config.cpp
 tests/miral/wayland_extensions.cpp
 tests/platform_test_harness/graphics_platform_test_harness.cpp
Copyright: 2014, Canonical Ltd.
  2015, Canonical Ltd.
  2015-2018, Canonical Ltd.
  2015-2019, Canonical Ltd.
  2016, Canonical Ltd.
  2016-2020, Canonical Ltd.
  2016-2021, Canonical Ltd.
  2017, Canonical Ltd.
  2017-2020, Canonical Ltd.
  2018, Canonical Ltd.
  2018-2019, Canonical Ltd.
  2018-2021, Canonical Ltd.
  2019, Canonical Ltd.
  2019-2020, Canonical Ltd.
  2019-2021, Canonical Ltd.
  2020, Canonical Ltd.
  2021, Canonical Ltd.
  2022, Canonical Ltd.
License: GPL-3

Files: src/server/frontend_xwayland/xcb_connection.cpp
 src/server/frontend_xwayland/xcb_connection.h
 src/server/frontend_xwayland/xwayland_connector.cpp
 src/server/frontend_xwayland/xwayland_connector.h
 src/server/frontend_xwayland/xwayland_cursors.cpp
 src/server/frontend_xwayland/xwayland_cursors.h
 src/server/frontend_xwayland/xwayland_server.cpp
 src/server/frontend_xwayland/xwayland_server.h
 src/server/frontend_xwayland/xwayland_spawner.cpp
 src/server/frontend_xwayland/xwayland_spawner.h
 src/server/frontend_xwayland/xwayland_surface.cpp
 src/server/frontend_xwayland/xwayland_surface.h
 src/server/frontend_xwayland/xwayland_wm.cpp
 src/server/frontend_xwayland/xwayland_wm.h
 src/server/frontend_xwayland/xwayland_wm_shell.h
Copyright: 2018, Marius Gripsgard <marius@ubports.com>
  2019, Canonical Ltd.
  2019-2020, Canonical Ltd.
  2020, Canonical Ltd.
License: GPL-3-or-GPL-2

Files: include/miroil/miroil/display_configuration_controller_wrapper.h
 include/miroil/miroil/display_listener_wrapper.h
 include/miroil/miroil/event_builder.h
 include/miroil/miroil/input_device.h
 include/miroil/miroil/input_device_observer.h
 include/miroil/miroil/surface.h
 src/miroil/compositor.cpp
 src/miroil/display_configuration_controller_wrapper.cpp
 src/miroil/display_listener_wrapper.cpp
 src/miroil/event_builder.cpp
 src/miroil/input_device_observer.cpp
 src/miroil/prompt_session_listener.cpp
 src/miroil/surface.cpp
Copyright: 2016-2021, Canonical, Ltd.
  2021, Canonical, Ltd.
License: LGPL-3

Files: cmake/EnableCoverageReport.cmake
 cmake/FindLcov.cmake
 cmake/Findgcovr.cmake
Copyright: 2010, Johannes Wienke <jwienke at techfak dot uni-bielefeld dot de>
  2011, Johannes Wienke <jwienke at techfak dot uni-bielefeld dot de>
License: GPL-2+

Files: src/server/frontend_xwayland/xwayland_default_configuration.cpp
 src/server/frontend_xwayland/xwayland_log.h
Copyright: 2018, Marius Gripsgard <marius@ubports.com>
License: GPL-3-or-GPL-2

Files: src/miroil/mirbuffer.cpp
Copyright: 2017-2020, Canonical Ltd.
  2021, UBports Foundation.
License: GPL-3-or-GPL-2

Files: tests/miral/org_kde_kwin_server_decoration.c
 wayland-protocols/server-decoration.xml
Copyright: 2015, Martin Gräßlin
License: LGPL-2.1+

Files: src/platforms/wayland/displayclient.cpp
 src/platforms/wayland/displayclient.h
Copyright: 2018-2019, Octopull Ltd.
  2019, Canonical Ltd.
License: LGPL-3-or-LGPL-2

Files: src/miral/xcursor.c
 src/miral/xcursor.h
Copyright: 2002, Keith Packard
License: MIT~X11

Files: wayland-protocols/wayland.xml
 tests/acceptance-tests/wayland-generator/protocol.xml
Copyright: 2008-2011, Kristian Høgsberg
  2010-2011, Intel Corporation
  2012-2013, Collabora, Ltd.
License: Expat

Files: src/platforms/wayland/protocol/xdg-shell-client.c
 wayland-protocols/xdg-shell.xml
Copyright: 2008-2013, Kristian Høgsberg
  2010-2013, Intel Corporation
  2013, Jasper St. Pierre
  2013, Rafael Antognolli
  2015-2017, Red Hat Inc.
  2015-2017, Samsung Electronics Co., Ltd
License: Expat

Files: wayland-protocols/pointer-constraints-unstable-v1.xml
 wayland-protocols/relative-pointer-unstable-v1.xml
Copyright: 2014, Jonas Ådahl
  2015, Red Hat Inc.
License: Expat

Files: wayland-protocols/ext-session-lock-v1.xml
Copyright: 2021, Isaac Freund
License: Expat

Files: src/platforms/eglstream-kms/server/wayland-eglstream-controller.xml
Copyright: 2017, NVIDIA CORPORATION.
License: Expat

Files: src/platforms/eglstream-kms/server/wayland-eglstream-controller.h
Copyright: 2017, NVIDIA CORPORATION
License: Expat

Files: tests/miral/org_kde_kwin_server_decoration.h
Copyright: 2015, Martin Gräßlin
License: LGPL-2.1+
Comment:
 Generated file.

Files: src/core/geometry/CMakeLists.txt
Copyright: 2013, Canonical Ltd.
License: LGPL-3

Files: include/platform/mir/graphics/egl_extensions.h
Copyright: 2013, Canonical Ltd.
License: LGPL-3-or-LGPL-2
Comment:
 Files contains code portions licensed under the Expat license.

Files: wayland-protocols/wlr-layer-shell-unstable-v1.xml
Copyright: 2017, Drew DeVault
License: NTP

Files: wayland-protocols/wlr-foreign-toplevel-management-unstable-v1.xml
Copyright: 2018, Ilia Bozhinov
License: NTP

Files: wayland-protocols/text-input-unstable-v2.xml
Copyright: 2012-2013, Intel Corporation
  2015-2016, Jan Arne Petersen
License: NTP

Files: wayland-protocols/text-input-unstable-v3.xml
Copyright: 2012-2013, Intel Corporation
  2015-2016, Jan Arne Petersen
  2017-2018, Red Hat, Inc.
  2018, Purism SPC
License: NTP

Files: wayland-protocols/wlr-screencopy-unstable-v1.xml
Copyright: 2018, Simon Ser
  2019, Andri Yngvason
License: Expat

Files: wayland-protocols/input-method-unstable-v2.xml
Copyright: 2008-2011, Kristian Høgsberg
  2010-2011, Intel Corporation
  2012-2013, Collabora, Ltd.
  2012-2013, Intel Corporation
  2015-2016, Jan Arne Petersen
  2017-2018, Red Hat, Inc.
  2018, Purism SPC
License: Expat

Files: wayland-protocols/virtual-keyboard-unstable-v1.xml
Copyright: 2008-2011, Kristian Høgsberg
  2010-2013, Intel Corporation
  2012-2013, Collabora, Ltd.
  2018, Purism SPC
License: Expat

Files: wayland-protocols/text-input-unstable-v1.xml
       wayland-protocols/input-method-unstable-v1.xml
Copyright: 2012, 2013, Intel Corporation
License: Expat

Files: wayland-protocols/xdg-shell-unstable-v6.xml
Copyright: 2008-2013, Kristian Høgsberg
  2010-2013, Intel Corporation
  2013, Jasper St. Pierre
  2013, Rafael Antognolli
License: Expat

Files: src/platforms/wayland/protocol/xdg-shell-client.h
Copyright: 2008-2013, Kristian Høgsberg
  2010-2013, Intel Corporation
  2013, Jasper St. Pierre
  2013, Rafael Antognolli
  2015-2017, Red Hat Inc.
  2015-2017, Samsung Electronics Co., Ltd
License: Expat

Files: wayland-protocols/wlr-virtual-pointer-unstable-v1.xml
Copyright: 2019, Josef Gajdusek
License: Expat

Files: wayland-protocols/primary-selection-unstable-v1.xml
 wayland-protocols/xdg-output-unstable-v1.xml
Copyright: 2015, 2016, Red Hat Inc.
  2017, Red Hat Inc.
License: Expat

Files: wayland-protocols/idle-inhibit-unstable-v1.xml
Copyright: 2015, Samsung Electronics Co., Ltd
License: Expat

Files: wayland-protocols/fractional-scale-v1.xml
Copyright: 2022 Kenny Levinsen
License: Expat

Files: wayland-protocols/linux-dmabuf-unstable-v1.xml
Copyright: 2014, 2015 Collabora, Ltd.
License: Expat

Files: wayland-protocols/mir-shell-unstable-v1.xml
Copyright: 2023 Canonical Ltd.
License: Expat

Files: wayland-protocols/viewporter.xml
Copyright: 2013-2016 Collabora, Ltd.
License: Expat

Files: wayland-protocols/xdg-activation-v1.xml
Copyright: 2020 Aleix Pol Gonzalez <aleixpol@kde.org>
           2020 Carlos Garnacho <carlosg@gnome.org>
License: Expat

Files: wayland-protocols/xdg-decoration-unstable-v1.xml
Copyright: 2018 Simon Ser
License: Expat

Files: design/Architecture.dia
Copyright: 2013, Canonical Ltd.
License: GPL-3-or-GPL-2
Comment:
 Assuming license from the majority of
 project files.
 .
 Deriving copyright holder and year from
 upstream's Git log.

Files: debian/*
Copyright: 2012-2022, Canonical Ltd.
  2020-2023, Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
  2022-2023, Marius Gripsgard <marius@ubports.com>
  2020-2025, Simon Quigley <tsimonq2@debian.org>
License: GPL-3-or-GPL-2 or LGPL-3-or-LGPL-2 or GPL-2+ or LGPL-3 or LGPL-2.1+ or ISC or MIT~X11 or Expat or BSD-3-clause or NTP
Comment:
 Allowing all licenses occurring in the upstream
 code base.

License: GPL-3-or-GPL-2
 This program is free software: you can redistribute it and/or modify
 it under the terms of the GNU General Public License version 2 or 3 as
 published by the Free Software Foundation.
 .
 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.
 .
 On Debian systems, the full text of the GNU General Public
 License version 3 can be found in the file
 `/usr/share/common-licenses/GPL-3'.
 .
 On Debian systems, the full text of the GNU General Public
 License version 2 can be found in the file
 `/usr/share/common-licenses/GPL-2'.

License: GPL-3
 This program is free software; you can redistribute it and/or modify it
 under the terms of the GNU General Public License version 3 as published
 by the Free Software Foundation.
 .
 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.
 .
 On Debian systems, the full text of the GNU General Public
 License version 3 can be found in the file
 `/usr/share/common-licenses/GPL-3'.

License: GPL-2+
 This program is free software; you can redistribute it and/or modify
 it under the terms of the GNU General Public License as published by
 the Free Software Foundation; either version 2, or (at your option)
 any later version.
 .
 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU General Public License for more details.
 .
 On Debian systems, the full text of the GNU General Public
 License version 2 can be found in the file
 `/usr/share/common-licenses/GPL-2'.

License: LGPL-3-or-LGPL-2
 This program is free software: you can redistribute it and/or modify it
 under the terms of the GNU Lesser General Public License version 2 or 3
 as published by the Free Software Foundation.
 .
 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU Lesser General Public License for more details.
 .
 On Debian systems, the full text of the GNU Lesser General Public
 License version 3 can be found in the file
 `/usr/share/common-licenses/LGPL-3'.
 .
 On Debian systems, the full text of the GNU Lesser General Public
 License version 2 can be found in the file
 `/usr/share/common-licenses/LGPL-2'.

License: LGPL-2.1+
 This program is free software: you can redistribute it and/or modify
 it under the terms of the GNU Lesser General Public License as published by
 the Free Software Foundation, either version 2.1 of the License, or
 (at your option) any later version.
 .
 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU Lesser General Public License for more details.
 .
 On Debian systems, the full text of the GNU Lesser General Public
 License version 2.1 can be found in the file
 `/usr/share/common-licenses/LGPL-2.1'.

License: LGPL-3
 This program is free software: you can redistribute it and/or modify it
 under the terms of the GNU Lesser General Public License version 3 as
 published by the Free Software Foundation.
 .
 This program is distributed in the hope that it will be useful,
 but WITHOUT ANY WARRANTY; without even the implied warranty of
 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 GNU Lesser General Public License for more details.
 .
 On Debian systems, the full text of the GNU Lesser General Public
 License version 3 can be found in the file
 `/usr/share/common-licenses/LGPL-3'.

License: BSD-3-clause
 Redistribution and use in source and binary forms, with or without
 modification, are permitted provided that the following conditions
 are met:
 1. Redistributions of source code must retain the above copyright
    notice, and the entire permission notice in its entirety,
    including the disclaimer of warranties.
 2. Redistributions in binary form must reproduce the above copyright
    notice, this list of conditions and the following disclaimer in the
    documentation and/or other materials provided with the distribution.
 3. The name of the author may not be used to endorse or promote
    products derived from this software without specific prior
    written permission.
 .
 THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESS OR IMPLIED
 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
 OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
 DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
 INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
 (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
 SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
 HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
 STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
 ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
 OF THE POSSIBILITY OF SUCH DAMAGE.

License: ISC
 Permission to use, copy, modify, and/or distribute this software for any
 purpose with or without fee is hereby granted, provided that the above
 copyright notice and this permission notice appear in all copies.
 .
 THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
 WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
 MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
 ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
 ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
 OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

License: MIT~X11
 Permission to use, copy, modify, distribute, and sell this software and its
 documentation for any purpose is hereby granted without fee, provided that
 the above copyright notice appear in all copies and that both that
 copyright notice and this permission notice appear in supporting
 documentation, and that the name of the copyright holders not be used in
 advertising or publicity pertaining to distribution of the software without
 specific, written prior permission. The copyright holders  make no
 representations about the suitability of this software for any purpose.  It
 is provided "as is" without express or implied warranty.
 .
 THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
 INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
 EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY SPECIAL, INDIRECT OR
 CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
 DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
 TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 PERFORMANCE OF THIS SOFTWARE.

License: Expat
 Permission is hereby granted, free of charge, to any person obtaining a
 copy of this software and associated documentation files (the "Software"),
 to deal in the Software without restriction, including without limitation
 the rights to use, copy, modify, merge, publish, distribute, sublicense,
 and/or sell copies of the Software, and to permit persons to whom the
 Software is furnished to do so, subject to the following conditions:
 .
 The above copyright notice and this permission notice (including the next
 paragraph) shall be included in all copies or substantial portions of the
 Software.
 .
 THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
 THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
 DEALINGS IN THE SOFTWARE.

License: NTP
 Permission to use, copy, modify, distribute, and sell this
 software and its documentation for any purpose is hereby granted
 without fee, provided that the above copyright notice appear in
 all copies and that both that copyright notice and this permission
 notice appear in supporting documentation, and that the name of
 the copyright holders not be used in advertising or publicity
 pertaining to distribution of the software without specific,
 written prior permission.  The copyright holders make no
 representations about the suitability of this software for any
 purpose.  It is provided "as is" without express or implied
 warranty.
 .
 THE COPYRIGHT HOLDERS DISCLAIM ALL WARRANTIES WITH REGARD TO THIS
 SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND
 FITNESS, IN NO EVENT SHALL THE COPYRIGHT HOLDERS BE LIABLE FOR ANY
 SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
 WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN
 AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
 ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF
 THIS SOFTWARE.