Philipp Hörist pushed to branch master at gajim / gajim


Commits:
17fe5225 by lovetox at 2022-06-27T22:19:35+02:00
fix: GtkStatusIcon: Always show when Gajim has not toplevel focus

- - - - -


1 changed file:

- gajim/gtk/status_icon.py


Changes:

=====================================
gajim/gtk/status_icon.py
=====================================
@@ -188,9 +188,6 @@ def _on_sounds_mute(widget: Gtk.CheckMenuItem) -> None:
         app.settings.set('sounds_on', not widget.get_active())
 
     def _on_toggle_window(self, _widget: Gtk.MenuItem) -> None:
-        self._on_activate()
-
-    def _on_activate(self, *args: Any) -> None:
         if app.window.is_minimized():
             app.window.unminimize()
         elif app.window.is_withdrawn():
@@ -258,17 +255,22 @@ def _on_size_changed(self,
         self.update_state()
 
     def _on_popup_menu(self,
-                       _status_icon: Gtk.StatusIcon,
+                       status_icon: Gtk.StatusIcon,
                        button: int,
                        activate_time: int) -> None:
-        if button == 1:
-            self._on_activate()
-        elif button == 2:
-            self._on_activate()
+
+        if button in (1, 2):
+            self._on_activate(status_icon)
         elif button == 3:
-            self._build_menu(activate_time)
+            self._build_menu(button, activate_time)
+
+    def _on_activate(self, _status_icon: Gtk.StatusIcon) -> None:
+        if app.window.has_toplevel_focus():
+            app.window.hide()
+        else:
+            app.window.show()
 
-    def _build_menu(self, event_time: int) -> None:
+    def _build_menu(self, button: int, event_time: int) -> None:
         for menu in self._popup_menus:
             menu.destroy()
 
@@ -289,7 +291,7 @@ def _build_menu(self, event_time: int) -> None:
 
         self._ui.systray_context_menu.show_all()
         self._ui.systray_context_menu.popup(
-            None, None, None, None, 0, event_time)
+            None, None, None, None, button, event_time)
 
 
 class AppIndicator(GtkMenuBackend):



View it on GitLab: 
https://dev.gajim.org/gajim/gajim/-/commit/17fe52257359b0e616f03fefe092fe67b14e700e

-- 
View it on GitLab: 
https://dev.gajim.org/gajim/gajim/-/commit/17fe52257359b0e616f03fefe092fe67b14e700e
You're receiving this email because of your account on dev.gajim.org.


_______________________________________________
Commits mailing list
[email protected]
https://lists.gajim.org/cgi-bin/listinfo/commits

Reply via email to