Phosphor
Qt6 / Wayland library suite for window-management tools
 
Loading...
Searching...
No Matches
IWindowRegistry.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: 2026 fuddlesworth
2// SPDX-License-Identifier: LGPL-2.1-or-later
3
4#pragma once
5
6#include <phosphorengine_export.h>
7#include <QString>
8
9#include <optional>
10
11namespace PhosphorEngine {
12
13class PHOSPHORENGINE_EXPORT IWindowRegistry
14{
15public:
16 virtual ~IWindowRegistry() = default;
17
37 virtual QString canonicalizeWindowId(const QString& rawWindowId) = 0;
38 virtual QString canonicalizeForLookup(const QString& rawWindowId) const = 0;
45 virtual QString appIdFor(const QString& instanceId) const = 0;
46
66 virtual std::optional<bool> minimizedState(const QString& windowId) const
67 {
68 Q_UNUSED(windowId)
69 return std::nullopt;
70 }
71};
72
73} // namespace PhosphorEngine
Definition IWindowRegistry.h:14
virtual QString appIdFor(const QString &instanceId) const =0
The app identity recorded for instanceId, or empty when the instance is unknown.
virtual std::optional< bool > minimizedState(const QString &windowId) const
Tri-state compositor minimize state for windowId.
Definition IWindowRegistry.h:66
virtual QString canonicalizeForLookup(const QString &rawWindowId) const =0
virtual QString canonicalizeWindowId(const QString &rawWindowId)=0
Freeze (on first contact) and return the canonical id for rawWindowId's instance.
virtual ~IWindowRegistry()=default
Definition EngineTypes.h:14