Phosphor
Qt6 / Wayland library suite for window-management tools
 
Loading...
Searching...
No Matches
NavigationTypes.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
7#include <PhosphorProtocol/phosphorprotocoltypes_export.h>
8
9#include <QList>
10#include <QMetaType>
11#include <QRect>
12#include <QString>
13
14namespace PhosphorProtocol {
15
19{
20 QString windowId;
21 QString targetZoneId;
22 QString sourceZoneId;
23 int x = 0;
24 int y = 0;
25 int width = 0;
26 int height = 0;
27
28 QRect toRect() const
29 {
30 return QRect(x, y, width, height);
31 }
33 {
34 return {windowId, x, y, width, height, QString()};
35 }
36};
37
38using SnapAllResultList = QList<SnapAllResultEntry>;
39
42{
43 bool success = false;
44 QString reason;
45 QString zoneId;
46 int x = 0;
47 int y = 0;
48 int width = 0;
49 int height = 0;
50 QString sourceZoneId;
51 QString screenName;
52
53 QRect toRect() const
54 {
55 return QRect(x, y, width, height);
56 }
57};
58
61{
62 bool success = false;
63 QString reason;
65 QString sourceZoneId;
66 QString targetZoneId;
67 QString screenName;
68};
69
72{
73 bool success = false;
74 QString reason;
76 QString zoneId;
77 QString screenName;
78};
79
82{
83 bool success = false;
84 QString reason;
85 QString windowId1;
86 int x1 = 0;
87 int y1 = 0;
88 int w1 = 0;
89 int h1 = 0;
90 QString zoneId1;
91 QString windowId2;
92 int x2 = 0;
93 int y2 = 0;
94 int w2 = 0;
95 int h2 = 0;
96 QString zoneId2;
97 QString screenName;
98 QString sourceZoneId;
99 QString targetZoneId;
100};
101
104{
105 bool success = false;
106 bool found = false;
107 int x = 0;
108 int y = 0;
109 int width = 0;
110 int height = 0;
111
112 QRect toRect() const
113 {
114 return QRect(x, y, width, height);
115 }
116};
117
118} // namespace PhosphorProtocol
119
120Q_DECLARE_METATYPE(PhosphorProtocol::SnapAllResultEntry)
121Q_DECLARE_METATYPE(PhosphorProtocol::SnapAllResultList)
122Q_DECLARE_METATYPE(PhosphorProtocol::MoveTargetResult)
123Q_DECLARE_METATYPE(PhosphorProtocol::FocusTargetResult)
124Q_DECLARE_METATYPE(PhosphorProtocol::CycleTargetResult)
125Q_DECLARE_METATYPE(PhosphorProtocol::SwapTargetResult)
D-Bus marshalling for the autotile value types (see AutotileTypes.h).
Definition AutotileMarshalling.h:16
QList< SnapAllResultEntry > SnapAllResultList
Definition NavigationTypes.h:38
D-Bus struct for cycle navigation result: (bssss)
Definition NavigationTypes.h:72
QString screenName
Definition NavigationTypes.h:77
QString reason
Definition NavigationTypes.h:74
QString zoneId
Definition NavigationTypes.h:76
QString windowIdToActivate
Definition NavigationTypes.h:75
bool success
Definition NavigationTypes.h:73
D-Bus struct for focus navigation result: (bsssss)
Definition NavigationTypes.h:61
QString sourceZoneId
Definition NavigationTypes.h:65
QString reason
Definition NavigationTypes.h:63
QString screenName
Definition NavigationTypes.h:67
QString windowIdToActivate
Definition NavigationTypes.h:64
bool success
Definition NavigationTypes.h:62
QString targetZoneId
Definition NavigationTypes.h:66
D-Bus struct for move/push/zone-number navigation result: (bssiiiiss)
Definition NavigationTypes.h:42
QString screenName
Definition NavigationTypes.h:51
int width
Definition NavigationTypes.h:48
int x
Definition NavigationTypes.h:46
QString reason
Definition NavigationTypes.h:44
QString sourceZoneId
Definition NavigationTypes.h:50
int y
Definition NavigationTypes.h:47
QString zoneId
Definition NavigationTypes.h:45
bool success
Definition NavigationTypes.h:43
QRect toRect() const
Definition NavigationTypes.h:53
int height
Definition NavigationTypes.h:49
D-Bus struct for restore navigation result: (bbiiii)
Definition NavigationTypes.h:104
int height
Definition NavigationTypes.h:110
QRect toRect() const
Definition NavigationTypes.h:112
int width
Definition NavigationTypes.h:109
int y
Definition NavigationTypes.h:108
bool success
Definition NavigationTypes.h:105
bool found
Definition NavigationTypes.h:106
int x
Definition NavigationTypes.h:107
D-Bus struct for snap-all result entries: (sssiiii) Carries targetZoneId so the plugin can confirm sn...
Definition NavigationTypes.h:19
int x
Definition NavigationTypes.h:23
QString targetZoneId
Definition NavigationTypes.h:21
WindowGeometryEntry toGeometryEntry() const
Definition NavigationTypes.h:32
QString windowId
Definition NavigationTypes.h:20
int y
Definition NavigationTypes.h:24
QRect toRect() const
Definition NavigationTypes.h:28
int width
Definition NavigationTypes.h:25
QString sourceZoneId
Definition NavigationTypes.h:22
int height
Definition NavigationTypes.h:26
D-Bus struct for swap navigation result: (bssiiiissiiiissss)
Definition NavigationTypes.h:82
QString reason
Definition NavigationTypes.h:84
QString screenName
Definition NavigationTypes.h:97
QString windowId2
Definition NavigationTypes.h:91
bool success
Definition NavigationTypes.h:83
QString zoneId2
Definition NavigationTypes.h:96
int x2
Definition NavigationTypes.h:92
int x1
Definition NavigationTypes.h:86
QString windowId1
Definition NavigationTypes.h:85
int y2
Definition NavigationTypes.h:93
QString targetZoneId
Definition NavigationTypes.h:99
int w1
Definition NavigationTypes.h:88
int w2
Definition NavigationTypes.h:94
int y1
Definition NavigationTypes.h:87
QString zoneId1
Definition NavigationTypes.h:90
int h2
Definition NavigationTypes.h:95
QString sourceZoneId
Definition NavigationTypes.h:98
int h1
Definition NavigationTypes.h:89
D-Bus struct for batch geometry entries: (siiiis)
Definition WindowTypes.h:29