20 #ifndef MIR_FRONTEND_SURFACE_H_
21 #define MIR_FRONTEND_SURFACE_H_
33 class InternalSurface;
39 class ClientBufferTracker;
58 virtual void set_cursor_image(std::shared_ptr<graphics::CursorImage>
const& image) = 0;
74 -> std::shared_ptr<graphics::InternalSurface>;
All things Mir.
Definition: aging_buffer.h:24
auto as_internal_surface(std::shared_ptr< Surface > const &surface) -> std::shared_ptr< graphics::InternalSurface >
Definition: surface.cpp:35
virtual void set_cursor_image(std::shared_ptr< graphics::CursorImage > const &image)=0
Surface & operator=(Surface const &)=delete
virtual int configure(MirSurfaceAttrib attrib, int value)=0
virtual geometry::Size client_size() const =0
Size of the client area of the surface (excluding any decorations)
virtual void swap_buffers(graphics::Buffer *old_buffer, std::function< void(graphics::Buffer *new_buffer)> complete)=0
virtual MirPixelFormat pixel_format() const =0
virtual int query(MirSurfaceAttrib attrib)=0
virtual ~Surface()=default
virtual int client_input_fd() const =0
void swap_buffers_blocking(graphics::Buffer *&buffer)
swap_buffers_blocking() is a convenience wrapper around swap_buffers() it forces the current thread t...
Definition: surface.cpp:57
virtual bool supports_input() const =0