20 #ifndef MIR_SHELL_SURFACE_H_
21 #define MIR_SHELL_SURFACE_H_
43 class SurfaceConfigurator;
44 class SurfaceController;
45 struct SurfaceCreationParameters;
52 std::shared_ptr<SurfaceBuilder>
const& builder,
53 std::shared_ptr<SurfaceConfigurator>
const& configurator,
56 std::shared_ptr<frontend::EventSink>
const& event_sink);
65 virtual std::string
name()
const;
85 virtual void take_input_focus(std::shared_ptr<InputTargeter>
const& targeter);
86 virtual void set_input_region(std::vector<geometry::Rectangle>
const& region);
90 virtual void raise(std::shared_ptr<SurfaceController>
const& controller);
96 std::shared_ptr<SurfaceBuilder>
const builder;
97 std::shared_ptr<SurfaceConfigurator>
const configurator;
98 std::shared_ptr<mir::surfaces::Surface>
const surface;
101 std::shared_ptr<frontend::EventSink>
const event_sink;