File tree Expand file tree Collapse file tree 1 file changed +5
-13
lines changed
labs/multiverse/src/widgets/room_view Expand file tree Collapse file tree 1 file changed +5
-13
lines changed Original file line number Diff line number Diff line change @@ -12,7 +12,6 @@ use matrix_sdk::{
1212 } ,
1313 RoomState ,
1414} ;
15- use matrix_sdk_ui:: timeline:: TimelineBuilder ;
1615use ratatui:: { prelude:: * , widgets:: * } ;
1716use tokio:: { spawn, task:: JoinHandle } ;
1817
@@ -320,21 +319,14 @@ impl RoomView {
320319
321320 /// Mark the currently selected room as read.
322321 pub async fn mark_as_read ( & mut self ) {
323- let selected = self . selected_room . as_deref ( ) ;
324-
325- let Some ( room) = selected. and_then ( |room_id| self . ui_rooms . lock ( ) . get ( room_id) . cloned ( ) )
326- else {
327- self . status_handle . set_message ( "missing room or nothing to show" . to_owned ( ) ) ;
328- return ;
329- } ;
330-
331- // Mark as read!
332- let Ok ( timeline) = TimelineBuilder :: new ( & room) . build ( ) . await else {
333- self . status_handle . set_message ( "failed creating timeline" . to_owned ( ) ) ;
322+ let Some ( sdk_timeline) = self . selected_room . as_deref ( ) . and_then ( |room_id| {
323+ self . timelines . lock ( ) . get ( room_id) . map ( |timeline| timeline. timeline . clone ( ) )
324+ } ) else {
325+ self . status_handle . set_message ( "missing timeline for room" . to_owned ( ) ) ;
334326 return ;
335327 } ;
336328
337- match timeline . mark_as_read ( ReceiptType :: Read ) . await {
329+ match sdk_timeline . mark_as_read ( ReceiptType :: Read ) . await {
338330 Ok ( did) => {
339331 self . status_handle . set_message ( format ! (
340332 "did {}send a read receipt!" ,
You can’t perform that action at this time.
0 commit comments