Use mxids instead of localparts as default displaynames and fix name add/remove message. Fixes #228
This commit is contained in:
@@ -385,9 +385,9 @@ class MatrixHandler:
|
|||||||
prev_membership = prev_content.get("membership", "leave") # type: str
|
prev_membership = prev_content.get("membership", "leave") # type: str
|
||||||
if membership == prev_membership:
|
if membership == prev_membership:
|
||||||
match = re.compile("@(.+):(.+)").match(state_key) # type: Match
|
match = re.compile("@(.+):(.+)").match(state_key) # type: Match
|
||||||
localpart = match.group(1) # type: str
|
mxid = match.group(0) # type: str
|
||||||
displayname = content.get("displayname", localpart) # type: str
|
displayname = content.get("displayname", None) or mxid # type: str
|
||||||
prev_displayname = prev_content.get("displayname", localpart) # type: str
|
prev_displayname = prev_content.get("displayname", None) or mxid # type: str
|
||||||
if displayname != prev_displayname:
|
if displayname != prev_displayname:
|
||||||
await self.handle_name_change(room_id, state_key, displayname,
|
await self.handle_name_change(room_id, state_key, displayname,
|
||||||
prev_displayname, event_id)
|
prev_displayname, event_id)
|
||||||
|
|||||||
@@ -758,7 +758,7 @@ class Portal:
|
|||||||
|
|
||||||
async def get_displayname(self, user: 'u.User') -> str:
|
async def get_displayname(self, user: 'u.User') -> str:
|
||||||
return (await self.main_intent.get_displayname(self.mxid, user.mxid)
|
return (await self.main_intent.get_displayname(self.mxid, user.mxid)
|
||||||
or user.mxid_localpart)
|
or user.mxid)
|
||||||
|
|
||||||
def set_typing(self, user: 'u.User', typing: bool = True,
|
def set_typing(self, user: 'u.User', typing: bool = True,
|
||||||
action: type = SendMessageTypingAction) -> Awaitable[bool]:
|
action: type = SendMessageTypingAction) -> Awaitable[bool]:
|
||||||
|
|||||||
Reference in New Issue
Block a user