diff options
author | Konstantin Pospelov <[email protected]> | 2019-06-08 18:11:32 +0300 |
---|---|---|
committer | Simon Ser <[email protected]> | 2019-10-21 17:22:25 +0200 |
commit | fa0abaf7cfecf1dc433717d53379d6942226c2bb (patch) | |
tree | deb117124ad6b8f824cab986b99cf60f4cc2871c /swaybar/tray/tray.c | |
parent | a5b6f40937a1f7630ec484bd2485b0b0f5f91c20 (diff) |
swaybar: do not retry search for tray icons
In case a tray icon cannot be found or does not have a desirable size,
swaybar retries the search again and again, which increases load on disk
and CPU. This commit solves it by storing target_size for each icon, so
that swaybar does not search for an icon of some size if it already tried to.
Fixes #3789.
Diffstat (limited to 'swaybar/tray/tray.c')
-rw-r--r-- | swaybar/tray/tray.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/swaybar/tray/tray.c b/swaybar/tray/tray.c index fcf8114f..5fe6f9c3 100644 --- a/swaybar/tray/tray.c +++ b/swaybar/tray/tray.c @@ -124,7 +124,9 @@ uint32_t render_tray(cairo_t *cairo, struct swaybar_output *output, double *x) { struct swaybar_tray *tray = output->bar->tray; for (int i = 0; i < tray->items->length; ++i) { uint32_t h = render_sni(cairo, output, x, tray->items->items[i]); - max_height = h > max_height ? h : max_height; + if (h > max_height) { + max_height = h; + } } return max_height; |