From 36fdcc89b3b33713e72aa8be873ab11edf6c584a Mon Sep 17 00:00:00 2001 From: vaxerski <43317083+vaxerski@users.noreply.github.com> Date: Sun, 6 Mar 2022 22:10:20 +0100 Subject: [PATCH] fixed #35 --- src/bar/Bar.cpp | 8 ++++++-- src/bar/Bar.hpp | 6 ++++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/bar/Bar.cpp b/src/bar/Bar.cpp index cc5d5e6..ded37b8 100644 --- a/src/bar/Bar.cpp +++ b/src/bar/Bar.cpp @@ -83,14 +83,18 @@ int64_t barMainThread() { // Init config manager ConfigManager::init(); - STATUSBAR.setup(0); + if (ConfigManager::getInt("bar:enabled") == 1) { + Debug::log(LOG, "Bar enabled, reload config to launch it."); + ConfigManager::loadConfigLoadVars(); + } Debug::log(LOG, "Bar setup finished!"); int lazyUpdateCounter = 0; // setup the tray so apps send to us - STATUSBAR.setupTray(); + if (!STATUSBAR.getIsDestroyed()) + STATUSBAR.setupTray(); while (1) { diff --git a/src/bar/Bar.hpp b/src/bar/Bar.hpp index c81fe1f..0e48827 100644 --- a/src/bar/Bar.hpp +++ b/src/bar/Bar.hpp @@ -55,6 +55,9 @@ NONMOVABLE NONCOPYABLE struct SBarModule { class CStatusBar { public: + CStatusBar() { + m_bIsDestroyed = true; + } EXPOSED_MEMBER(WindowID, xcb_window_t, i); EXPOSED_MEMBER(MonitorID, int, i); @@ -63,6 +66,7 @@ public: EXPOSED_MEMBER(LastWindowClass, std::string, sz); EXPOSED_MEMBER(IsCovered, bool, b); EXPOSED_MEMBER(HasTray, bool, b); + EXPOSED_MEMBER(IsDestroyed, bool, b); // for not deleting nulls void draw(); void setup(int MonitorID); @@ -81,8 +85,6 @@ public: xcb_window_t trayWindowID = 0; private: - // for not deleting nulls - bool m_bIsDestroyed = true; Vector2D m_vecSize; Vector2D m_vecPosition;