|
| BasicSurface (std::string const &name, geometry::Rectangle rect, MirPointerConfinementState state, bool nonrectangular, std::list< scene::StreamInfo > const &streams, std::shared_ptr< input::InputChannel > const &input_channel, std::shared_ptr< input::InputSender > const &sender, std::shared_ptr< graphics::CursorImage > const &cursor_image, std::shared_ptr< SceneReport > const &report) |
|
| BasicSurface (std::string const &name, geometry::Rectangle rect, std::weak_ptr< Surface > const &parent, MirPointerConfinementState state, bool nonrectangular, std::list< scene::StreamInfo > const &streams, std::shared_ptr< input::InputChannel > const &input_channel, std::shared_ptr< input::InputSender > const &sender, std::shared_ptr< graphics::CursorImage > const &cursor_image, std::shared_ptr< SceneReport > const &report) |
|
| ~BasicSurface () noexcept |
|
std::string | name () const override |
|
void | move_to (geometry::Point const &top_left) override |
|
float | alpha () const override |
|
void | set_hidden (bool is_hidden) |
|
geometry::Size | size () const override |
| Size of the surface including window frame (if any) More...
|
|
geometry::Size | client_size () const override |
| Size of the client area of the surface (excluding any decorations) More...
|
|
std::shared_ptr< frontend::BufferStream > | primary_buffer_stream () const override |
|
void | set_streams (std::list< scene::StreamInfo > const &streams) override |
|
bool | supports_input () const override |
|
int | client_input_fd () const override |
|
std::shared_ptr< input::InputChannel > | input_channel () const override |
|
input::InputReceptionMode | reception_mode () const override |
|
void | set_reception_mode (input::InputReceptionMode mode) override |
|
void | set_input_region (std::vector< geometry::Rectangle > const &input_rectangles) override |
| Sets the input region for this surface. More...
|
|
std::shared_ptr< compositor::BufferStream > | buffer_stream () const |
|
void | resize (geometry::Size const &size) override |
|
geometry::Point | top_left () const override |
| Top-left corner (of the window frame if present) More...
|
|
geometry::Rectangle | input_bounds () const override |
|
bool | input_area_contains (geometry::Point const &point) const override |
|
void | consume (MirEvent const *event) override |
|
void | set_alpha (float alpha) override |
|
void | set_orientation (MirOrientation orientation) override |
|
void | set_transformation (glm::mat4 const &) override |
|
bool | visible () const override |
|
graphics::RenderableList | generate_renderables (compositor::CompositorID id) const override |
|
int | buffers_ready_for_compositor (void const *compositor_id) const override |
|
MirSurfaceType | type () const override |
|
MirSurfaceState | state () const override |
|
int | configure (MirSurfaceAttrib attrib, int value) override |
|
int | query (MirSurfaceAttrib attrib) const override |
|
void | hide () override |
|
void | show () override |
|
void | set_cursor_image (std::shared_ptr< graphics::CursorImage > const &image) override |
|
std::shared_ptr< graphics::CursorImage > | cursor_image () const override |
|
void | set_cursor_stream (std::shared_ptr< frontend::BufferStream > const &stream, geometry::Displacement const &hotspot) override |
|
void | set_cursor_from_buffer (graphics::Buffer &buffer, geometry::Displacement const &hotspot) |
|
void | request_client_surface_close () override |
|
std::shared_ptr< Surface > | parent () const override |
|
void | add_observer (std::shared_ptr< SurfaceObserver > const &observer) override |
|
void | remove_observer (std::weak_ptr< SurfaceObserver > const &observer) override |
|
int | dpi () const |
|
void | set_keymap (MirInputDeviceId id, std::string const &model, std::string const &layout, std::string const &variant, std::string const &options) override |
|
void | rename (std::string const &title) override |
|
void | set_confine_pointer_state (MirPointerConfinementState state) override |
|
MirPointerConfinementState | confine_pointer_state () const override |
|
virtual | ~Surface ()=default |
|
virtual void | set_cursor_stream (std::shared_ptr< frontend::BufferStream > const &image, geometry::Displacement const &hotspot)=0 |
|
void mir::scene::BasicSurface::set_input_region |
( |
std::vector< geometry::Rectangle > const & |
region | ) |
|
|
overridevirtual |
Sets the input region for this surface.
The input region is expressed in coordinates relative to the surface (i.e., use (0,0) for the top left point of the surface).
By default the input region is the whole surface. To unset a custom input region and revert to the default set an empty input region, i.e., set_input_region({}). To disable input set a non-empty region containing an empty rectangle, i.e., set_input_region({geom::Rectangle{}}).
Implements mir::scene::Surface.