feat(percent): adds a percent class to numeric modules
parent
1a024db03c
commit
472363a623
|
@ -51,6 +51,8 @@ class Backlight : public ALabel {
|
|||
const std::string preferred_device_;
|
||||
static constexpr int EPOLL_MAX_EVENTS = 16;
|
||||
|
||||
std::string old_percent_;
|
||||
|
||||
std::optional<BacklightDev> previous_best_;
|
||||
std::string previous_format_;
|
||||
|
||||
|
|
|
@ -43,6 +43,7 @@ class Battery : public ALabel {
|
|||
int fd_;
|
||||
std::vector<int> wds_;
|
||||
std::string old_status_;
|
||||
std::string old_capacity_;
|
||||
};
|
||||
|
||||
} // namespace waybar::modules
|
||||
|
|
|
@ -23,6 +23,8 @@ class Cpu : public ALabel {
|
|||
std::tuple<uint16_t, std::string> getCpuUsage();
|
||||
std::vector<std::tuple<size_t, size_t>> parseCpuinfo();
|
||||
|
||||
std::string old_usage_;
|
||||
|
||||
std::vector<std::tuple<size_t, size_t>> prev_times_;
|
||||
waybar::util::SleeperThread thread_;
|
||||
};
|
||||
|
|
|
@ -179,8 +179,13 @@ auto waybar::modules::Backlight::update() -> void {
|
|||
}
|
||||
|
||||
const auto percent = best->get_max() == 0 ? 100 : best->get_actual() * 100 / best->get_max();
|
||||
const auto percentClass = "percent" + std::to_string(int(std::ceil(percent/5)*5));
|
||||
|
||||
label_.set_markup(fmt::format(
|
||||
format_, fmt::arg("percent", std::to_string(percent)), fmt::arg("icon", getIcon(percent))));
|
||||
label_.get_style_context()->remove_class(old_percent_);
|
||||
label_.get_style_context()->add_class(percentClass);
|
||||
old_percent_ = percentClass;
|
||||
} else {
|
||||
if (!previous_best_.has_value()) {
|
||||
return;
|
||||
|
|
|
@ -144,8 +144,13 @@ auto waybar::modules::Battery::update() -> void {
|
|||
std::transform(status.begin(), status.end(), status.begin(), ::tolower);
|
||||
auto format = format_;
|
||||
auto state = getState(capacity);
|
||||
auto capacity_class = "percent" + std::to_string(int(std::ceil(capacity/5)*5));
|
||||
label_.get_style_context()->remove_class(old_status_);
|
||||
label_.get_style_context()->remove_class(old_capacity_);
|
||||
label_.get_style_context()->add_class(status);
|
||||
label_.get_style_context()->add_class(capacity_class);
|
||||
old_capacity_ = capacity_class;
|
||||
std::cout << fmt::format(capacity_class);
|
||||
old_status_ = status;
|
||||
if (!state.empty() && config_["format-" + status + "-" + state].isString()) {
|
||||
format = config_["format-" + status + "-" + state].asString();
|
||||
|
|
|
@ -19,7 +19,11 @@ auto waybar::modules::Cpu::update() -> void {
|
|||
if (tooltipEnabled()) {
|
||||
label_.set_tooltip_text(tooltip);
|
||||
}
|
||||
auto percent_class = "percent" + std::to_string(int(std::ceil(cpu_usage/5)*5));
|
||||
label_.set_markup(fmt::format(format_, fmt::arg("load", cpu_load), fmt::arg("usage", cpu_usage)));
|
||||
label_.get_style_context()->remove_class(old_usage_);
|
||||
label_.get_style_context()->add_class(percent_class);
|
||||
old_usage_ = percent_class;
|
||||
}
|
||||
|
||||
uint16_t waybar::modules::Cpu::getCpuLoad() {
|
||||
|
|
Loading…
Reference in New Issue