summaryrefslogtreecommitdiff
path: root/src/config/ConfigManager.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/config/ConfigManager.cpp')
-rw-r--r--src/config/ConfigManager.cpp15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/config/ConfigManager.cpp b/src/config/ConfigManager.cpp
index 12b43b37..f0383d50 100644
--- a/src/config/ConfigManager.cpp
+++ b/src/config/ConfigManager.cpp
@@ -2954,3 +2954,18 @@ std::string SConfigOptionDescription::jsonify() const {
void CConfigManager::ensurePersistentWorkspacesPresent() {
g_pCompositor->ensurePersistentWorkspacesPresent(m_vWorkspaceRules);
}
+
+void CConfigManager::storeFloatingSize(PHLWINDOW window, const Vector2D& size) {
+ Debug::log(LOG, "storing floating size {}x{} for window {}::{}", size.x, size.y, window->m_szClass, window->m_szTitle);
+ SFloatCache id{window};
+ m_mStoredFloatingSizes[id] = size;
+}
+
+std::optional<Vector2D> CConfigManager::getStoredFloatingSize(PHLWINDOW window) {
+ SFloatCache id{window};
+ if (m_mStoredFloatingSizes.contains(id)) {
+ Debug::log(LOG, "got stored size {}x{} for window {}::{}", m_mStoredFloatingSizes[id].x, m_mStoredFloatingSizes[id].y, window->m_szClass, window->m_szTitle);
+ return m_mStoredFloatingSizes[id];
+ }
+ return std::nullopt;
+}