From 15c3b3630a3381e634120a3bc3559fd7663908b6 Mon Sep 17 00:00:00 2001
From: Michail Vourlakos <mvourlakos@gmail.com>
Date: Sun, 10 Jan 2021 13:14:07 +0200
Subject: [PATCH] wayland:fix struts crash

--when struts thickness during startup was zero
that was creating an invalid window geometry under
wayland and subsequently it was crashing the app.

BUG:431381
---
 app/view/visibilitymanager.cpp | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/app/view/visibilitymanager.cpp b/app/view/visibilitymanager.cpp
index 18413209b..65d369b19 100644
--- a/app/view/visibilitymanager.cpp
+++ b/app/view/visibilitymanager.cpp
@@ -383,11 +383,11 @@ void VisibilityManager::setMode(Latte::Types::Visibility mode)
 
 void VisibilityManager::updateStrutsBasedOnLayoutsAndActivities(bool forceUpdate)
 {
-    bool multipleLayoutsAndCurrent = (m_corona->layoutsManager()->memoryUsage() == MemoryUsage::MultipleLayouts
+    bool inMultipleLayoutsAndCurrent = (m_corona->layoutsManager()->memoryUsage() == MemoryUsage::MultipleLayouts
                                       && m_latteView->layout() && !m_latteView->positioner()->inLocationAnimation()
                                       && m_latteView->layout()->isCurrent());
 
-    if (m_corona->layoutsManager()->memoryUsage() == MemoryUsage::SingleLayout || multipleLayoutsAndCurrent) {
+    if (m_strutsThickness>0 && (m_corona->layoutsManager()->memoryUsage() == MemoryUsage::SingleLayout || inMultipleLayoutsAndCurrent)) {
         QRect computedStruts = acceptableStruts();
         if (m_publishedStruts != computedStruts || forceUpdate) {
             //! Force update is needed when very important events happen in DE and there is a chance