Custom module - only call label_.set_tooltip_markup if tooltip markup has actually changed - fixes tooltips not appearing at all if a custom module is updating too frequently.
parent
9fa2cc45d2
commit
abe1fa5bd4
|
@ -131,11 +131,15 @@ auto waybar::modules::Custom::update() -> void {
|
||||||
label_.set_markup(str);
|
label_.set_markup(str);
|
||||||
if (tooltipEnabled()) {
|
if (tooltipEnabled()) {
|
||||||
if (text_ == tooltip_) {
|
if (text_ == tooltip_) {
|
||||||
|
if (label_.get_tooltip_markup() != str) {
|
||||||
label_.set_tooltip_markup(str);
|
label_.set_tooltip_markup(str);
|
||||||
|
}
|
||||||
} else {
|
} else {
|
||||||
|
if (label_.get_tooltip_markup() != tooltip_) {
|
||||||
label_.set_tooltip_markup(tooltip_);
|
label_.set_tooltip_markup(tooltip_);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
}
|
||||||
auto classes = label_.get_style_context()->list_classes();
|
auto classes = label_.get_style_context()->list_classes();
|
||||||
for (auto const& c : classes) {
|
for (auto const& c : classes) {
|
||||||
label_.get_style_context()->remove_class(c);
|
label_.get_style_context()->remove_class(c);
|
||||||
|
|
Loading…
Reference in New Issue