=== modified file 'debian/control'
--- debian/control 2017-05-25 08:58:03 +0000
+++ debian/control 2017-06-19 15:01:38 +0000
@@ -347,6 +347,20 @@
Contains the shared libraries required for the Mir server to interact with
the hardware platform using the Mesa drivers.
+Package: mir-platform-graphics-mir13
+Section: libs
+Architecture: linux-any
+Multi-Arch: same
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends},
+ ${shlibs:Depends},
+Description: Display server for Ubuntu - platform library for Nested servers
+ Mir is a display server running on linux systems, with a focus on efficiency,
+ robust operation and a well-defined driver model.
+ .
+ Contains the shared libraries required for the Mir server to connect to
+ another Mir server.
+
Package: mir-platform-input-evdev7
Section: libs
Architecture: linux-any
@@ -399,6 +413,7 @@
mir-platform-graphics-mesa-x13,
mir-client-platform-mesa5,
mir-platform-input-evdev7,
+ mir-platform-graphics-mir13,
Description: Display server for Ubuntu - desktop driver metapackage
Mir is a display server running on linux systems, with a focus on efficiency,
robust operation and a well-defined driver model.
=== added file 'debian/mir-platform-graphics-mir13.install'
--- debian/mir-platform-graphics-mir13.install 1970-01-01 00:00:00 +0000
+++ debian/mir-platform-graphics-mir13.install 2017-06-19 15:01:38 +0000
@@ -0,0 +1,1 @@
+usr/lib/*/mir/server-platform/server-mir.so.13
=== modified file 'include/platform/mir/graphics/cursor.h'
--- include/platform/mir/graphics/cursor.h 2015-04-28 07:54:10 +0000
+++ include/platform/mir/graphics/cursor.h 2017-06-19 15:01:38 +0000
@@ -33,7 +33,6 @@
class Cursor
{
public:
- virtual void show() = 0;
virtual void show(CursorImage const& cursor_image) = 0;
virtual void hide() = 0;
=== renamed file 'src/include/server/mir/graphics/gl_extensions_base.h' => 'include/platform/mir/graphics/gl_extensions_base.h'
--- src/include/server/mir/graphics/gl_extensions_base.h 2015-02-22 07:46:25 +0000
+++ include/platform/mir/graphics/gl_extensions_base.h 2017-06-19 15:01:38 +0000
@@ -2,15 +2,15 @@
* Copyright © 2013 Canonical Ltd.
*
* This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3,
+ * 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 General Public License for more details.
+ * GNU Lesser General Public License for more details.
*
- * You should have received a copy of the GNU General Public License
+ * You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see .
*
* Authored by: Alexandros Frantzis
=== modified file 'include/platform/mir/graphics/platform.h'
--- include/platform/mir/graphics/platform.h 2017-06-09 11:19:23 +0000
+++ include/platform/mir/graphics/platform.h 2017-06-19 15:01:38 +0000
@@ -29,6 +29,7 @@
namespace mir
{
class EmergencyCleanupRegistry;
+namespace shell { class HostLifecycleEventListener; }
namespace logging { class Logger; }
@@ -149,22 +150,20 @@
/**
* A measure of how well a platform supports a device
*
- * \note This is compared as an integer; best + 1 is a valid PlatformPriority that
- * will be used in preference to a module that reports best.
+ * \note This is compared as an integer; request + 1 is a valid PlatformPriority that
+ * will be used in preference to a module that reports request.
* Platform modules distributed with Mir will never use a priority higher
- * than best.
+ * than request.
*/
enum PlatformPriority : uint32_t
{
unsupported = 0, /**< Unable to function at all on this device */
- dummy = 1, /**< Used only for dummy or stub platforms.
- */
+ dummy = 1, /**< Used only for dummy or stub platforms. */
supported = 128, /**< Capable of providing a functioning Platform on this device,
- * possibly with degraded performance or features.
- */
- best = 256 /**< Capable of providing a Platform with the best features and
- * performance this device is capable of.
- */
+ * possibly with degraded performance or features. */
+ best = 192, /**< Capable of providing a Platform with the best features and
+ * performance this device is capable of.*/
+ requested = 256 /**< Provides a Platform that satisfies a user request. */
};
//The host/guest platform concept is soon to be removed. Use CreateRenderingPlatform and
@@ -173,7 +172,8 @@
std::shared_ptr const& options,
std::shared_ptr const& emergency_cleanup_registry,
std::shared_ptr const& report,
- std::shared_ptr const& logger);
+ std::shared_ptr const& logger,
+ std::shared_ptr const& host_lifecycle_event_listener);
typedef void(*AddPlatformOptions)(
boost::program_options::options_description& config);
@@ -210,6 +210,7 @@
* \param [in] options options to use for this platform
* \param [in] emergency_cleanup_registry object to register emergency shutdown handlers with
* \param [in] report the object to use to report interesting events from the display subsystem
+ * \param [in] host_lifecycle_event_listener the object to use to listen to events from a host server
*
* This factory function needs to be implemented by each platform.
*
@@ -219,7 +220,8 @@
std::shared_ptr const& options,
std::shared_ptr const& emergency_cleanup_registry,
std::shared_ptr const& report,
- std::shared_ptr const& logger);
+ std::shared_ptr const& logger,
+ std::shared_ptr const& host_lifecycle_event_listener);
/**
* Function prototype used to add platform specific options to the platform-independent server options.
=== renamed file 'src/include/server/mir/graphics/surfaceless_egl_context.h' => 'include/platform/mir/graphics/surfaceless_egl_context.h'
--- src/include/server/mir/graphics/surfaceless_egl_context.h 2016-07-28 09:10:43 +0000
+++ include/platform/mir/graphics/surfaceless_egl_context.h 2017-06-19 15:01:38 +0000
@@ -2,15 +2,15 @@
* Copyright © 2013 Canonical Ltd.
*
* This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3,
+ * 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 General Public License for more details.
+ * GNU Lesser General Public License for more details.
*
- * You should have received a copy of the GNU General Public License
+ * You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see .
*
* Authored by: Alexandros Frantzis
=== modified file 'include/test/mir/test/doubles/stub_cursor.h'
--- include/test/mir/test/doubles/stub_cursor.h 2016-01-29 08:18:22 +0000
+++ include/test/mir/test/doubles/stub_cursor.h 2017-06-19 15:01:38 +0000
@@ -30,7 +30,6 @@
struct StubCursor : public graphics::Cursor
{
- void show() override {}
void show(graphics::CursorImage const&) override {}
void hide() override {}
void move_to(geometry::Point) override {}
=== modified file 'src/include/server/mir/default_server_configuration.h'
--- src/include/server/mir/default_server_configuration.h 2017-05-08 03:04:26 +0000
+++ src/include/server/mir/default_server_configuration.h 2017-06-19 15:01:38 +0000
@@ -208,7 +208,6 @@
virtual std::shared_ptr the_renderer_factory();
virtual std::shared_ptr the_display_configuration_controller();
virtual std::shared_ptr the_display_configuration_policy();
- virtual std::shared_ptr the_host_connection();
virtual std::shared_ptr the_gl_config();
/** @} */
=== modified file 'src/platform/graphics/CMakeLists.txt'
--- src/platform/graphics/CMakeLists.txt 2017-05-08 03:04:26 +0000
+++ src/platform/graphics/CMakeLists.txt 2017-06-19 15:01:38 +0000
@@ -1,4 +1,6 @@
-include_directories(${GL_INCLUDE_DIRS})
+include_directories(
+ ${GL_INCLUDE_DIRS}
+ ${PROJECT_SOURCE_DIR}/include/renderers/gl)
set(
GRAPHICS_SOURCES
@@ -6,6 +8,8 @@
egl_extensions.cpp
egl_resources.cpp
egl_error.cpp
+ surfaceless_egl_context.cpp
+ gl_extensions_base.cpp
display_configuration.cpp
gamma_curves.cpp
buffer_basic.cpp
=== renamed file 'src/server/graphics/gl_extensions_base.cpp' => 'src/platform/graphics/gl_extensions_base.cpp'
--- src/server/graphics/gl_extensions_base.cpp 2013-12-13 05:24:22 +0000
+++ src/platform/graphics/gl_extensions_base.cpp 2017-06-19 15:01:38 +0000
@@ -2,15 +2,15 @@
* Copyright © 2013 Canonical Ltd.
*
* This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3,
+ * 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 General Public License for more details.
+ * GNU Lesser General Public License for more details.
*
- * You should have received a copy of the GNU General Public License
+ * You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see .
*
* Authored by: Alexandros Frantzis
=== renamed file 'src/server/graphics/surfaceless_egl_context.cpp' => 'src/platform/graphics/surfaceless_egl_context.cpp'
--- src/server/graphics/surfaceless_egl_context.cpp 2017-05-08 03:04:26 +0000
+++ src/platform/graphics/surfaceless_egl_context.cpp 2017-06-19 15:01:38 +0000
@@ -2,15 +2,15 @@
* Copyright © 2013 Canonical Ltd.
*
* This program is free software: you can redistribute it and/or modify it
- * under the terms of the GNU General Public License version 3,
+ * 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 General Public License for more details.
+ * GNU Lesser General Public License for more details.
*
- * You should have received a copy of the GNU General Public License
+ * You should have received a copy of the GNU Lesser General Public License
* along with this program. If not, see .
*
* Authored by: Alexandros Frantzis
=== modified file 'src/platform/symbols.map'
--- src/platform/symbols.map 2017-05-25 08:58:03 +0000
+++ src/platform/symbols.map 2017-06-19 15:01:38 +0000
@@ -21,9 +21,16 @@
mir::graphics::EventHandlerRegister::register_signal_handler*;
mir::graphics::EventHandlerRegister::unregister_fd_handler*;
mir::graphics::GammaCurves::GammaCurves*;
+ mir::graphics::GLExtensionsBase::GLExtensionsBase*;
+ mir::graphics::GLExtensionsBase::support*;
mir::graphics::LinearGammaLUTs::LinearGammaLUTs*;
mir::graphics::module_for_device*;
mir::graphics::operator*;
+ mir::graphics::SurfacelessEGLContext::SurfacelessEGLContext*;
+ mir::graphics::SurfacelessEGLContext::make_current*;
+ mir::graphics::SurfacelessEGLContext::operator*;
+ mir::graphics::SurfacelessEGLContext::release_current*;
+ mir::graphics::SurfacelessEGLContext::?SurfacelessEGLContext*;
mir::graphics::UserDisplayConfigurationOutput::extents*;
mir::graphics::UserDisplayConfigurationOutput::UserDisplayConfigurationOutput*;
mir::options::arw_server_socket_opt*;
=== modified file 'src/platforms/CMakeLists.txt'
--- src/platforms/CMakeLists.txt 2017-05-17 04:48:46 +0000
+++ src/platforms/CMakeLists.txt 2017-06-19 15:01:38 +0000
@@ -72,4 +72,5 @@
add_subdirectory(eglstream-kms)
endif()
+add_subdirectory(mir/)
add_subdirectory(evdev/)
=== modified file 'src/platforms/eglstream-kms/server/platform_symbols.cpp'
--- src/platforms/eglstream-kms/server/platform_symbols.cpp 2017-06-09 11:19:23 +0000
+++ src/platforms/eglstream-kms/server/platform_symbols.cpp 2017-06-19 15:01:38 +0000
@@ -74,7 +74,8 @@
std::shared_ptr const&,
std::shared_ptr const&,
std::shared_ptr const&,
- std::shared_ptr const&)
+ std::shared_ptr const&,
+ std::shared_ptr const&)
{
mir::assert_entry_point_signature(&create_host_platform);
return mir::make_module_ptr(
=== modified file 'src/platforms/mesa/server/kms/cursor.cpp'
--- src/platforms/mesa/server/kms/cursor.cpp 2017-06-09 10:22:15 +0000
+++ src/platforms/mesa/server/kms/cursor.cpp 2017-06-19 15:01:38 +0000
@@ -216,17 +216,6 @@
write_buffer_data_locked(lg, buffer, &padded[0], padded_size);
}
-void mgm::Cursor::show()
-{
- std::lock_guard lg(guard);
-
- if (!visible)
- {
- visible = true;
- place_cursor_at_locked(lg, current_position, ForceState);
- }
-}
-
void mgm::Cursor::show(CursorImage const& cursor_image)
{
std::lock_guard lg(guard);
=== modified file 'src/platforms/mesa/server/kms/cursor.h'
--- src/platforms/mesa/server/kms/cursor.h 2017-06-08 08:34:56 +0000
+++ src/platforms/mesa/server/kms/cursor.h 2017-06-19 15:01:38 +0000
@@ -74,7 +74,6 @@
~Cursor() noexcept;
- void show() override;
void show(CursorImage const& cursor_image) override;
void hide() override;
=== modified file 'src/platforms/mesa/server/kms/platform_symbols.cpp'
--- src/platforms/mesa/server/kms/platform_symbols.cpp 2017-06-09 15:10:57 +0000
+++ src/platforms/mesa/server/kms/platform_symbols.cpp 2017-06-19 15:01:38 +0000
@@ -106,7 +106,8 @@
std::shared_ptr const& options,
std::shared_ptr const& emergency_cleanup_registry,
std::shared_ptr const& report,
- std::shared_ptr const& /*logger*/)
+ std::shared_ptr const& /*logger*/,
+ std::shared_ptr const&)
{
mir::assert_entry_point_signature(&create_host_platform);
// ensure mesa finds the mesa mir-platform symbols
=== modified file 'src/platforms/mesa/server/x11/graphics/graphics.cpp'
--- src/platforms/mesa/server/x11/graphics/graphics.cpp 2017-06-09 11:24:39 +0000
+++ src/platforms/mesa/server/x11/graphics/graphics.cpp 2017-06-19 15:01:38 +0000
@@ -46,7 +46,8 @@
std::shared_ptr const& options,
std::shared_ptr const&,
std::shared_ptr const& report,
- std::shared_ptr const& /*logger*/)
+ std::shared_ptr const& /*logger*/,
+ std::shared_ptr const&)
{
mir::assert_entry_point_signature(&create_host_platform);
if (!x11_resources.get_conn())
=== renamed directory 'src/server/graphics/nested' => 'src/platforms/mir'
=== modified file 'src/platforms/mir/CMakeLists.txt'
--- src/server/graphics/nested/CMakeLists.txt 2017-05-08 03:04:26 +0000
+++ src/platforms/mir/CMakeLists.txt 2017-06-19 15:01:38 +0000
@@ -1,7 +1,16 @@
+add_definitions(-DMIR_SERVER_GRAPHICS_PLATFORM_VERSION="${MIR_SERVER_GRAPHICS_PLATFORM_VERSION}")
+
include_directories(
+ ${PROJECT_SOURCE_DIR}/include/client
+ ${PROJECT_SOURCE_DIR}/include/platform
${PROJECT_SOURCE_DIR}/include/renderers/gl
${PROJECT_SOURCE_DIR}/include/platforms/mesa
${PROJECT_SOURCE_DIR}/include/platforms/common
+ ${PROJECT_SOURCE_DIR}/src/include/common # TODO platforms should not depend on private headers
+ ${PROJECT_SOURCE_DIR}/src/include/platform # TODO platforms should not depend on private headers
+ ${PROJECT_SOURCE_DIR}/src/include/client # TODO platforms should not depend on private headers
+ ${PROJECT_SOURCE_DIR}/include/server # TODO platforms should not depend on server
+ ${PROJECT_SOURCE_DIR}/src/include/server # TODO platforms should not depend on private headers
)
add_library(
@@ -18,3 +27,35 @@
ipc_operations.cpp
host_buffer.cpp
)
+
+add_library(mirplatformgraphicsnested SHARED
+ $
+ $
+)
+
+target_link_libraries(
+ mirplatformgraphicsnested
+
+ server_platform_common
+ mirplatform
+ mirclient
+ ${EGL_LDFLAGS} ${EGL_LIBRARIES}
+ ${GLESv2_LDFLAGS} ${GLESv2_LIBRARIES}
+ ${Boost_PROGRAM_OPTIONS_LIBRARY}
+)
+
+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/symbols.map.in
+ ${CMAKE_CURRENT_BINARY_DIR}/symbols.map)
+set(symbol_map ${CMAKE_CURRENT_BINARY_DIR}/symbols.map)
+
+set_target_properties(
+ mirplatformgraphicsnested PROPERTIES
+ OUTPUT_NAME server-mir
+ LIBRARY_OUTPUT_DIRECTORY ${CMAKE_LIBRARY_OUTPUT_DIRECTORY}/server-modules
+ PREFIX ""
+ SUFFIX ".so.${MIR_SERVER_GRAPHICS_PLATFORM_ABI}"
+ LINK_FLAGS "-Wl,--exclude-libs=ALL -Wl,--version-script,${symbol_map}"
+ LINK_DEPENDS ${symbol_map}
+)
+
+install(TARGETS mirplatformgraphicsnested LIBRARY DESTINATION ${MIR_SERVER_PLATFORM_PATH})
=== modified file 'src/platforms/mir/cursor.cpp'
--- src/server/graphics/nested/cursor.cpp 2017-05-08 03:04:26 +0000
+++ src/platforms/mir/cursor.cpp 2017-06-19 15:01:38 +0000
@@ -24,9 +24,8 @@
namespace mgn = mir::graphics::nested;
namespace geom = mir::geometry;
-mgn::Cursor::Cursor(std::shared_ptr const& host_connection, std::shared_ptr const& default_image)
- : connection(host_connection),
- default_image(default_image)
+mgn::Cursor::Cursor(std::shared_ptr const& host_connection)
+ : connection(host_connection)
{
}
@@ -43,11 +42,6 @@
connection->set_cursor_image(cursor_image);
}
-void mgn::Cursor::show()
-{
- connection->set_cursor_image(*default_image);
-}
-
void mgn::Cursor::hide()
{
connection->hide_cursor();
=== modified file 'src/platforms/mir/cursor.h'
--- src/server/graphics/nested/cursor.h 2016-01-29 08:18:22 +0000
+++ src/platforms/mir/cursor.h 2017-06-19 15:01:38 +0000
@@ -31,18 +31,16 @@
class Cursor : public graphics::Cursor
{
public:
- Cursor(std::shared_ptr const& host_connection, std::shared_ptr const& default_image);
+ Cursor(std::shared_ptr const& host_connection);
~Cursor();
void show(CursorImage const& image) override;
- void show() override;
-
+
void hide() override;
void move_to(geometry::Point position) override;
private:
std::shared_ptr const connection;
- std::shared_ptr const default_image;
};
}
}
=== modified file 'src/platforms/mir/display.cpp'
--- src/server/graphics/nested/display.cpp 2017-05-31 17:56:19 +0000
+++ src/platforms/mir/display.cpp 2017-06-19 15:01:38 +0000
@@ -17,6 +17,7 @@
*/
#include "display.h"
+#include "cursor.h"
#include "nested_display_configuration.h"
#include "display_buffer.h"
#include "host_connection.h"
@@ -365,8 +366,7 @@
auto mgn::Display::create_hardware_cursor() -> std::shared_ptr
{
- BOOST_THROW_EXCEPTION(std::logic_error("Initialization loop: we already need the Cursor when creating the Display"));
- // So we can't do this: return std::make_shared(connection);
+ return std::make_shared(connection);
}
std::unique_ptr mgn::Display::create_virtual_output(int /*width*/, int /*height*/)
=== modified file 'src/platforms/mir/platform.cpp'
--- src/server/graphics/nested/platform.cpp 2017-06-09 14:16:54 +0000
+++ src/platforms/mir/platform.cpp 2017-06-19 15:01:38 +0000
@@ -19,13 +19,24 @@
#include "platform.h"
#include "host_connection.h"
#include "display.h"
+#include "mir_client_host_connection.h"
#include "buffer.h"
#include "native_buffer.h"
#include "ipc_operations.h"
#include "mir/shared_library.h"
+#include "mir/module_deleter.h"
+#include "mir/options/option.h"
+#include "mir/options/configuration.h"
+#include "mir/options/program_option.h"
+#include "mir/options/default_configuration.h"
#include "mir/graphics/graphic_buffer_allocator.h"
#include "mir/graphics/display.h"
#include "mir/graphics/platform_ipc_operations.h"
+#include "mir/input/platform.h"
+#include "input_platform.h"
+#include "mir/libname.h"
+#include "mir/assert_module_entry_point.h"
+#include "mir/abnormal_exit.h"
#include "mir/options/option.h"
#include "mir/options/configuration.h"
#include "mir/graphics/buffer_ipc_message.h"
@@ -34,6 +45,7 @@
#include "mir/graphics/platform_authentication_wrapper.h"
#include "mir/renderer/gl/egl_platform.h"
+namespace mi = mir::input;
namespace mg = mir::graphics;
namespace mgn = mir::graphics::nested;
namespace mo = mir::options;
@@ -222,3 +234,125 @@
{
return display_platform->extensions();
}
+
+namespace
+{
+std::shared_ptr global_conn = nullptr;
+
+mir::ModuleProperties const graphics_description = {
+ "mir:mir",
+ MIR_VERSION_MAJOR,
+ MIR_VERSION_MINOR,
+ MIR_VERSION_MICRO,
+ mir::libname()
+};
+
+mir::ModuleProperties const input_description = {
+ "mir:mir-input",
+ MIR_VERSION_MAJOR,
+ MIR_VERSION_MINOR,
+ MIR_VERSION_MICRO,
+ mir::libname()
+};
+}
+
+mir::UniqueModulePtr create_host_platform(
+ std::shared_ptr const& options,
+ std::shared_ptr const&,
+ std::shared_ptr const& display_report,
+ std::shared_ptr const&,
+ std::shared_ptr const& host_lifecycle_event_listener)
+{
+ mir::assert_entry_point_signature(&create_host_platform);
+
+ if (!options->is_set(mo::host_socket_opt))
+ BOOST_THROW_EXCEPTION(mir::AbnormalExit(
+ std::string("Exiting Mir! Reason: Nested Mir needs either $MIR_SOCKET or --") +
+ mo::host_socket_opt));
+
+ auto host_socket = options->get(mo::host_socket_opt);
+
+ std::string server_socket{"none"};
+
+ if (!options->is_set(mir::options::no_server_socket_opt))
+ {
+ server_socket = options->get(mo::server_socket_opt);
+
+ if (server_socket == host_socket)
+ BOOST_THROW_EXCEPTION(mir::AbnormalExit(
+ "Exiting Mir! Reason: Nested Mir and Host Mir cannot use "
+ "the same socket file to accept connections!"));
+ }
+
+ auto const my_name = options->is_set(mo::name_opt) ?
+ options->get(mo::name_opt) :
+ "nested-mir@:" + server_socket;
+
+ auto connection = std::make_shared(
+ host_socket,
+ my_name,
+ host_lifecycle_event_listener);
+
+ auto const platform_library = std::make_shared(connection->graphics_platform_library());
+
+ auto const buffer_platform = std::make_shared(
+ platform_library, connection, display_report, options);
+
+ global_conn = connection;
+ return mir::make_module_ptr(
+ buffer_platform,
+ std::make_unique(buffer_platform, connection, display_report, *options));
+}
+
+void add_graphics_platform_options(boost::program_options::options_description&)
+{
+ mir::assert_entry_point_signature(&add_graphics_platform_options);
+}
+
+mg::PlatformPriority probe_graphics_platform(mo::ProgramOption const& options)
+{
+ mir::assert_entry_point_signature(&probe_graphics_platform);
+
+ bool option_present = false;
+ for (auto &s : options.unparsed_command_line())
+ option_present |= (s.find(mo::host_socket_opt) != std::string::npos);
+ option_present |= options.is_set(mo::host_socket_opt);
+ option_present |= (nullptr != getenv("MIR_SERVER_HOST_SOCKET"));
+
+ if (option_present)
+ return mg::PlatformPriority::requested;
+ else
+ return mg::PlatformPriority::unsupported;
+}
+
+mir::ModuleProperties const* describe_graphics_module()
+{
+ mir::assert_entry_point_signature(&describe_graphics_module);
+ return &graphics_description;
+}
+
+mi::PlatformPriority probe_input_platform(
+ mo::Option const& options)
+{
+ mir::assert_entry_point_signature(&probe_input_platform);
+ if (options.is_set("host-socket"))
+ return mi::PlatformPriority::best;
+ return mi::PlatformPriority::unsupported;
+}
+
+mir::UniqueModulePtr create_input_platform(
+ mo::Option const& /*options*/,
+ std::shared_ptr const& /*emergency_cleanup_registry*/,
+ std::shared_ptr const& input_device_registry,
+ std::shared_ptr const& input_report)
+{
+ mir::assert_entry_point_signature(&create_input_platform);
+ return mir::make_module_ptr(global_conn, input_device_registry, input_report);
+}
+
+mir::ModuleProperties const* describe_input_module()
+{
+ mir::assert_entry_point_signature(&describe_input_module);
+ return &input_description;
+}
+
=== added file 'src/platforms/mir/symbols.map.in'
--- src/platforms/mir/symbols.map.in 1970-01-01 00:00:00 +0000
+++ src/platforms/mir/symbols.map.in 2017-06-19 15:01:38 +0000
@@ -0,0 +1,20 @@
+@MIR_SERVER_GRAPHICS_PLATFORM_VERSION@ {
+ global:
+ add_graphics_platform_options;
+ create_host_platform;
+ create_guest_platform;
+ probe_graphics_platform;
+ describe_graphics_module;
+ local:
+ *;
+};
+
+@MIR_SERVER_INPUT_PLATFORM_VERSION@ {
+ global:
+ add_input_platform_options;
+ create_input_platform;
+ probe_input_platform;
+ describe_input_module;
+ local:
+ *;
+};
=== modified file 'src/server/CMakeLists.txt'
--- src/server/CMakeLists.txt 2017-05-08 03:04:26 +0000
+++ src/server/CMakeLists.txt 2017-06-19 15:01:38 +0000
@@ -81,7 +81,6 @@
$
$
$
- $
$
$
=== modified file 'src/server/graphics/CMakeLists.txt'
--- src/server/graphics/CMakeLists.txt 2017-05-08 03:04:26 +0000
+++ src/server/graphics/CMakeLists.txt 2017-06-19 15:01:38 +0000
@@ -8,13 +8,10 @@
default_configuration.cpp
default_display_configuration_policy.cpp
- gl_extensions_base.cpp
- surfaceless_egl_context.cpp
software_cursor.cpp
${PROJECT_SOURCE_DIR}/include/server/mir/graphics/display_configuration_observer.h
display_configuration_observer_multiplexer.cpp
display_configuration_observer_multiplexer.h
)
-add_subdirectory(nested/)
add_subdirectory(offscreen/)
=== modified file 'src/server/graphics/default_configuration.cpp'
--- src/server/graphics/default_configuration.cpp 2017-05-31 17:56:19 +0000
+++ src/server/graphics/default_configuration.cpp 2017-06-19 15:01:38 +0000
@@ -22,16 +22,14 @@
#include "mir/graphics/default_display_configuration_policy.h"
#include "mir/graphics/graphic_buffer_allocator.h"
-#include "nested/mir_client_host_connection.h"
-#include "nested/cursor.h"
-#include "nested/display.h"
-#include "nested/platform.h"
+#include "mir/renderer/gl/egl_platform.h"
#include "offscreen/display.h"
#include "software_cursor.h"
#include "mir/graphics/gl_config.h"
#include "mir/graphics/platform.h"
#include "mir/graphics/cursor.h"
+#include "mir/graphics/display.h"
#include "mir/graphics/platform_probe.h"
#include "display_configuration_observer_multiplexer.h"
@@ -52,7 +50,6 @@
namespace mg = mir::graphics;
namespace ml = mir::logging;
-namespace mgn = mir::graphics::nested;
std::shared_ptr
mir::DefaultServerConfiguration::the_display_configuration_policy()
@@ -81,21 +78,6 @@
std::stringstream error_report;
try
{
- // if a host socket is set we should use the host graphics module to create a "guest" platform
- if (the_options()->is_set(options::host_socket_opt))
- {
- auto const host_connection = the_host_connection();
-
- platform_library = std::make_shared(host_connection->graphics_platform_library());
- auto buffer_platform = std::make_shared(
- platform_library, host_connection, the_display_report(), the_options());
- return std::make_shared(
- buffer_platform,
- std::make_unique(
- buffer_platform, host_connection, the_display_report(), *the_options()));
- }
-
- // fallback to standalone if host socket is unset
if (the_options()->is_set(options::platform_graphics_lib))
{
platform_library = std::make_shared(the_options()->get(options::platform_graphics_lib));
@@ -124,7 +106,12 @@
description->minor_version,
description->micro_version);
- return create_host_platform(the_options(), the_emergency_cleanup(), the_display_report(), the_logger());
+ return create_host_platform(
+ the_options(),
+ the_emergency_cleanup(),
+ the_display_report(),
+ the_logger(),
+ the_host_lifecycle_event_listener());
}
catch(...)
{
@@ -186,14 +173,7 @@
auto cursor_choice = the_options()->get(options::cursor_opt);
- if (the_options()->is_set(options::host_socket_opt))
- {
- mir::log_info("Using nested cursor");
- primary_cursor = std::make_shared(
- the_host_connection(),
- the_default_cursor_image());
- }
- else if (cursor_choice != "software" &&
+ if (cursor_choice != "software" &&
(primary_cursor = the_display()->create_hardware_cursor()))
{
mir::log_info("Using hardware cursor");
@@ -217,51 +197,6 @@
return wrapped;
}
-auto mir::DefaultServerConfiguration::the_host_connection()
--> std::shared_ptr
-{
- return the_mir_client_host_connection();
-}
-
-auto mir::DefaultServerConfiguration::the_mir_client_host_connection()
--> std::shared_ptr
-{
- return host_connection(
- [this]()
- {
- auto const options = the_options();
-
- if (!options->is_set(options::host_socket_opt))
- BOOST_THROW_EXCEPTION(mir::AbnormalExit(
- std::string("Exiting Mir! Reason: Nested Mir needs either $MIR_SOCKET or --") +
- options::host_socket_opt));
-
- auto host_socket = options->get(options::host_socket_opt);
-
- std::string server_socket{"none"};
-
- if (!the_options()->is_set(options::no_server_socket_opt))
- {
- server_socket = the_socket_file();
-
- if (server_socket == host_socket)
- BOOST_THROW_EXCEPTION(mir::AbnormalExit(
- "Exiting Mir! Reason: Nested Mir and Host Mir cannot use "
- "the same socket file to accept connections!"));
- }
-
- auto const my_name = options->is_set(options::name_opt) ?
- options->get(options::name_opt) :
- "nested-mir@:" + server_socket;
-
- return std::make_shared(
- host_socket,
- my_name,
- the_host_lifecycle_event_listener()
- );
- });
-}
-
std::shared_ptr
mir::DefaultServerConfiguration::the_gl_config()
{
=== modified file 'src/server/graphics/software_cursor.cpp'
--- src/server/graphics/software_cursor.cpp 2017-05-08 03:04:26 +0000
+++ src/server/graphics/software_cursor.cpp 2017-06-19 15:01:38 +0000
@@ -129,18 +129,6 @@
hide();
}
-void mg::SoftwareCursor::show()
-{
- bool needs_scene_change = false;
- {
- std::lock_guard lg{guard};
- if (!visible)
- visible = needs_scene_change = true;
- }
- if (needs_scene_change && renderable)
- scene->add_input_visualization(renderable);
-}
-
void mg::SoftwareCursor::show(CursorImage const& cursor_image)
{
std::shared_ptr new_renderable;
=== modified file 'src/server/graphics/software_cursor.h'
--- src/server/graphics/software_cursor.h 2015-06-17 05:20:42 +0000
+++ src/server/graphics/software_cursor.h 2017-06-19 15:01:38 +0000
@@ -45,7 +45,6 @@
std::shared_ptr const& scene);
~SoftwareCursor();
- void show() override;
void show(CursorImage const& cursor_image) override;
void hide() override;
void move_to(geometry::Point position) override;
=== modified file 'src/server/input/default_configuration.cpp'
--- src/server/input/default_configuration.cpp 2017-05-25 08:58:03 +0000
+++ src/server/input/default_configuration.cpp 2017-06-19 15:01:38 +0000
@@ -32,7 +32,6 @@
#include "surface_input_dispatcher.h"
#include "basic_seat.h"
#include "seat_observer_multiplexer.h"
-#include "../graphics/nested/input_platform.h"
#include "mir/input/touch_visualizer.h"
#include "mir/input/input_probe.h"
@@ -56,7 +55,6 @@
namespace mr = mir::report;
namespace ms = mir::scene;
namespace mg = mir::graphics;
-namespace mgn = mg::nested;
namespace msh = mir::shell;
namespace md = mir::dispatch;
@@ -200,16 +198,6 @@
{
return std::make_shared();
}
- else if (options->is_set(options::host_socket_opt))
- {
- auto const device_registry = the_input_device_registry();
- auto const input_report = the_input_report();
-
- // TODO: move this into a nested graphics platform
- auto platform = std::make_shared(the_host_connection(), device_registry, input_report);
-
- return std::make_shared(the_input_reading_multiplexer(), std::move(platform));
- }
else
{
auto const emergency_cleanup = the_emergency_cleanup();
=== modified file 'src/server/symbols.map'
--- src/server/symbols.map 2017-05-08 03:04:26 +0000
+++ src/server/symbols.map 2017-06-19 15:01:38 +0000
@@ -866,7 +866,6 @@
mir::DefaultServerConfiguration::the_gl_config*;
mir::DefaultServerConfiguration::the_global_event_sink*;
mir::DefaultServerConfiguration::the_graphics_platform*;
- mir::DefaultServerConfiguration::the_host_connection*;
mir::DefaultServerConfiguration::the_host_lifecycle_event_listener*;
mir::DefaultServerConfiguration::the_input_configuration_changer*;
mir::DefaultServerConfiguration::the_input_device_hub*;
=== modified file 'tests/acceptance-tests/test_nested_mir.cpp'
--- tests/acceptance-tests/test_nested_mir.cpp 2017-05-08 03:04:26 +0000
+++ tests/acceptance-tests/test_nested_mir.cpp 2017-06-19 15:01:38 +0000
@@ -115,7 +115,8 @@
struct MockCursor : public mtd::StubCursor
{
-MOCK_METHOD1(show, void(mg::CursorImage const&));
+ MOCK_METHOD1(show, void(mg::CursorImage const&));
+ MOCK_METHOD0(hide, void());
};
struct MockHostLifecycleEventListener : msh::HostLifecycleEventListener
@@ -200,22 +201,13 @@
struct CursorWrapper : mg::Cursor
{
CursorWrapper(std::shared_ptr const& wrapped) : wrapped{wrapped} {}
- void show() override { if (!hidden) wrapped->show(); }
- void show(mg::CursorImage const& cursor_image) override { if (!hidden) wrapped->show(cursor_image); }
+ void show(mg::CursorImage const& cursor_image) override { wrapped->show(cursor_image); }
void hide() override { wrapped->hide(); }
void move_to(geom::Point position) override { wrapped->move_to(position); }
- void set_hidden(bool hidden)
- {
- this->hidden = hidden;
- if (hidden) hide();
- else show();
- }
-
private:
std::shared_ptr const wrapped;
- bool hidden{false};
};
struct MockDisplayConfigurationPolicy : mg::DisplayConfigurationPolicy
@@ -264,6 +256,7 @@
virtual ~NestedMirRunner()
{
+ cursor_wrapper.reset();
stop_server();
}
@@ -1051,9 +1044,9 @@
condition.wait_for(timeout);
Mock::VerifyAndClearExpectations(mock_cursor.get());
- nested_mir.cursor_wrapper->set_hidden(true);
+ EXPECT_CALL(*mock_cursor, hide()).Times(AtLeast(1));
- EXPECT_CALL(*mock_cursor, show(_)).Times(0);
+ nested_mir.cursor_wrapper->hide();
for (int i = 0; i != frames; ++i)
{
=== modified file 'tests/include/mir/test/doubles/stub_host_connection.h'
--- tests/include/mir/test/doubles/stub_host_connection.h 2017-06-09 14:16:54 +0000
+++ tests/include/mir/test/doubles/stub_host_connection.h 2017-06-19 15:01:38 +0000
@@ -19,12 +19,14 @@
#ifndef MIR_TEST_DOUBLES_STUB_HOST_CONNECTION_H_
#define MIR_TEST_DOUBLES_STUB_HOST_CONNECTION_H_
-#include "src/server/graphics/nested/host_connection.h"
-#include "src/server/graphics/nested/host_surface.h"
-#include "src/server/graphics/nested/host_stream.h"
-#include "src/server/graphics/nested/host_chain.h"
-#include "src/server/graphics/nested/host_surface_spec.h"
#include "src/client/display_configuration.h"
+#include "src/platforms/mir/host_connection.h"
+#include "src/platforms/mir/host_surface.h"
+#include "src/platforms/mir/host_connection.h"
+#include "src/platforms/mir/host_surface.h"
+#include "src/platforms/mir/host_stream.h"
+#include "src/platforms/mir/host_chain.h"
+#include "src/platforms/mir/host_surface_spec.h"
#include "src/include/client/mir/input/input_devices.h"
#include "mir/graphics/platform_operation_message.h"
=== modified file 'tests/mir_test_framework/headless_nested_server_runner.cpp'
--- tests/mir_test_framework/headless_nested_server_runner.cpp 2017-05-08 03:04:26 +0000
+++ tests/mir_test_framework/headless_nested_server_runner.cpp 2017-06-19 15:01:38 +0000
@@ -25,7 +25,7 @@
mtf::HeadlessNestedServerRunner::HeadlessNestedServerRunner(std::string const& connect_string) :
passthrough_tracker(std::make_shared())
{
- add_to_environment("MIR_SERVER_PLATFORM_GRAPHICS_LIB", mtf::server_platform("graphics-dummy.so").c_str());
+ add_to_environment("MIR_SERVER_PLATFORM_GRAPHICS_LIB", mtf::server_platform("server-mir.so.13").c_str());
add_to_environment("MIR_SERVER_HOST_SOCKET", connect_string.c_str());
server.override_the_display_buffer_compositor_factory([this]
{
=== modified file 'tests/mir_test_framework/platform_graphics_throw.cpp'
--- tests/mir_test_framework/platform_graphics_throw.cpp 2017-06-09 11:19:23 +0000
+++ tests/mir_test_framework/platform_graphics_throw.cpp 2017-06-19 15:01:38 +0000
@@ -55,7 +55,7 @@
mir::SharedLibrary stub_platform_library{std::string(platform_path) + "/graphics-dummy.so"};
auto create_stub_platform = stub_platform_library.load_function("create_host_platform");
- stub_platform = create_stub_platform(nullptr, nullptr, nullptr, nullptr);
+ stub_platform = create_stub_platform(nullptr, nullptr, nullptr, nullptr, nullptr);
}
mir::UniqueModulePtr create_buffer_allocator() override
@@ -170,7 +170,8 @@
std::shared_ptr const&,
std::shared_ptr const&,
std::shared_ptr const&,
- std::shared_ptr const&)
+ std::shared_ptr const&,
+ std::shared_ptr const&)
{
mir::assert_entry_point_signature(&create_host_platform);
return mir::make_module_ptr();
=== modified file 'tests/mir_test_framework/stubbed_graphics_platform.cpp'
--- tests/mir_test_framework/stubbed_graphics_platform.cpp 2017-06-09 11:19:23 +0000
+++ tests/mir_test_framework/stubbed_graphics_platform.cpp 2017-06-19 15:01:38 +0000
@@ -357,7 +357,8 @@
std::shared_ptr const&,
std::shared_ptr const&,
std::shared_ptr const&,
- std::shared_ptr const&)
+ std::shared_ptr const&,
+ std::shared_ptr const&)
{
mir::assert_entry_point_signature(&create_host_platform);
std::shared_ptr result{};
=== modified file 'tests/unit-tests/graphics/test_software_cursor.cpp'
--- tests/unit-tests/graphics/test_software_cursor.cpp 2017-05-08 03:04:26 +0000
+++ tests/unit-tests/graphics/test_software_cursor.cpp 2017-06-19 15:01:38 +0000
@@ -199,25 +199,6 @@
cursor.move_to({22,23});
}
-TEST_F(SoftwareCursor, multiple_shows_just_show)
-{
- using namespace testing;
-
- InSequence s;
- EXPECT_CALL(mock_input_scene, add_input_visualization(_));
-
- EXPECT_CALL(mock_input_scene, remove_input_visualization(_));
- EXPECT_CALL(mock_input_scene, add_input_visualization(_));
-
- EXPECT_CALL(mock_input_scene, remove_input_visualization(_)); // removal on destruction
-
- cursor.show(stub_cursor_image);
- cursor.hide();
- cursor.show();
- cursor.show();
-}
-
-
TEST_F(SoftwareCursor, creates_renderable_with_filled_buffer)
{
using namespace testing;
=== modified file 'tests/unit-tests/input/CMakeLists.txt'
--- tests/unit-tests/input/CMakeLists.txt 2017-05-08 03:04:26 +0000
+++ tests/unit-tests/input/CMakeLists.txt 2017-06-19 15:01:38 +0000
@@ -16,7 +16,6 @@
${CMAKE_CURRENT_SOURCE_DIR}/test_seat_input_device_tracker.cpp
${CMAKE_CURRENT_SOURCE_DIR}/test_key_repeat_dispatcher.cpp
${CMAKE_CURRENT_SOURCE_DIR}/test_validator.cpp
- ${CMAKE_CURRENT_SOURCE_DIR}/test_nested_input_platform.cpp
)
list(APPEND UMOCK_UNIT_TEST_SOURCES
=== modified file 'tests/unit-tests/platforms/mesa/kms/test_cursor.cpp'
--- tests/unit-tests/platforms/mesa/kms/test_cursor.cpp 2017-06-07 08:29:04 +0000
+++ tests/unit-tests/platforms/mesa/kms/test_cursor.cpp 2017-06-19 15:01:38 +0000
@@ -760,7 +760,7 @@
output_container.verify_and_clear_expectations();
EXPECT_CALL(*output_container.outputs[0], set_cursor(_));
- cursor.show();
+ cursor.show(stub_image);
}
TEST_F(MesaCursorTest, show_cursor_sets_cursor_with_hotspot)
=== modified file 'tests/unit-tests/platforms/nested/CMakeLists.txt'
--- tests/unit-tests/platforms/nested/CMakeLists.txt 2017-05-08 03:04:26 +0000
+++ tests/unit-tests/platforms/nested/CMakeLists.txt 2017-06-19 15:01:38 +0000
@@ -5,11 +5,13 @@
${CMAKE_CURRENT_SOURCE_DIR}/test_nested_cursor.cpp
${CMAKE_CURRENT_SOURCE_DIR}/test_buffer.cpp
${CMAKE_CURRENT_SOURCE_DIR}/test_nested_display_buffer.cpp
+ ${CMAKE_CURRENT_SOURCE_DIR}/test_nested_input_platform.cpp
${CMAKE_CURRENT_SOURCE_DIR}/test_ipc_operations.cpp
${CMAKE_CURRENT_SOURCE_DIR}/test_host_buffer.cpp
$
${MIR_PLATFORM_OBJECTS}
${MIR_SERVER_OBJECTS}
+ $
)
target_link_libraries(
=== modified file 'tests/unit-tests/platforms/nested/test_buffer.cpp'
--- tests/unit-tests/platforms/nested/test_buffer.cpp 2017-05-08 03:04:26 +0000
+++ tests/unit-tests/platforms/nested/test_buffer.cpp 2017-06-19 15:01:38 +0000
@@ -16,8 +16,11 @@
* Authored by: Kevin DuBois
*/
-#include "src/server/graphics/nested/native_buffer.h"
-#include "src/server/graphics/nested/buffer.h"
+#include "src/platforms/mir/buffer.h"
+#include "src/platforms/mir/native_buffer.h"
+#include "src/platforms/mir/buffer.h"
+#include "src/platforms/mir/native_buffer.h"
+#include "src/platforms/mir/buffer.h"
#include "src/client/buffer.h"
#include "mir/graphics/buffer_properties.h"
#include "mir/test/doubles/stub_host_connection.h"
=== modified file 'tests/unit-tests/platforms/nested/test_host_buffer.cpp'
--- tests/unit-tests/platforms/nested/test_host_buffer.cpp 2017-05-08 03:04:26 +0000
+++ tests/unit-tests/platforms/nested/test_host_buffer.cpp 2017-06-19 15:01:38 +0000
@@ -16,7 +16,7 @@
* Authored by: Kevin DuBois
*/
-#include "src/server/graphics/nested/host_buffer.h"
+#include "src/platforms/mir/host_buffer.h"
#include "src/client/default_connection_configuration.h"
#include "src/client/mir_connection.h"
#include "src/client/buffer_factory.h"
=== modified file 'tests/unit-tests/platforms/nested/test_ipc_operations.cpp'
--- tests/unit-tests/platforms/nested/test_ipc_operations.cpp 2017-05-08 03:04:26 +0000
+++ tests/unit-tests/platforms/nested/test_ipc_operations.cpp 2017-06-19 15:01:38 +0000
@@ -16,8 +16,8 @@
* Authored by: Kevin DuBois
*/
-#include "src/server/graphics/nested/ipc_operations.h"
-#include "src/server/graphics/nested/native_buffer.h"
+#include "src/platforms/mir/ipc_operations.h"
+#include "src/platforms/mir/native_buffer.h"
#include "mir/test/doubles/stub_buffer.h"
#include "mir/test/doubles/mock_buffer_ipc_message.h"
#include "mir/test/doubles/mock_platform_ipc_operations.h"
=== modified file 'tests/unit-tests/platforms/nested/test_nested_cursor.cpp'
--- tests/unit-tests/platforms/nested/test_nested_cursor.cpp 2017-05-08 03:04:26 +0000
+++ tests/unit-tests/platforms/nested/test_nested_cursor.cpp 2017-06-19 15:01:38 +0000
@@ -16,7 +16,7 @@
* Authored by: Robert Carr
*/
-#include "src/server/graphics/nested/cursor.h"
+#include "src/platforms/mir/cursor.h"
#include "mir/graphics/cursor_image.h"
#include "mir/test/fake_shared.h"
@@ -63,8 +63,8 @@
{
EXPECT_CALL(*connection, set_cursor_image(CursorImageEquals(a_cursor_image.as_argb_8888()))).Times(1);
- mgn::Cursor cursor(connection, mt::fake_shared(a_cursor_image));
- cursor.show();
+ mgn::Cursor cursor(connection);
+ cursor.show(a_cursor_image);
}
TEST_F(NestedCursor, can_set_other_images)
@@ -72,7 +72,7 @@
EXPECT_CALL(*connection, set_cursor_image(CursorImageEquals(a_cursor_image.as_argb_8888()))).Times(0);
EXPECT_CALL(*connection, set_cursor_image(CursorImageEquals(another_cursor_image.as_argb_8888()))).Times(1);
- mgn::Cursor cursor(connection, mt::fake_shared(a_cursor_image));
+ mgn::Cursor cursor(connection);
cursor.show(another_cursor_image);
}
@@ -83,8 +83,8 @@
EXPECT_CALL(*connection, hide_cursor()).Times(1);
EXPECT_CALL(*connection, set_cursor_image(CursorImageEquals(another_cursor_image.as_argb_8888()))).Times(1);
- mgn::Cursor cursor(connection, mt::fake_shared(a_cursor_image));
- cursor.show();
+ mgn::Cursor cursor(connection);
+ cursor.show(a_cursor_image);
cursor.hide();
cursor.show(another_cursor_image);
}
=== modified file 'tests/unit-tests/platforms/nested/test_nested_display.cpp'
--- tests/unit-tests/platforms/nested/test_nested_display.cpp 2017-06-09 14:16:54 +0000
+++ tests/unit-tests/platforms/nested/test_nested_display.cpp 2017-06-19 15:01:38 +0000
@@ -16,9 +16,9 @@
* Authored by: Alexandros Frantzis
*/
-#include "src/server/graphics/nested/display.h"
-#include "src/server/graphics/nested/host_connection.h"
-#include "src/server/graphics/nested/host_surface.h"
+#include "src/platforms/mir/display.h"
+#include "src/platforms/mir/host_connection.h"
+#include "src/platforms/mir/host_surface.h"
#include "src/server/report/null/display_report.h"
#include "mir/graphics/default_display_configuration_policy.h"
#include "src/server/input/null_input_dispatcher.h"
=== modified file 'tests/unit-tests/platforms/nested/test_nested_display_buffer.cpp'
--- tests/unit-tests/platforms/nested/test_nested_display_buffer.cpp 2017-05-08 03:04:26 +0000
+++ tests/unit-tests/platforms/nested/test_nested_display_buffer.cpp 2017-06-19 15:01:38 +0000
@@ -16,11 +16,11 @@
* Authored by: Alexandros Frantzis
*/
-#include "src/server/graphics/nested/display_buffer.h"
-#include "src/server/graphics/nested/native_buffer.h"
-#include "src/server/graphics/nested/host_stream.h"
-#include "src/server/graphics/nested/host_chain.h"
-#include "src/server/graphics/nested/host_surface_spec.h"
+#include "src/platforms/mir/display_buffer.h"
+#include "src/platforms/mir/native_buffer.h"
+#include "src/platforms/mir/host_stream.h"
+#include "src/platforms/mir/host_chain.h"
+#include "src/platforms/mir/host_surface_spec.h"
#include "mir/events/event_builders.h"
=== modified file 'tests/unit-tests/platforms/nested/test_nested_display_configuration.cpp'
--- tests/unit-tests/platforms/nested/test_nested_display_configuration.cpp 2017-05-25 08:58:03 +0000
+++ tests/unit-tests/platforms/nested/test_nested_display_configuration.cpp 2017-06-19 15:01:38 +0000
@@ -16,7 +16,7 @@
* Authored by: Alan Griffiths
*/
-#include "src/server/graphics/nested/nested_display_configuration.h"
+#include "src/platforms/mir/nested_display_configuration.h"
#include "mir_display_configuration_builder.h"
#include "mir_toolkit/mir_display_configuration.h"
=== renamed file 'tests/unit-tests/input/test_nested_input_platform.cpp' => 'tests/unit-tests/platforms/nested/test_nested_input_platform.cpp'
--- tests/unit-tests/input/test_nested_input_platform.cpp 2017-05-08 03:04:26 +0000
+++ tests/unit-tests/platforms/nested/test_nested_input_platform.cpp 2017-06-19 15:01:38 +0000
@@ -16,7 +16,7 @@
* Authored by: Andreas Pokorny
*/
-#include "src/server/graphics/nested/input_platform.h"
+#include "src/platforms/mir/input_platform.h"
#include "src/server/report/null_report_factory.h"
#include "src/include/client/mir/input/input_devices.h"
#include "src/server/input/default_event_builder.h"
=== modified file 'tools/update_package_abis.sh'
--- tools/update_package_abis.sh 2017-05-08 03:04:26 +0000
+++ tools/update_package_abis.sh 2017-06-19 15:01:38 +0000
@@ -21,6 +21,7 @@
mir-client-platform-mesa:MIR_CLIENT_PLATFORM_ABI \
mir-platform-graphics-mesa-x:MIR_SERVER_GRAPHICS_PLATFORM_ABI \
mir-platform-graphics-mesa-kms:MIR_SERVER_GRAPHICS_PLATFORM_ABI \
+ mir-platform-graphics-mir:MIR_SERVER_GRAPHICS_PLATFORM_ABI \
mir-platform-input-evdev:MIR_SERVER_INPUT_PLATFORM_ABI"
package_name()