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-12-15 22:31:08 +0300
committerPhilipp Hörist <philipp@hoerist.com>2023-12-15 22:31:08 +0300
commit6c69081dd4b722c87b8a76956b61340dc26304ff (patch)
treead90ba4a5a50c346d6dacb02a1d06543434a6147
parent21606943cc824d3503cbb547c30b22bae68f135f (diff)
fix: OMEMO: Process events only once per account
-rw-r--r--gajim/common/modules/omemo.py4
1 files changed, 4 insertions, 0 deletions
diff --git a/gajim/common/modules/omemo.py b/gajim/common/modules/omemo.py
index 44d0b2ff5..84e6d1ed6 100644
--- a/gajim/common/modules/omemo.py
+++ b/gajim/common/modules/omemo.py
@@ -66,6 +66,7 @@ from gajim.common.events import EncryptionInfo
from gajim.common.events import MucAdded
from gajim.common.events import MucDiscoUpdate
from gajim.common.events import SignedIn
+from gajim.common.helpers import event_filter
from gajim.common.i18n import _
from gajim.common.modules.base import BaseModule
from gajim.common.modules.contacts import GroupchatContact
@@ -150,14 +151,17 @@ class OMEMO(BaseModule):
self._omemo_groupchats: set[str] = set()
self._muc_temp_store: dict[bytes, str] = {}
+ @event_filter(['account'])
def _on_signed_in(self, _event: SignedIn) -> None:
self._log.info('Publish our bundle after sign in')
self.set_bundle()
self.request_devicelist()
+ @event_filter(['account'])
def _on_muc_disco_update(self, event: MucDiscoUpdate) -> None:
self._check_if_omemo_capable(str(event.jid))
+ @event_filter(['account'])
def _on_muc_added(self, event: MucAdded) -> None:
client = app.get_client(event.account)
contact = client.get_module('Contacts').get_contact(event.jid)