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

#include <ShellSurface.h>

Inheritance diagram for KODI::WINDOWING::WAYLAND::IShellSurface:
KODI::WINDOWING::WAYLAND::CShellSurfaceWebOSShell KODI::WINDOWING::WAYLAND::CShellSurfaceWlShell KODI::WINDOWING::WAYLAND::CShellSurfaceXdgShell KODI::WINDOWING::WAYLAND::CShellSurfaceXdgShellUnstableV6

Public Types

enum  State {
  STATE_MAXIMIZED = 0 , STATE_FULLSCREEN , STATE_RESIZING , STATE_ACTIVATED ,
  STATE_COUNT
}
 
using StateBitset = std::bitset<STATE_COUNT>
 

Public Member Functions

virtual void Initialize ()=0
 
virtual void SetFullScreen (wayland::output_t const &output, float refreshRate)=0
 
virtual void SetWindowed ()=0
 
virtual void SetMaximized ()=0
 
virtual void UnsetMaximized ()=0
 
virtual void SetMinimized ()=0
 
virtual void SetWindowGeometry (CRectInt geometry)=0
 
virtual void AckConfigure (std::uint32_t serial)=0
 
virtual void StartMove (wayland::seat_t const &seat, std::uint32_t serial)=0
 
virtual void StartResize (wayland::seat_t const &seat, std::uint32_t serial, wayland::shell_surface_resize edge)=0
 
virtual void ShowShellContextMenu (wayland::seat_t const &seat, std::uint32_t serial, CPointInt position)=0
 
virtual ~IShellSurface ()=default
 

Static Public Member Functions

static std::string StateToString (StateBitset state)
 

Protected Member Functions

 IShellSurface () noexcept=default
 

Detailed Description

Abstraction for shell surfaces to support multiple protocols such as wl_shell (for compatibility) and xdg_shell (for features)

The interface itself is modeled after xdg_shell, so see there for the meaning of e.g. the surface states

Member Typedef Documentation

◆ StateBitset

Member Enumeration Documentation

◆ State

Enumerator
STATE_MAXIMIZED 
STATE_FULLSCREEN 
STATE_RESIZING 
STATE_ACTIVATED 
STATE_COUNT 

Constructor & Destructor Documentation

◆ ~IShellSurface()

virtual KODI::WINDOWING::WAYLAND::IShellSurface::~IShellSurface ( )
virtualdefault

◆ IShellSurface()

KODI::WINDOWING::WAYLAND::IShellSurface::IShellSurface ( )
protecteddefaultnoexcept

Member Function Documentation

◆ AckConfigure()

◆ Initialize()

virtual void KODI::WINDOWING::WAYLAND::IShellSurface::Initialize ( )
pure virtual

Initialize shell surface

The event loop thread MUST NOT be running when this function is called. The difference to the constructor is that in this function callbacks may already be called.

Implemented in KODI::WINDOWING::WAYLAND::CShellSurfaceWebOSShell, KODI::WINDOWING::WAYLAND::CShellSurfaceWlShell, KODI::WINDOWING::WAYLAND::CShellSurfaceXdgShell, and KODI::WINDOWING::WAYLAND::CShellSurfaceXdgShellUnstableV6.

◆ SetFullScreen()

virtual void KODI::WINDOWING::WAYLAND::IShellSurface::SetFullScreen ( wayland::output_t const & output,
float refreshRate )
pure virtual

◆ SetMaximized()

◆ SetMinimized()

◆ SetWindowed()

◆ SetWindowGeometry()

◆ ShowShellContextMenu()

virtual void KODI::WINDOWING::WAYLAND::IShellSurface::ShowShellContextMenu ( wayland::seat_t const & seat,
std::uint32_t serial,
CPointInt position )
pure virtual

◆ StartMove()

virtual void KODI::WINDOWING::WAYLAND::IShellSurface::StartMove ( wayland::seat_t const & seat,
std::uint32_t serial )
pure virtual

◆ StartResize()

virtual void KODI::WINDOWING::WAYLAND::IShellSurface::StartResize ( wayland::seat_t const & seat,
std::uint32_t serial,
wayland::shell_surface_resize edge )
pure virtual

◆ StateToString()

std::string IShellSurface::StateToString ( StateBitset state)
static

◆ UnsetMaximized()


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