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>2022-10-08 17:32:13 +0300
committerPhilipp Hörist <philipp@hoerist.com>2022-10-08 17:32:13 +0300
commit742352807960c05cc6d30dea616ef7b8ccd11390 (patch)
tree072ec6c453a530993f3c728fa646c36693378ca0
parent9abfda2a5eb1367e55c0ae6cb68e7b0c36e432ce (diff)
fix: Control: Load events before messages
Fixes #11129
-rw-r--r--gajim/gtk/control.py38
1 files changed, 17 insertions, 21 deletions
diff --git a/gajim/gtk/control.py b/gajim/gtk/control.py
index 56193087b..651962578 100644
--- a/gajim/gtk/control.py
+++ b/gajim/gtk/control.py
@@ -581,27 +581,6 @@ class ChatControl(EventHelper):
else:
timestamp = row.db_timestamp
- messages = app.storage.archive.get_conversation_before_after(
- self.contact.account,
- self.contact.jid,
- before,
- timestamp,
- n_lines)
-
- if not messages:
- self._scrolled_view.set_history_complete(before, True)
- self._scrolled_view.block_signals(False)
- return
-
- self.add_messages(messages)
-
- if len(messages) < n_lines:
- self._scrolled_view.set_history_complete(before, True)
-
- # if self._scrolled_view.get_autoscroll():
- # if self._scrolled_view.reduce_message_count(before):
- # self._scrolled_view.set_history_complete(before, False)
-
assert self._contact is not None
for event in app.storage.events.load(self._contact, before, timestamp):
if isinstance(event, events.MUCUserJoined):
@@ -639,6 +618,23 @@ class ChatControl(EventHelper):
else:
raise ValueError('Unknown event: %s' % event)
+ messages = app.storage.archive.get_conversation_before_after(
+ self.contact.account,
+ self.contact.jid,
+ before,
+ timestamp,
+ n_lines)
+
+ if not messages:
+ self._scrolled_view.set_history_complete(before, True)
+ self._scrolled_view.block_signals(False)
+ return
+
+ self.add_messages(messages)
+
+ if len(messages) < n_lines:
+ self._scrolled_view.set_history_complete(before, True)
+
self._scrolled_view.block_signals(False)
def add_messages(self, messages: list[ConversationRow]):