xbmc
Classes | Public Member Functions | List of all members
KODI::WINDOWING::WAYLAND::CSeatInputProcessing Class Referencefinal

Receive events from all registered wl_seats and process them into Kodi events. More...

#include <SeatInputProcessing.h>

Inheritance diagram for KODI::WINDOWING::WAYLAND::CSeatInputProcessing:
Inheritance graph
[legend]
Collaboration diagram for KODI::WINDOWING::WAYLAND::CSeatInputProcessing:
Collaboration graph
[legend]

Public Member Functions

 CSeatInputProcessing (wayland::surface_t const &inputSurface, IInputHandler &handler)
 Construct a seat input processor. More...
 
void AddSeat (CSeat *seat)
 
void RemoveSeat (CSeat *seat)
 
void SetCoordinateScale (std::int32_t scale)
 Set the scale the coordinates should be interpreted at. More...
 

Detailed Description

Receive events from all registered wl_seats and process them into Kodi events.

Multi-seat support is not currently implemented completely, but each seat has separate state.

Constructor & Destructor Documentation

◆ CSeatInputProcessing()

CSeatInputProcessing::CSeatInputProcessing ( wayland::surface_t const &  inputSurface,
IInputHandler handler 
)

Construct a seat input processor.

Parameters
inputSurfaceSurface that events should be processed on (all other surfaces are ignored)
handlerMandatory handler for processed input events

Member Function Documentation

◆ SetCoordinateScale()

void CSeatInputProcessing::SetCoordinateScale ( std::int32_t  scale)

Set the scale the coordinates should be interpreted at.

Wayland input events are always in surface coordinates, but Kodi only uses buffer coordinates internally. Use this function to set the scaling factor between the two and multiply the surface coordinates accordingly for Kodi events.

Parameters
scalenew buffer-to-surface pixel ratio

The documentation for this class was generated from the following files: