diff --git a/include/modules/custom.hpp b/include/modules/custom.hpp index f35ef9b..711d07e 100644 --- a/include/modules/custom.hpp +++ b/include/modules/custom.hpp @@ -30,6 +30,7 @@ class Custom : public ALabel { const std::string name_; std::string text_; + std::string id_; std::string alt_; std::string tooltip_; std::vector class_; diff --git a/src/modules/custom.cpp b/src/modules/custom.cpp index bbb7ce6..6fc0167 100644 --- a/src/modules/custom.cpp +++ b/src/modules/custom.cpp @@ -4,7 +4,12 @@ waybar::modules::Custom::Custom(const std::string& name, const std::string& id, const Json::Value& config) - : ALabel(config, "custom-" + name, id, "{}"), name_(name), fp_(nullptr), pid_(-1) { + : ALabel(config, "custom-" + name, id, "{}"), + name_(name), + id_(id), + percentage_(0), + fp_(nullptr), + pid_(-1) { dp.emit(); if (interval_.count() > 0) { delayWorker(); @@ -140,6 +145,7 @@ auto waybar::modules::Custom::update() -> void { } auto classes = label_.get_style_context()->list_classes(); for (auto const& c : classes) { + if (c == id_) continue; label_.get_style_context()->remove_class(c); } for (auto const& c : class_) {