Philipp Hörist pushed to branch master at gajim / gajim
Commits:
4b9450ed by lovetox at 2022-03-13T08:51:44+01:00
Contacts: Refactor roster attribute properties
- - - - -
b3c0e57b by lovetox at 2022-03-13T08:52:04+01:00
Receipts: Simplify answer check
- - - - -
2 changed files:
- gajim/common/modules/contacts.py
- gajim/common/modules/receipts.py
Changes:
=====================================
gajim/common/modules/contacts.py
=====================================
@@ -308,10 +308,10 @@ def force_chatstate_update(self) -> None:
@property
def name(self) -> str:
- roster_name = self._get_roster_attr('name')
- if roster_name:
- assert isinstance(roster_name, str)
- return roster_name
+ item = self._module('Roster').get_item(self._jid)
+ if item is not None and item.name:
+ return item.name
+
nickname = app.storage.cache.get_contact(self._jid, 'nickname')
if nickname:
return nickname
@@ -390,12 +390,6 @@ def update_avatar(self, sha: str) -> None:
app.app.avatar_storage.invalidate_cache(self._jid)
self.notify('avatar-update')
- def _get_roster_attr(self, attr: str) -> Union[list[str], str, None]:
- item = self._module('Roster').get_item(self._jid)
- if item is None:
- return None
- return getattr(item, attr)
-
@property
def is_in_roster(self) -> bool:
item = self._module('Roster').get_item(self._jid)
@@ -409,25 +403,25 @@ def is_gateway(self) -> bool:
return disco_info.is_gateway
@property
- def ask(self) -> str:
- ask = self._get_roster_attr('ask')
- assert isinstance(ask, str)
- return ask
+ def ask(self) -> Optional[str]:
+ item = self._module('Roster').get_item(self._jid)
+ if item is None:
+ return None
+ return item.ask
@property
- def subscription(self) -> str:
- subscription = self._get_roster_attr('subscription')
- assert isinstance(subscription, str)
- return subscription
+ def subscription(self) -> Optional[str]:
+ item = self._module('Roster').get_item(self._jid)
+ if item is None:
+ return None
+ return item.subscription
@property
def groups(self) -> set[str]:
- groups = self._get_roster_attr('groups')
- if groups is None:
+ item = self._module('Roster').get_item(self._jid)
+ if item is None:
return set()
-
- assert isinstance(groups, set)
- return groups
+ return item.groups
@property
def is_subscribed(self) -> bool:
=====================================
gajim/common/modules/receipts.py
=====================================
@@ -99,6 +99,4 @@ def _should_answer(self, properties):
return True
contact = self._get_contact(properties.jid.bare)
- if contact.subscription not in ('to', 'none'):
- return True
- return False
+ return contact.is_subscribed
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/compare/11ecfd5305c6ca5c8f2d438d937595266eb6a57d...b3c0e57b0435322ff33bf00d96ff447a93a2cc80
--
View it on GitLab:
https://dev.gajim.org/gajim/gajim/-/compare/11ecfd5305c6ca5c8f2d438d937595266eb6a57d...b3c0e57b0435322ff33bf00d96ff447a93a2cc80
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