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