6#include <phosphorcompositor_export.h>
Abstract interface bridging compositor-agnostic logic to compositor-specific APIs.
Definition ICompositorBridge.h:78
virtual bool isDaemonReady() const =0
Check if the daemon D-Bus service is registered and ready.
virtual bool isOnCurrentActivity(WindowHandle w) const =0
virtual void moveResize(WindowHandle w, const QRectF &geometry)=0
Move/resize a window to the given geometry.
virtual QString windowScreenId(WindowHandle w) const =0
Get the screen ID where a window is located.
virtual WindowInfo windowInfo(WindowHandle w) const =0
Fill a WindowInfo snapshot (for bulk operations)
virtual void setMaximized(WindowHandle w, bool maximized)=0
Maximize or restore a window.
ICompositorBridge & operator=(ICompositorBridge &&)=delete
ICompositorBridge(const ICompositorBridge &)=delete
virtual void applySnapGeometry(WindowHandle w, const QRectF &geometry, bool skipAnimation=false)=0
Apply snap geometry with optional animation.
ICompositorBridge & operator=(const ICompositorBridge &)=delete
virtual QSizeF minSize(WindowHandle w) const =0
virtual bool hasDecoration(WindowHandle w) const =0
virtual bool isOnCurrentDesktop(WindowHandle w) const =0
virtual ~ICompositorBridge()=default
virtual bool shouldHandleWindow(WindowHandle w) const =0
Should this window be managed by PlasmaZones at all?
virtual WindowHandle findWindowById(const QString &windowId) const =0
Find a window by its full window ID ("appId|instanceId")
virtual void activateWindow(WindowHandle w)=0
Give input focus to a window.
ICompositorBridge()=default
ICompositorBridge(ICompositorBridge &&)=delete
virtual bool isMinimized(WindowHandle w) const =0
virtual QVector< WindowHandle > stackingOrder() const =0
Get all managed windows in stacking order (bottom to top)
virtual QRectF frameGeometry(WindowHandle w) const =0
virtual QString windowId(WindowHandle w) const =0
Get the full window ID for a window ("appId|instanceId")
virtual QVector< WindowHandle > findAllWindowsById(const QString &windowId) const =0
Find all windows matching a window ID (exact + appId fallback for disambiguation)
virtual void raiseWindow(WindowHandle w)=0
Raise a window in the stacking order.
virtual bool isTileableWindow(WindowHandle w) const =0
Is this window eligible for autotile (stricter than shouldHandle)?
virtual void invalidateScreenIdCache()=0
Invalidate cached screen IDs (call on screen add/remove/reconfigure)
virtual void setNoBorder(WindowHandle w, bool noBorder)=0
Set/remove server-side decoration (title bar)
virtual QObject * asQObject()=0
Get the QObject parent for D-Bus watcher ownership.
Definition AutotileState.h:16
void * WindowHandle
Opaque handle to a compositor window.
Definition ICompositorBridge.h:31
Compositor-agnostic window property snapshot.
Definition ICompositorBridge.h:41
bool isOnCurrentDesktop
Definition ICompositorBridge.h:53
QString caption
Definition ICompositorBridge.h:47
WindowHandle handle
Definition ICompositorBridge.h:42
bool isOnCurrentActivity
Definition ICompositorBridge.h:54
QSizeF minSize
Definition ICompositorBridge.h:50
QString screenId
Definition ICompositorBridge.h:46
QString appId
Definition ICompositorBridge.h:44
QIcon icon
Definition ICompositorBridge.h:48
bool isFullScreen
Definition ICompositorBridge.h:52
bool isNormalWindow
Definition ICompositorBridge.h:56
QString windowId
Definition ICompositorBridge.h:43
bool keepAbove
Definition ICompositorBridge.h:57
qint64 pid
Definition ICompositorBridge.h:58
bool isMinimized
Definition ICompositorBridge.h:51
QString windowClass
WM_CLASS / app_id as reported by compositor (may differ from appId for XWayland)
Definition ICompositorBridge.h:45
bool hasDecoration
Definition ICompositorBridge.h:55
QRectF frameGeometry
Definition ICompositorBridge.h:49