@@ -35,6 +35,8 @@ import {
3535 Relations ,
3636 RoomPinnedEventsEventContent ,
3737 MatrixEventEvent ,
38+ RoomEvent ,
39+ IRoomTimelineData ,
3840} from '$types/matrix-sdk' ;
3941import classNames from 'classnames' ;
4042import { useAtomValue , useSetAtom } from 'jotai' ;
@@ -383,10 +385,20 @@ function MessageInternal(
383385 const [ contentVersion , setContentVersion ] = useState ( 0 ) ;
384386
385387 useEffect ( ( ) => {
386- const onUpdate = ( ) => setContentVersion ( ( v ) => v + 1 ) ;
388+ const triggerTimelineRegroup = ( ) => {
389+ room . emit ( RoomEvent . Timeline , mEvent , room , false , false , {
390+ liveEvent : true ,
391+ } as IRoomTimelineData ) ;
392+ } ;
393+
394+ const onUpdate = ( ) => {
395+ setContentVersion ( ( v ) => v + 1 ) ;
396+ triggerTimelineRegroup ( ) ;
397+ } ;
387398
388399 if ( mEvent . getClearContent ( ) ) {
389400 setContentVersion ( ( v ) => ( v === 0 ? 1 : v ) ) ;
401+ triggerTimelineRegroup ( ) ;
390402 }
391403
392404 mEvent . on ( MatrixEventEvent . Decrypted , onUpdate ) ;
@@ -395,7 +407,7 @@ function MessageInternal(
395407 mEvent . off ( MatrixEventEvent . Decrypted , onUpdate ) ;
396408 mEvent . off ( MatrixEventEvent . Replaced , onUpdate ) ;
397409 } ;
398- } , [ mEvent ] ) ;
410+ } , [ mEvent , room ] ) ;
399411
400412 /**
401413 * We read the per-message profile from the event content here.
0 commit comments