Merge pull request #1879 from famedly/krille/better-room-avatar-name-for-invites
refactor: Better avatar and names for invites
This commit is contained in:
commit
2b0fbd2268
|
|
@ -263,11 +263,11 @@ class Room {
|
||||||
if (membership == Membership.invite) {
|
if (membership == Membership.invite) {
|
||||||
final ownMember = unsafeGetUserFromMemoryOrFallback(client.userID!);
|
final ownMember = unsafeGetUserFromMemoryOrFallback(client.userID!);
|
||||||
|
|
||||||
unsafeGetUserFromMemoryOrFallback(ownMember.senderId)
|
|
||||||
.calcDisplayname(i18n: i18n);
|
|
||||||
if (ownMember.senderId != ownMember.stateKey) {
|
if (ownMember.senderId != ownMember.stateKey) {
|
||||||
return unsafeGetUserFromMemoryOrFallback(ownMember.senderId)
|
return i18n.invitedBy(
|
||||||
.calcDisplayname(i18n: i18n);
|
unsafeGetUserFromMemoryOrFallback(ownMember.senderId)
|
||||||
|
.calcDisplayname(i18n: i18n),
|
||||||
|
);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (membership == Membership.leave) {
|
if (membership == Membership.leave) {
|
||||||
|
|
@ -291,25 +291,19 @@ class Room {
|
||||||
/// that you have the room members, call and await `Room.loadHeroUsers()`
|
/// that you have the room members, call and await `Room.loadHeroUsers()`
|
||||||
/// before.
|
/// before.
|
||||||
Uri? get avatar {
|
Uri? get avatar {
|
||||||
|
// Check content of `m.room.avatar`
|
||||||
final avatarUrl =
|
final avatarUrl =
|
||||||
getState(EventTypes.RoomAvatar)?.content.tryGet<String>('url');
|
getState(EventTypes.RoomAvatar)?.content.tryGet<String>('url');
|
||||||
if (avatarUrl != null) {
|
if (avatarUrl != null) {
|
||||||
return Uri.tryParse(avatarUrl);
|
return Uri.tryParse(avatarUrl);
|
||||||
}
|
}
|
||||||
|
|
||||||
final heroes = summary.mHeroes;
|
// Room has no avatar and is not a direct chat
|
||||||
if (heroes != null && heroes.length == 1) {
|
final directChatMatrixID = this.directChatMatrixID;
|
||||||
final hero = getState(EventTypes.RoomMember, heroes.first);
|
if (directChatMatrixID != null) {
|
||||||
if (hero != null) {
|
return unsafeGetUserFromMemoryOrFallback(directChatMatrixID).avatarUrl;
|
||||||
return hero.asUser(this).avatarUrl;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (isDirectChat) {
|
|
||||||
final user = directChatMatrixID;
|
|
||||||
if (user != null) {
|
|
||||||
return unsafeGetUserFromMemoryOrFallback(user).avatarUrl;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -248,6 +248,9 @@ class MatrixDefaultLocalizations extends MatrixLocalizations {
|
||||||
String youInvitedBy(String senderName) =>
|
String youInvitedBy(String senderName) =>
|
||||||
'You have been invited by $senderName';
|
'You have been invited by $senderName';
|
||||||
|
|
||||||
|
@override
|
||||||
|
String invitedBy(String senderName) => 'Invited by $senderName';
|
||||||
|
|
||||||
@override
|
@override
|
||||||
String youInvitedUser(String targetName) => 'You invited $targetName';
|
String youInvitedUser(String targetName) => 'You invited $targetName';
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -62,6 +62,8 @@ abstract class MatrixLocalizations {
|
||||||
|
|
||||||
String youInvitedBy(String senderName);
|
String youInvitedBy(String senderName);
|
||||||
|
|
||||||
|
String invitedBy(String senderName);
|
||||||
|
|
||||||
String youInvitedUser(String targetName);
|
String youInvitedUser(String targetName);
|
||||||
|
|
||||||
String youUnbannedUser(String targetName);
|
String youUnbannedUser(String targetName);
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue