Commit Graph
47 Commits
Author SHA1 Message Date
Alex 02c20cf339 Merge remote-tracking branch 'origin/master' into agd/ignore-tray-applets
# Conflicts:
#	include/modules/sni/tray.hpp
#	src/modules/sni/host.cpp
#	src/modules/sni/tray.cpp
2026-07-03 22:40:04 +02:00
Alexis Rouillard dfe2d80496 Merge branch 'master' into fix/tray-hide-when-empty 2026-07-03 20:45:10 +02:00
Jérémie Rodon 5c3ec1fd63 fix(tray): hide module when no items are visible
Tray::update() already had logic to hide the module when all child items were passive, but it was only re-run on item add/remove — never on a status change. When the last visible item transitioned to Passive, the item hid itself but the now-empty module remained visible.

Connect Tray to each item's Gtk::EventBox signal_show/signal_hide so update() runs on every visibility transition, and simplify update() to check child->get_visible() directly instead of inspecting the `passive` CSS class. The Tray-level `show-passive-items` read becomes redundant since Item already honours it when deciding its own visibility; remove it along with the now-unused Tray::show_passive_ member.

Fixes: #3721
2026-05-11 22:47:24 +02:00
Austin Horstman 2a748f1a56 fix(sni): delay tray item insertion until proxies are ready
Only add tray widgets after the SNI proxy has finished initializing and the
item has a valid id/category pair.

This also removes invalid items through the host teardown path, refreshes the
tray when item status changes, and avoids calling DBus methods through a null
proxy during early clicks or scroll events.

Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2026-03-08 01:20:15 -06:00
anton 3655d73525 Ignore Tray entries by service name and when dbus properties load 2026-02-08 00:44:14 +00:00
Alex 79c30e77a7 fix: lint 2025-08-08 08:42:17 +02:00
Bahnschrift 800c4b56cc Merge remote-tracking branch 'source/master' 2025-06-18 18:42:23 +10:00
Austin Horstman 55f52c3457 treewide: clang and nix format 2025-04-15 14:56:28 -05:00
Kaosu 78d5c3ef3a init custom icons from config per tray 2025-02-16 14:21:34 +01:00
Bahnschrift cf64b2c88c fix: un-hide tray when new icons are added 2024-12-19 12:29:58 +11:00
Bahnschrift 622f22d6b5 fix: hide tray when there are no non-passive icons 2024-12-19 12:09:31 +11:00
Aleksei Bavshin d590d508ca feat: add module class to the root elements of the modules
Previously, the only way to select all the module labels was with the
following kind of selector:
```css
.modules-left > widget > label,
.modules-center > widget > label,
.modules-right > widget > label {
    /* ... */
}
```
(and a matching block for the `box` containers).

Now, this can be expressed as
```css
label.module, box.module {
    /* ... */
}
```
2024-02-14 22:41:13 -08:00
Aleksei Bavshin 2f555a6936 refactor(bar): use Gtk enums for position and orientation
Ensure that the position and the corresponding CSS class on window are
always set.
2024-02-14 22:11:21 -08:00
Joshua Manchester 95ffc291f6 fix: hide tray event box instead of box 2024-01-14 15:06:06 +00:00
Alex 2111865efe refactor: remove warning 2022-12-01 08:45:12 +01:00
Alex f2fcadbf62 refactor: lint 2022-04-06 08:37:19 +02:00
Erik Reider 941cf47693 Add config option "reverse-direction" 2022-01-28 19:14:46 +01:00
Erik Reider 32d42749f9 use pack_end instead of pack_start 2022-01-28 18:42:52 +01:00
Elyes HAOUAS f18eb71ad7 Fix spelling errors
Signed-off-by: Elyes HAOUAS <ehaouas@noos.fr>
2021-10-02 18:13:17 +02:00
Aleksei Bavshin fbedc3d133 fix(tray): fix visibility of Passive items
`show_all` call from `Tray::update` attempts to walk the widget tree and
make every widget visible. Since we control individual tray item
visibility based on `Status` SNI property, we don't want that to happen.

Modify `Tray::update` to control the visibility of a whole tray module
only and ensure that the children of `Item` are still visible when
necessary.
2021-10-02 00:08:45 -07:00
Michael Swiger 2d80d31527 Fix tray icon scaling on multi-display setups 2021-08-16 23:33:29 -07:00
Alex d1c4897f31 feat: update man 2020-04-12 18:38:51 +02:00
Guillaume Maudoux 047c2929c1 Use the same StatusNotifierWatcher for all trays 2020-02-19 12:06:35 +01:00
Joel Nordström 21a89ac46d Typo 2019-07-15 12:21:31 +02:00
Alex 340ec7be91 refactor: AModule 2019-06-15 14:57:52 +02:00
Alex ed240ac105 feat: add warning about tray requirements 2019-05-20 15:21:13 +02:00
Alex 67593b8c0f Merge pull request #332 from Organic-Code/enhancement/spdlog
Adding spdlog
2019-05-20 12:07:58 +02:00
Alex f2edc8f965 feat(Watcher): define watcher_id 2019-05-20 11:47:52 +02:00
Lucas Lazare 51be97f9aa Adding spdlog 2019-05-18 19:44:45 -04:00
Alex 311c34ecbc feat(Bar): handle widget size changes 2019-04-24 12:37:24 +02:00
Alex 807ef32357 refactor: format && better output management 2019-04-18 17:47:40 +02:00
Alex 346ec68578 refactor: format tray && partial fix for #235 2019-04-17 14:19:04 +02:00
Alex 47142a61ae feat: allow waybar to be positioned on left/right 2019-03-22 12:25:05 +01:00
Alexis b554094c7e feat: args && class id 2018-12-18 17:30:54 +01:00
Alexis 1d96d57b75 feat: warn user about stopped endless custom module 2018-12-03 09:35:10 +01:00
Alexis 691fb88057 refactor(modules): const bar 2018-12-01 00:10:41 +01:00
Alexis 0b1b0eb1a7 feat(tray): multiple hosts 2018-11-22 16:20:49 +01:00
Alexis ba79b4d397 refactor(tray): cleanup and fixes 2018-11-22 15:47:23 +01:00
Alexis 69fceb1c92 fix(tray): sigsev on click when multiple icons is available 2018-11-16 12:01:03 +01:00
Alexis daf613f8ca feat: add debug about tray beta 2018-10-28 08:43:48 +01:00
Alexis a55a1ae866 fix(tray): icons size 2018-10-26 14:53:39 +02:00
Alexis 07d8dfb3d6 feat(tray): spacing config 2018-10-26 12:08:50 +02:00
topisani 9a333088e5 Merge branch 'tray-gdbus' of github.com:topisani/Waybar into tray-gdbus 2018-10-04 18:47:06 +02:00
topisani 108b1092e5 WIP sni dbus-menu support. 2018-10-04 18:03:01 +02:00
Alexis 20ff2cab9e feat(Tray): handle item unregister 2018-09-15 19:01:28 +02:00
Alexis fc6e42d748 feat(WIP): tray
feat(wip): tray

feat(wip): tray

feat(WIP): gdbus

feat(WIP): tray
2018-09-15 19:00:45 +02:00
Alexis 0eee8eade7 feat(WIP): tray
feat(wip): tray

feat(wip): tray

feat(WIP): gdbus

feat(WIP): tray
2018-09-02 17:29:16 +02:00