You've already forked matrix-js-sdk
mirror of
https://github.com/matrix-org/matrix-js-sdk.git
synced 2025-11-26 17:03:12 +03:00
PSFD-455: Try to set a sender on search result events if possible (#2004)
This is to ensure that search results have aesthetic information such as display name and avatar. Though the membership event won't be in context for when the event was sent, it'll at least be something better than a bare user ID.
This commit is contained in:
@@ -5422,6 +5422,14 @@ export class MatrixClient extends EventEmitter {
|
|||||||
const resultsLength = roomEvents.results ? roomEvents.results.length : 0;
|
const resultsLength = roomEvents.results ? roomEvents.results.length : 0;
|
||||||
for (let i = 0; i < resultsLength; i++) {
|
for (let i = 0; i < resultsLength; i++) {
|
||||||
const sr = SearchResult.fromJson(roomEvents.results[i], this.getEventMapper());
|
const sr = SearchResult.fromJson(roomEvents.results[i], this.getEventMapper());
|
||||||
|
const room = this.getRoom(sr.context.getEvent().getRoomId());
|
||||||
|
if (room) {
|
||||||
|
// Copy over a known event sender if we can
|
||||||
|
for (const ev of sr.context.getTimeline()) {
|
||||||
|
const sender = room.getMember(ev.getSender());
|
||||||
|
if (!ev.sender && sender) ev.sender = sender;
|
||||||
|
}
|
||||||
|
}
|
||||||
searchResults.results.push(sr);
|
searchResults.results.push(sr);
|
||||||
}
|
}
|
||||||
return searchResults;
|
return searchResults;
|
||||||
|
|||||||
Reference in New Issue
Block a user