2
3
4
5
6
7
8
9
10
11
12
13
14
15
16#ifndef MIROIL_SURFACE_H
17#define MIROIL_SURFACE_H
19#include <unordered_map>
20#include <mir_toolkit/mir_input_device_types.h>
21#include <mir_toolkit/common.h>
22#include <mir/graphics/renderable.h>
25 namespace scene {
class Surface; }
26 namespace graphics {
class CursorImage; }
27 namespace compositor {
class BufferStream; }
33class SurfaceObserverImpl;
35using CompositorID =
void const*;
55 std::shared_ptr<
mir::scene::Surface>
parent()
const;
63 int query(MirWindowAttrib attrib)
const;
66 std::string
const& variant, std::string
const& options);
69 std::shared_ptr<
mir::scene::Surface> wrapped;
70 std::unordered_map<std::shared_ptr<miroil::SurfaceObserver>, std::shared_ptr<miroil::SurfaceObserverImpl>> observers;
mir::graphics::RenderableList generate_renderables(miroil::CompositorID id) const
int configure(MirWindowAttrib attrib, int value)
bool is_confined_to_window()
void set_orientation(MirOrientation orientation)
void set_confine_pointer_state(MirPointerConfinementState state)
std::shared_ptr< mir::scene::Surface > parent() const
void remove_observer(std::shared_ptr< miroil::SurfaceObserver > const &observer)
int query(MirWindowAttrib attrib) const
void add_observer(std::shared_ptr< miroil::SurfaceObserver > const &observer)
Surface(std::shared_ptr< mir::scene::Surface > wrapped)
mir::geometry::Point top_left() const
Top-left corner (of the window frame if present)
void set_keymap(MirInputDeviceId id, std::string const &model, std::string const &layout, std::string const &variant, std::string const &options)
mir::scene::Surface * get_wrapped() const
int buffers_ready_for_compositor(void const *compositor_id) const
Definition surface_observer.h:34
Definition compositor.h:21