Fix black chat pane and restore jumbo emoji rendering.

Column flex on keep-alive room hosts so the timeline fills the pane again, and route unicode jumbo through the plain emoji path with dedicated HTML parser options for custom emoticons.
This commit is contained in:
2026-07-22 18:21:08 +10:00
parent 30edd62d96
commit 57828dd33a
12 changed files with 105 additions and 19 deletions

View File

@@ -212,6 +212,17 @@ export function ThreadView({ room, threadRootId }: ThreadViewProps) {
}),
[mx, room, linkifyOpts, spoilerClickHandler, mentionClickHandler, useAuthentication]
);
const jumboHtmlReactParserOptions = useMemo<HTMLReactParserOptions>(
() =>
getReactCustomHtmlParser(mx, room.roomId, {
linkifyOpts,
useAuthentication,
handleSpoilerClick: spoilerClickHandler,
handleMentionClick: mentionClickHandler,
jumbo: true,
}),
[mx, room, linkifyOpts, spoilerClickHandler, mentionClickHandler, useAuthentication]
);
const thread = room.getThread(threadRootId);
const roomTimelineSet = room.getUnfilteredTimelineSet();
@@ -634,6 +645,7 @@ export function ThreadView({ room, threadRootId }: ThreadViewProps) {
mediaAutoLoad={mediaAutoLoad}
urlPreview={showUrlPreview}
htmlReactParserOptions={htmlReactParserOptions}
jumboHtmlReactParserOptions={jumboHtmlReactParserOptions}
linkifyOpts={linkifyOpts}
outlineAttachment={messageLayout === MessageLayout.Bubble}
disabledEmbedPatterns={combinedEmbedFilters}
@@ -650,6 +662,7 @@ export function ThreadView({ room, threadRootId }: ThreadViewProps) {
mediaAutoLoad={mediaAutoLoad}
urlPreview={showUrlPreview}
htmlReactParserOptions={htmlReactParserOptions}
jumboHtmlReactParserOptions={jumboHtmlReactParserOptions}
linkifyOpts={linkifyOpts}
outlineAttachment={messageLayout === MessageLayout.Bubble}
disabledEmbedPatterns={combinedEmbedFilters}