From 9f337db2d2d75f91c1d1ba73fabb01c5a020ed04 Mon Sep 17 00:00:00 2001 From: Viktar Lukashonak Date: Wed, 16 Mar 2022 15:50:00 +0300 Subject: [PATCH] Hide/Unhide module when "format*" is empty. --- src/modules/temperature.cpp | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/src/modules/temperature.cpp b/src/modules/temperature.cpp index 84560e8..86aea70 100644 --- a/src/modules/temperature.cpp +++ b/src/modules/temperature.cpp @@ -3,6 +3,11 @@ waybar::modules::Temperature::Temperature(const std::string& id, const Json::Value& config) : ALabel(config, "temperature", id, "{temperatureC}°C", 10) { + if (config_["format"].asString().empty() && config_["format-critical"].asString().empty()) { + throw std::runtime_error("Format configuration is not defined"); + } else if (config_["format"].asString().empty()) { + format_.clear(); + } if (config_["hwmon-path"].isString()) { file_path_ = config_["hwmon-path"].asString(); } else if (config_["hwmon-path-abs"].isString() && config_["input-filename"].isString()) { @@ -34,6 +39,15 @@ auto waybar::modules::Temperature::update() -> void { } else { label_.get_style_context()->remove_class("critical"); } + + if(format.empty()) + { + event_box_.hide(); + return; + } else { + event_box_.show(); + } + auto max_temp = config_["critical-threshold"].isInt() ? config_["critical-threshold"].asInt() : 0; label_.set_markup(fmt::format(format, fmt::arg("temperatureC", temperature_c),