roundabout,
created on Thursday, 24 July 2025, 20:39:16 (1753389556),
received on Saturday, 26 July 2025, 07:40:06 (1753515606)
Author identity: vlad <vlad.muntoiu@gmail.com>
14e72c5a0cb015ba8216f7e56318886c1074a8d2
applets/wf-window-list/__init__.py
@@ -33,6 +33,7 @@ class WindowButton(Gtk.ToggleButton):
self.window_id = window_id self.window_title = window_title self.set_has_frame(False)self.set_label(self.window_title)
@@ -51,7 +52,9 @@ class WFWindowList(panorama_panel.Applet):
fd = self.socket.client.fileno() GLib.io_add_watch(fd, GLib.IO_IN, self.on_wf_event) self.window_buttons = {}self.initial_button = Gtk.ToggleButton() self.window_buttons: dict[int, WindowButton] = {}for view in self.socket.list_views(): self.create_window_button(view)
@@ -75,6 +78,7 @@ class WFWindowList(panorama_panel.Applet):
def create_window_button(self, view): button = WindowButton(view["id"], view["title"]) button.set_group(self.initial_button)self.window_buttons[view["id"]] = button self.append(button)
@@ -83,6 +87,9 @@ class WFWindowList(panorama_panel.Applet):
self.remove(self.window_buttons[view["id"]]) self.window_buttons[view["id"]] = None def focus_window_button(self, view): self.window_buttons[view["id"]].set_active(True) def on_wf_event(self, source, condition): if condition == GLib.IO_IN: try:
@@ -95,6 +102,8 @@ class WFWindowList(panorama_panel.Applet):
self.create_window_button(message["view"]) case "view-unmapped": self.remove_window_button(message["view"]) case "view-focused": self.focus_window_button(message["view"])except Exception as e: print("Error reading Wayfire event:", e) return True