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

Commits:
c1cc8c57 by Philipp Hörist at 2018-10-24T22:06:45Z
Fix pylint error

- - - - -
d7ea69f3 by Philipp Hörist at 2018-10-24T22:12:28Z
Refactor StatusIcon

- Move to gtk folder
- Rename some handlers
- Use get_builder

- - - - -


3 changed files:

- gajim/gtk/profile.py
- gajim/statusicon.py → gajim/gtk/statusicon.py
- gajim/gui_interface.py


Changes:

=====================================
gajim/gtk/profile.py
=====================================
@@ -161,7 +161,7 @@ class ProfileWindow(Gtk.ApplicationWindow):
             if self.avatar_sha is None:
                 return
             show_save_as_menu(self.avatar_sha, nick)
-            
+
         elif event.button == 1:  # left click
             self.on_set_avatar_button_clicked(widget)
 


=====================================
gajim/statusicon.py → gajim/gtk/statusicon.py
=====================================
@@ -22,7 +22,6 @@
 import os
 
 from gi.repository import Gtk
-from gi.repository import Gdk
 
 from gajim import dialogs
 from gajim import tooltips
@@ -30,6 +29,7 @@ from gajim import gtkgui_helpers
 from gajim.common import app
 from gajim.common import helpers
 from gajim.common.i18n import _
+from gajim.gtk.util import get_builder
 from gajim.gtk.single_message import SingleMessageWindow
 
 
@@ -45,9 +45,9 @@ class StatusIcon:
         # click somewhere else does not popdown menu. workaround this.
         self.added_hide_menuitem = False
         self.status = 'offline'
-        self.xml = gtkgui_helpers.get_gtk_builder('systray_context_menu.ui')
-        self.systray_context_menu = self.xml.get_object('systray_context_menu')
-        self.xml.connect_signals(self)
+        self._ui = get_builder('systray_context_menu.ui')
+        self.systray_context_menu = self._ui.systray_context_menu
+        self._ui.connect_signals(self)
         self.popup_menus = []
         self.status_icon = None
         self.tooltip = tooltips.NotificationAreaTooltip()
@@ -83,21 +83,15 @@ class StatusIcon:
         if not self.status_icon:
             self.status_icon = Gtk.StatusIcon()
             self.status_icon.set_property('has-tooltip', True)
-            self.status_icon.connect('activate',
-                self.on_status_icon_left_clicked)
-            self.status_icon.connect('popup-menu',
-                self.on_status_icon_right_clicked)
-            self.status_icon.connect('query-tooltip',
-                self.on_status_icon_query_tooltip)
+            self.status_icon.connect('activate', self._on_activate)
+            self.status_icon.connect('popup-menu', self._on_popup_menu)
+            self.status_icon.connect('query-tooltip', self._on_query_tooltip)
             self.status_icon.connect('size-changed', self.set_img)
 
         self.set_img()
         self.subscribe_events()
 
-    def on_status_icon_right_clicked(self, widget, event_button, event_time):
-        self.make_menu(event_button, event_time)
-
-    def on_status_icon_query_tooltip(self, widget, x, y, keyboard_mode, 
tooltip):
+    def _on_query_tooltip(self, _status_icon, _x, _y, _keyboard_mode, tooltip):
         tooltip.set_custom(self.tooltip.get_tooltip())
         return True
 
@@ -105,7 +99,15 @@ class StatusIcon:
         self.status_icon.set_visible(False)
         self.unsubscribe_events()
 
-    def on_status_icon_left_clicked(self, widget):
+    def _on_popup_menu(self, _status_icon, button, activate_time):
+        if button == 1: # Left click
+            self.on_left_click()
+        elif button == 2: # middle click
+            self.on_middle_click()
+        elif button == 3: # right click
+            self.make_menu(button, activate_time)
+
+    def _on_activate(self, _status_icon):
         self.on_left_click()
 
     def on_status_icon_size_changed(self, statusicon, size):
@@ -173,13 +175,12 @@ class StatusIcon:
         for m in self.popup_menus:
             m.destroy()
 
-        chat_with_menuitem = self.xml.get_object('chat_with_menuitem')
-        single_message_menuitem = self.xml.get_object(
-                'single_message_menuitem')
-        status_menuitem = self.xml.get_object('status_menu')
-        join_gc_menuitem = self.xml.get_object('join_gc_menuitem')
-        sounds_mute_menuitem = self.xml.get_object('sounds_mute_menuitem')
-        show_roster_menuitem = self.xml.get_object('show_roster_menuitem')
+        chat_with_menuitem = self._ui.chat_with_menuitem
+        single_message_menuitem = self._ui.single_message_menuitem
+        status_menuitem = self._ui.status_menu
+        join_gc_menuitem = self._ui.join_gc_menuitem
+        sounds_mute_menuitem = self._ui.sounds_mute_menuitem
+        show_roster_menuitem = self._ui.show_roster_menuitem
 
         if self.single_message_handler_id:
             single_message_menuitem.handler_disconnect(
@@ -412,17 +413,6 @@ class StatusIcon:
         else:
             win.present()
 
-    def on_clicked(self, widget, event):
-        self.on_tray_leave_notify_event(widget, None)
-        if event.type_ != Gdk.EventType.BUTTON_PRESS:
-            return
-        if event.button == 1: # Left click
-            self.on_left_click()
-        elif event.button == 2: # middle click
-            self.on_middle_click()
-        elif event.button == 3: # right click
-            self.make_menu(event.button, event.time)
-
     def on_show_menuitem_activate(self, widget, show):
         # we all add some fake (we cannot select those nor have them as show)
         # but this helps to align with roster's status_combobox index positions


=====================================
gajim/gui_interface.py
=====================================
@@ -2737,7 +2737,7 @@ class Interface:
 
         self.systray_enabled = False
 
-        from gajim import statusicon
+        from gajim.gtk import statusicon
         self.systray = statusicon.StatusIcon()
 
         pixs = []



View it on GitLab: 
https://dev.gajim.org/gajim/gajim/compare/c08f752d8981ae06155fcb3dac3938fae906c13d...d7ea69f36c1937f1b443151e56c239dabf8fce7e

-- 
View it on GitLab: 
https://dev.gajim.org/gajim/gajim/compare/c08f752d8981ae06155fcb3dac3938fae906c13d...d7ea69f36c1937f1b443151e56c239dabf8fce7e
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