54namespace AutotileStateHelpers {
63 if (it.value().contains(windowId)) {
113 it.value().remove(windowId);
114 if (it.value().isEmpty()) {
126 it->remove(windowId);
153 const bool removed = it.value().remove(windowId);
154 if (it.value().isEmpty()) {
166 if (it.key() != keepScreenId) {
167 it.value().remove(windowId);
173 if (it.value().isEmpty() && it.key() != keepScreenId) {
187 if (it.value().remove(windowId)) {
190 if (it.value().isEmpty()) {
211 QVector<QPair<QString, QString>> result;
213 for (
const QString& wid : it.value()) {
214 result.append({wid, it.key()});
QSet< QString > tiledOnScreen(const BorderState &border, const QString &screenId)
Detached copy of the set of tiled windows on a given screen (QHash::value copy, not a reference).
Definition AutotileState.h:201
void cleanupClosedWindowState(const QString &windowId, BorderState &border, AutotileWindowState &state)
Clean up all state tracking for a closed window.
Definition AutotileState.h:102
void removeFromOtherScreens(BorderState &border, const QString &windowId, const QString &keepScreenId)
Remove a window from every screen's tiled bucket EXCEPT keepScreenId (cross-screen transfer: a window...
Definition AutotileState.h:163
bool removeFromAllScreens(BorderState &border, const QString &windowId)
Remove a window from every screen's tiled bucket.
Definition AutotileState.h:183
bool shouldShowBorderForWindow(const BorderState &border, const QString &windowId)
Definition AutotileState.h:70
void addTiledOnScreen(BorderState &border, const QString &screenId, const QString &windowId)
Add a window to a screen's tiled bucket. Idempotent.
Definition AutotileState.h:140
bool isTiledWindow(const BorderState &border, const QString &windowId)
Definition AutotileState.h:60
QVector< QPair< QString, QString > > allTiledPairs(const BorderState &border)
Collect every tiled (windowId, screenId) pair for bulk operations (hide-titlebars toggle on).
Definition AutotileState.h:209
bool removeTiledOnScreen(BorderState &border, const QString &screenId, const QString &windowId)
Remove a window from a specific screen's tiled bucket.
Definition AutotileState.h:147
constexpr int BorderRadius
Definition DecorationDefaults.h:29
constexpr int BorderWidth
Definition DecorationDefaults.h:25
constexpr bool ShowBorder
Definition DecorationDefaults.h:23
constexpr bool HideTitleBars
Definition DecorationDefaults.h:22
Definition AutotileState.h:17
Bundles per-window state maps for cleanup operations.
Definition AutotileState.h:86
QSet< QString > & minimizeFloatedWindows
Definition AutotileState.h:89
QHash< QString, QString > & notifiedWindowScreens
Definition AutotileState.h:88
QHash< QString, QHash< QString, QRectF > > & preAutotileGeometries
Definition AutotileState.h:93
QSet< QString > & notifiedWindows
Definition AutotileState.h:87
QHash< QString, QRect > & centeredWaylandZones
Definition AutotileState.h:91
QHash< QString, QRect > & autotileTargetZones
Definition AutotileState.h:90
QSet< QString > & monocleMaximizedWindows
Definition AutotileState.h:92
Compositor-agnostic autotile border state.
Definition AutotileState.h:30
bool hideTitleBars
Definition AutotileState.h:40
bool showBorder
Definition AutotileState.h:41
QColor inactiveColor
Definition AutotileState.h:45
int width
Definition AutotileState.h:42
QColor color
Definition AutotileState.h:44
QHash< QString, QSet< QString > > tiledWindowsByScreen
windowId → screen bucket of tile-managed windows (drives border RENDERING).
Definition AutotileState.h:36
int radius
Definition AutotileState.h:43