Skip to content

Commit 6143ad2

Browse files
committed
Merge branch 'systray' into multimerge
2 parents 8091d92 + 00345a5 commit 6143ad2

File tree

1 file changed

+5
-17
lines changed

1 file changed

+5
-17
lines changed

modules/systemtray.py

Lines changed: 5 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
logger = logging.getLogger(__name__)
1313

1414
class SystemTray(Box):
15-
def __init__(self, pixel_size: int = 20, refresh_interval: int = 1, **kwargs) -> None:
15+
def __init__(self, pixel_size: int = 20, **kwargs) -> None:
1616
orientation = Gtk.Orientation.HORIZONTAL if not data.VERTICAL else Gtk.Orientation.VERTICAL
1717
super().__init__(
1818
name="systray",
@@ -23,16 +23,12 @@ def __init__(self, pixel_size: int = 20, refresh_interval: int = 1, **kwargs) ->
2323
self.enabled = True
2424
super().set_visible(False)
2525
self.pixel_size = pixel_size
26-
self.refresh_interval = refresh_interval
27-
2826
self.buttons_by_id = {}
2927
self.items_by_id = {}
3028

3129
self.watcher = Gray.Watcher()
3230
self.watcher.connect("item-added", self.on_watcher_item_added)
3331

34-
GLib.timeout_add_seconds(self.refresh_interval, self._refresh_all_items)
35-
3632
def set_visible(self, visible: bool):
3733
self.enabled = visible
3834
self._update_visibility()
@@ -71,7 +67,7 @@ def _get_item_pixbuf(self, item: Gray.Item) -> GdkPixbuf.Pixbuf:
7167
"image-missing", self.pixel_size, Gtk.IconLookupFlags.FORCE_SIZE
7268
)
7369

74-
def _refresh_item_ui(self, identifier: str, item: Gray.Item, button: Gtk.Button):
70+
def _refresh_item_ui(self, item: Gray.Item, button: Gtk.Button):
7571
pixbuf = self._get_item_pixbuf(item)
7672
img = button.get_image()
7773
if isinstance(img, Gtk.Image):
@@ -90,14 +86,6 @@ def _refresh_item_ui(self, identifier: str, item: Gray.Item, button: Gtk.Button)
9086
else:
9187
button.set_has_tooltip(False)
9288

93-
def _refresh_all_items(self) -> bool:
94-
95-
for ident, item in self.items_by_id.items():
96-
btn = self.buttons_by_id.get(ident)
97-
if btn:
98-
self._refresh_item_ui(ident, item, btn)
99-
return True
100-
10189
def on_watcher_item_added(self, _, identifier: str):
10290
item = self.watcher.get_item_for_identifier(identifier)
10391
if not item:
@@ -113,12 +101,12 @@ def on_watcher_item_added(self, _, identifier: str):
113101
self.items_by_id[identifier] = item
114102

115103
item.connect("notify::icon-pixmaps",
116-
lambda itm, pspec: self._refresh_item_ui(identifier, itm, btn))
104+
lambda itm, pspec: self._refresh_item_ui(itm, btn))
117105
item.connect("notify::icon-name",
118-
lambda itm, pspec: self._refresh_item_ui(identifier, itm, btn))
106+
lambda itm, pspec: self._refresh_item_ui(itm, btn))
119107

120108
try:
121-
item.connect("updated", lambda itm: self._refresh_item_ui(identifier, itm, btn))
109+
item.connect("icon-changed", lambda itm: self._refresh_item_ui(itm, btn))
122110
except TypeError:
123111
pass
124112

0 commit comments

Comments
 (0)