Bug fix and minor improvements

Bug fixes:
- Do not send typing notice and set room read
  markers when the account is invisible
- Fix typing on set_presence
- Allow users to unset status message by setting
  it to blank
- Escape html tags of status message on
  SubtitleLabel of MemberDelegate

Improvements:
- Display user ID and status message on a tooltip
  by hovering account or room member name
This commit is contained in:
vslg
2020-07-07 11:42:16 -03:00
committed by miruka
parent a1f38fe8d8
commit edc8e04ce7
4 changed files with 48 additions and 8 deletions

View File

@@ -317,7 +317,8 @@ class Backend:
"""
async def update(client: MatrixClient) -> None:
room = self.models[client.user_id, "rooms"].get(room_id)
room = self.models[client.user_id, "rooms"].get(room_id)
account = self.models["accounts"][client.user_id]
if room:
room.set_fields(
@@ -327,7 +328,10 @@ class Backend:
local_highlights = False,
)
await client.update_account_unread_counts()
await client.update_receipt_marker(room_id, event_id)
# Only update server markers if the account is not invisible
if account.presence != Presence.State.invisible:
await client.update_receipt_marker(room_id, event_id)
await asyncio.gather(*[update(c) for c in self.clients.values()])