diff --git a/src/modules/clock.cpp b/src/modules/clock.cpp index c0569dd0..f9beffc0 100644 --- a/src/modules/clock.cpp +++ b/src/modules/clock.cpp @@ -4,11 +4,12 @@ waybar::modules::Clock::Clock(Json::Value config) : _config(config) { _label.set_name("clock"); - _thread = [this] { - Glib::signal_idle().connect_once(sigc::mem_fun(*this, &Clock::update)); + int interval = _config["interval"] ? _config["inveral"].asInt() : 60; + _thread = [this, interval] { auto now = waybar::chrono::clock::now(); - auto timeout = - std::chrono::floor(now + std::chrono::minutes(1)); + Glib::signal_idle().connect_once(sigc::mem_fun(*this, &Clock::update)); + auto timeout = std::chrono::floor(now + + std::chrono::seconds(interval)); _thread.sleep_until(timeout); }; };