Phosphor
Qt6 / Wayland library suite for window-management tools
 
Loading...
Searching...
No Matches
Phosphor::Screens::QtScreenProvider Class Reference

Production IScreenProvider — a thin wrapper over QGuiApplication. More...

#include <phosphor-screens/include/PhosphorScreens/QtScreenProvider.h>

Inheritance diagram for Phosphor::Screens::QtScreenProvider:
[legend]

Public Member Functions

 QtScreenProvider (QObject *parent=nullptr)
 
QVector< PhysicalScreenscreens () const override
 Every currently-connected output. Order is not significant.
 
PhysicalScreen primaryScreen () const override
 The primary output, or an invalid PhysicalScreen if there is none.
 
- Public Member Functions inherited from Phosphor::Screens::IScreenProvider
 IScreenProvider (QObject *parent=nullptr)
 
 ~IScreenProvider () override=default
 

Additional Inherited Members

- Signals inherited from Phosphor::Screens::IScreenProvider
void screenAdded (const PhysicalScreen &screen)
 A new output connected.
 
void screenRemoved (const PhysicalScreen &screen)
 An output disconnected.
 
void screenGeometryChanged (const PhysicalScreen &screen)
 A connected output's geometry changed (move, resize, rotate, scale).
 

Detailed Description

Production IScreenProvider — a thin wrapper over QGuiApplication.

Enumerates QGuiApplication::screens() and relays screenAdded, screenRemoved, and per-screen QScreen::geometryChanged as the IScreenProvider lifecycle signals. The connector → PhysicalScreen conversion fills in the EDID-aware identifier via ScreenIdentity.

Always live: it wires up Qt's screen signals in its constructor, so it needs no explicit start/stop — matching QGuiApplication's own always-on screen tracking. Construct one and inject it via ScreenManagerConfig.

Constructor & Destructor Documentation

◆ QtScreenProvider()

Phosphor::Screens::QtScreenProvider::QtScreenProvider ( QObject *  parent = nullptr)
explicit

Member Function Documentation

◆ primaryScreen()

PhysicalScreen Phosphor::Screens::QtScreenProvider::primaryScreen ( ) const
overridevirtual

The primary output, or an invalid PhysicalScreen if there is none.

Implements Phosphor::Screens::IScreenProvider.

◆ screens()

QVector< PhysicalScreen > Phosphor::Screens::QtScreenProvider::screens ( ) const
overridevirtual

Every currently-connected output. Order is not significant.

Implements Phosphor::Screens::IScreenProvider.


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