Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
Loading...
Searching...
No Matches
KODI::WINDOWING::WAYLAND::CSeatInputProcessing Class Referencefinal

#include <SeatInputProcessing.h>

Inheritance diagram for KODI::WINDOWING::WAYLAND::CSeatInputProcessing:
KODI::WINDOWING::WAYLAND::IInputHandlerPointer KODI::WINDOWING::WAYLAND::IInputHandlerKeyboard

Public Member Functions

 CSeatInputProcessing (wayland::surface_t const &inputSurface, IInputHandler &handler)
 
void AddSeat (CSeat *seat)
 
void RemoveSeat (CSeat *seat)
 
void SetCoordinateScale (std::int32_t scale)
 
- Public Member Functions inherited from KODI::WINDOWING::WAYLAND::IInputHandlerKeyboard
virtual ~IInputHandlerKeyboard ()=default
 

Additional Inherited Members

- Protected Member Functions inherited from KODI::WINDOWING::WAYLAND::IInputHandlerPointer
 ~IInputHandlerPointer ()=default
 

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

◆ AddSeat()

void CSeatInputProcessing::AddSeat ( CSeat * seat)

◆ RemoveSeat()

void CSeatInputProcessing::RemoveSeat ( CSeat * seat)

◆ 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: