19 #ifndef MIR_SHELL_FRONTEND_SHELL_H_ 20 #define MIR_SHELL_FRONTEND_SHELL_H_ 32 class PersistentSurfaceStore;
39 std::shared_ptr<shell::Shell>
const wrapped;
43 std::shared_ptr<shell::PersistentSurfaceStore>
const& surface_store)
45 surface_store{surface_store}
52 std::shared_ptr<mf::EventSink>
const& sink)
override;
54 void close_session(std::shared_ptr<mf::Session>
const& session)
override;
57 std::shared_ptr<mf::Session>
const& session,
61 std::shared_ptr<mf::PromptSession>
const& prompt_session,
62 std::shared_ptr<mf::Session>
const& session)
override;
64 void stop_prompt_session(std::shared_ptr<mf::PromptSession>
const& prompt_session)
override;
67 std::shared_ptr<mf::Session>
const& session,
69 std::shared_ptr<mf::EventSink>
const& sink)
override;
80 std::shared_ptr<mf::Session>
const& session,
86 std::shared_ptr<mf::Session>
const& session,
91 std::shared_ptr<mf::Session>
const& session,
93 uint64_t timestamp)
override;
int set_surface_attribute(std::shared_ptr< mf::Session > const &session, mf::SurfaceId surface_id, MirSurfaceAttrib attrib, int value) override
Definition: frontend_shell.cpp:130
std::string persistent_id_for(std::shared_ptr< mf::Session > const &session, mf::SurfaceId surface) override
Definition: frontend_shell.cpp:116
std::shared_ptr< ms::Surface > surface_for_id(std::string const &serialized_id) override
Definition: frontend_shell.cpp:124
All things Mir.
Definition: atomic_callback.h:25
Management of Surface objects. Includes the model (SurfaceStack and Surface classes) and controller (...
Definition: default_server_configuration.h:87
void modify_surface(std::shared_ptr< mf::Session > const &session, mf::SurfaceId surface, SurfaceSpecification const &modifications) override
Definition: frontend_shell.cpp:97
std::shared_ptr< shell::Shell > const wrapped
Definition: frontend_shell.h:39
std::shared_ptr< mf::Session > open_session(pid_t client_pid, std::string const &name, std::shared_ptr< mf::EventSink > const &sink) override
Definition: frontend_shell.cpp:34
void stop_prompt_session(std::shared_ptr< mf::PromptSession > const &prompt_session) override
Definition: frontend_shell.cpp:67
std::shared_ptr< mf::PromptSession > start_prompt_session_for(std::shared_ptr< mf::Session > const &session, ms::PromptSessionCreationParameters const ¶ms) override
Definition: frontend_shell.cpp:49
FrontendShell(std::shared_ptr< shell::Shell > const &wrapped, std::shared_ptr< shell::PersistentSurfaceStore > const &surface_store)
Definition: frontend_shell.h:42
void add_prompt_provider_for(std::shared_ptr< mf::PromptSession > const &prompt_session, std::shared_ptr< mf::Session > const &session) override
Definition: frontend_shell.cpp:58
Frontend interface. Mediates the interaction between client processes and the core of the mir system...
Definition: client_constants.h:25
void close_session(std::shared_ptr< mf::Session > const &session) override
Definition: frontend_shell.cpp:42
Definition: surface_creation_parameters.h:41
int get_surface_attribute(std::shared_ptr< mf::Session > const &session, mf::SurfaceId surface_id, MirSurfaceAttrib attrib) override
Definition: frontend_shell.cpp:141
void raise_surface(std::shared_ptr< mf::Session > const &session, mf::SurfaceId surface_id, uint64_t timestamp) override
Definition: frontend_shell.cpp:151
void destroy_surface(std::shared_ptr< mf::Session > const &session, mf::SurfaceId surface) override
Definition: frontend_shell.cpp:110
Definition: prompt_session_creation_parameters.h:29
Definition: frontend_shell.h:37
Specification of surface properties requested by client.
Definition: surface_specification.h:49
std::shared_ptr< shell::PersistentSurfaceStore > const surface_store
Definition: frontend_shell.h:40
mf::SurfaceId create_surface(std::shared_ptr< mf::Session > const &session, ms::SurfaceCreationParameters const ¶ms, std::shared_ptr< mf::EventSink > const &sink) override
Definition: frontend_shell.cpp:73