Welcome to mirror list, hosted at ThFree Co, Russian Federation.

dev.gajim.org/gajim/gajim.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPhilipp Hörist <philipp@hoerist.com>2023-06-06 16:04:39 +0300
committerPhilipp Hörist <philipp@hoerist.com>2023-06-06 16:04:39 +0300
commit3b6c82b9833a83a54c62d0942b8cce4de1cdc3e2 (patch)
tree1bdaed9a44810f0bd71b6d1eb113dd7369f91527
parent17a653624ba8b10c015229bd5c080950a56de9e7 (diff)
refactor: Use contact signals instead of event signals
-rw-r--r--gajim/gtk/chat_banner.py13
-rw-r--r--gajim/gtk/groupchat_details.py17
2 files changed, 12 insertions, 18 deletions
diff --git a/gajim/gtk/chat_banner.py b/gajim/gtk/chat_banner.py
index db719e3c3..16859270b 100644
--- a/gajim/gtk/chat_banner.py
+++ b/gajim/gtk/chat_banner.py
@@ -30,7 +30,6 @@ from gajim.common.const import XmppUriQuery
from gajim.common.events import AccountEnabled
from gajim.common.events import BookmarksReceived
from gajim.common.events import MessageReceived
-from gajim.common.events import MucDiscoUpdate
from gajim.common.ged import EventHelper
from gajim.common.helpers import generate_qr_code
from gajim.common.i18n import _
@@ -91,7 +90,6 @@ class ChatBanner(Gtk.Box, EventHelper):
if not self.has_events_registered():
self.register_events([
('message-received', ged.GUI2, self._on_message_received),
- ('muc-disco-update', ged.GUI2, self._on_muc_disco_update),
('bookmarks-received', ged.GUI2, self._on_bookmarks_received),
('account-enabled', ged.GUI2, self._on_account_changed),
('account-disabled', ged.GUI2, self._on_account_changed)
@@ -125,7 +123,8 @@ class ChatBanner(Gtk.Box, EventHelper):
self._contact.multi_connect({
'user-role-changed': self._on_user_role_changed,
'state-changed': self._on_muc_state_changed,
- 'room-voice-request': self._on_room_voice_request
+ 'room-voice-request': self._on_room_voice_request,
+ 'disco-info-update': self._on_disco_info_update,
})
elif isinstance(self._contact, GroupchatParticipant):
@@ -215,10 +214,10 @@ class ChatBanner(Gtk.Box, EventHelper):
self._update_name_label()
- def _on_muc_disco_update(self, event: MucDiscoUpdate) -> None:
- assert self._contact is not None
- if event.jid != self._contact.jid:
- return
+ def _on_disco_info_update(self,
+ _contact: GroupchatContact,
+ _signal_name: str
+ ) -> None:
self._update_name_label()
self._update_description_label()
diff --git a/gajim/gtk/groupchat_details.py b/gajim/gtk/groupchat_details.py
index 01a7e0589..0d04c2855 100644
--- a/gajim/gtk/groupchat_details.py
+++ b/gajim/gtk/groupchat_details.py
@@ -19,11 +19,9 @@ from gi.repository import GObject
from gi.repository import Gtk
from gajim.common import app
-from gajim.common import ged
from gajim.common import types
from gajim.common.const import AvatarSize
from gajim.common.const import SimpleClientState
-from gajim.common.events import MucDiscoUpdate
from gajim.common.i18n import _
from gajim.common.modules.contacts import GroupchatContact
@@ -60,6 +58,7 @@ class GroupchatDetails(Gtk.ApplicationWindow):
self._contact = contact
self._contact.connect('avatar-update', self._on_avatar_update)
+ self._contact.connect('disco-info-update', self._on_disco_info_update)
self._ui = get_builder('groupchat_details.ui')
self._ui.connect_signals(self)
@@ -91,9 +90,6 @@ class GroupchatDetails(Gtk.ApplicationWindow):
if page is not None:
self._switcher.set_row(page)
- app.ged.register_event_handler(
- 'muc-disco-update', ged.GUI1, self._on_muc_disco_update)
-
self.connect('key-press-event', self._on_key_press)
self.connect('destroy', self._on_destroy)
@@ -109,9 +105,11 @@ class GroupchatDetails(Gtk.ApplicationWindow):
self._ui.edit_name_button.set_tooltip_text(
_('Not connected') if not state.is_connected else _('Edit Name…'))
- def _on_muc_disco_update(self, event: MucDiscoUpdate) -> None:
- if event.jid != self._contact.jid:
- return
+ def _on_disco_info_update(self,
+ _contact: GroupchatContact,
+ _signal_name: str
+ ) -> None:
+
self._ui.name_entry.set_text(self._contact.name)
disco_info = self._contact.get_disco()
assert disco_info is not None
@@ -228,7 +226,4 @@ class GroupchatDetails(Gtk.ApplicationWindow):
self.destroy()
def _on_destroy(self, _widget: GroupchatDetails) -> None:
- app.ged.remove_event_handler('muc-disco-update',
- ged.GUI1,
- self._on_muc_disco_update)
app.check_finalize(self)