Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • gajim/gajim
  • lovetox/gajim
  • ag/gajim
  • linkmauve/gajim
  • asterix/gajim
  • andre/gajim
  • mimi89999/gajim
  • bronko/gajim
  • wurstsalat/gajim
  • baitisj/gajim
  • Dicson/gajim
  • PolynomialDivision/gajim
  • troom/gajim
  • sophie-h/gajim
  • marmistrz/gajim
  • mrDoctorWho/gajim
  • orhideous/gajim
  • jjrh/gajim
  • streaps/gajim
  • jhuffine/gajim
  • maltel/gajim
  • Dominion/gajim
  • norstbox/gajim
  • synchrone/gajim
  • mick3247652/gajim
  • Yuki/gajim
  • l-n-s/gajim
  • ehuelsmann/gajim
  • hrxi/gajim
  • SaltyBones/gajim
  • rlgh/gajim
  • genofire/gajim
  • weblate/gajim
  • PapaTutuWawa/gajim
  • eta/gajim
  • jelmer/gajim
  • Ge0rG/gajim
  • TSRh/gajim
  • tolosaeduard/gajim
  • pitchum/gajim
  • mexicarne/gajim
  • prmcgs/gajim
  • mehw/gajim
  • ecxod/gajim
  • wannestas/gajim
  • XutaxKamay/gajim
  • emil/gajim-fork
  • gs/gajim
  • jurajlutter/gajim
  • Sheldon/gajim-cme
  • dexgs/gajim
  • bodqhrohro/gajim
  • Ermine/gajim
  • mesonium/gajim
  • mjk/gajim
  • nicoco/gajim
  • Polarian/gajim
  • izaya/gajim
  • kurion/gajim
  • npmania/gajim
  • ebertus/gajim
  • intelfx/gajim
  • musipusi/gajim
  • wusspuss/gajim
  • slicht/gajim
  • toms/gajim
  • singpolyma/gajim
  • Antiz/gajim
  • hendursaga/gajim
  • cve-1312/gajim
  • smemes2/gajim
  • amlor/gajim
72 results
Show changes
Commits on Source (2)
......@@ -149,7 +149,6 @@ class Message(BaseModule):
self._log.info('Duplicated message received: %s', origin_id)
return
occupant = None
if (m_type == MessageType.GROUPCHAT and
direction == ChatDirection.OUTGOING and
origin_id is not None):
......@@ -266,19 +265,18 @@ class Message(BaseModule):
timestamp = properties.mam.timestamp
return dt.datetime.fromtimestamp(timestamp, tz=dt.timezone.utc)
def _get_real_jid(self, properties: MessageProperties) -> JID | None:
def _get_real_jid(
self,
properties: MessageProperties,
contact: GroupchatParticipant,
) -> JID | None:
if properties.is_mam_message:
if properties.muc_user is None:
return None
return properties.muc_user.jid
if properties.jid.is_bare:
return None
occupant_contact = self._client.get_module('Contacts').get_contact(
properties.jid, groupchat=True)
assert isinstance(occupant_contact, GroupchatParticipant)
real_jid = occupant_contact.real_jid
real_jid = contact.real_jid
if real_jid is None:
return None
return real_jid.new_as_bare()
......@@ -294,10 +292,17 @@ class Message(BaseModule):
if not properties.type.is_groupchat:
return None
if properties.jid.is_bare:
return None
contact = self._client.get_module('Contacts').get_contact(
properties.jid, groupchat=True)
assert isinstance(contact, GroupchatParticipant)
if direction == ChatDirection.OUTGOING:
real_jid = self._client.get_own_jid().new_as_bare()
else:
real_jid = self._get_real_jid(properties)
real_jid = self._get_real_jid(properties, contact)
occupant_id = self._get_occupant_id(properties) or real_jid
if occupant_id is None:
......@@ -316,9 +321,6 @@ class Message(BaseModule):
)
def _get_occupant_id(self, properties: MessageProperties) -> str | None:
if not properties.type.is_groupchat:
return None
if properties.occupant_id is None:
return None
......
......@@ -9,7 +9,6 @@ from __future__ import annotations
from typing import Any
import datetime as dt
import logging
import time
from collections import defaultdict
......@@ -47,8 +46,6 @@ from gajim.common.modules.base import BaseModule
from gajim.common.modules.bits_of_binary import store_bob_data
from gajim.common.modules.contacts import GroupchatContact
from gajim.common.modules.contacts import GroupchatParticipant
from gajim.common.storage.archive import models as mod
from gajim.common.storage.base import VALUE_MISSING
from gajim.common.structs import MUCData
from gajim.common.structs import MUCPresenceData
from gajim.common.util.datetime import utc_now
......@@ -562,8 +559,6 @@ class MUC(BaseModule):
occupant = self._get_contact(properties.jid, groupchat=True)
room = self._get_contact(properties.jid.bare)
self._store_occupant_info(room, properties)
timestamp = utc_now()
if properties.is_muc_destroyed:
......@@ -677,29 +672,6 @@ class MUC(BaseModule):
self._process_occupant_presence_change(properties, presence, occupant)
def _store_occupant_info(
self,
room_contact: GroupchatContact,
properties: PresenceProperties
) -> None:
assert properties.muc_user is not None
real_jid = properties.muc_user.jid
occupant_id = properties.occupant_id or real_jid
timestamp = dt.datetime.fromtimestamp(
properties.timestamp, dt.timezone.utc)
occupant_data = mod.Occupant(
account_=self._account,
remote_jid_=room_contact.jid,
id=str(occupant_id),
real_remote_jid_=real_jid or VALUE_MISSING,
nickname=properties.jid.resource or VALUE_MISSING,
updated_at=timestamp,
)
app.storage.archive.upsert_row(occupant_data)
def _process_occupant_presence_change(
self,
properties: PresenceProperties,
......
......@@ -104,16 +104,17 @@ function install_deps {
PIP_REQUIREMENTS="\
git+https://dev.gajim.org/gajim/python-nbxmpp.git
git+https://dev.gajim.org/gajim/omemo-dr.git
python-gnupg
qrcode
css_parser
sentry-sdk
emoji
"
build_pip install precis-i18n
SETUPTOOLS_USE_DISTUTILS=stdlib build_pip install git+https://dev.gajim.org/gajim/omemo-dr.git
build_pip install $(echo "$PIP_REQUIREMENTS" | tr ["\\n"] [" "])
# Workaround for https://dev.gajim.org/gajim/gajim/-/issues/11490
# Env variable described in https://www.msys2.org/docs/python/
SETUPTOOLS_USE_DISTUTILS=stdlib build_pip install precis-i18n
SETUPTOOLS_USE_DISTUTILS=stdlib build_pip install $(echo "$PIP_REQUIREMENTS" | tr ["\\n"] [" "])
# remove the large png icons, they should be used rarely and svg works fine
rm -Rf "${MINGW_ROOT}/share/icons/Adwaita/512x512"
......
......@@ -45,6 +45,7 @@ function main {
PIP_REQUIREMENTS="\
git+https://dev.gajim.org/gajim/python-nbxmpp.git
git+https://dev.gajim.org/gajim/omemo-dr.git
pygobject-stubs --no-cache-dir --config-settings=config=Gtk3,Gdk3,GtkSource4
python-gnupg
qrcode
......@@ -52,10 +53,10 @@ css_parser
sentry-sdk
emoji
"
pip3 install --upgrade precis-i18n
pip3 install --upgrade $(echo "$PIP_REQUIREMENTS" | tr ["\\n"] [" "])
# Workaround for https://dev.gajim.org/gajim/gajim/-/issues/11490
SETUPTOOLS_USE_DISTUTILS=stdlib pip3 install --upgrade git+https://dev.gajim.org/gajim/omemo-dr.git
# Env variable described in https://www.msys2.org/docs/python/
SETUPTOOLS_USE_DISTUTILS=stdlib pip3 install --upgrade precis-i18n
SETUPTOOLS_USE_DISTUTILS=stdlib pip3 install --upgrade $(echo "$PIP_REQUIREMENTS" | tr ["\\n"] [" "])
}
......