File tree Expand file tree Collapse file tree 2 files changed +4
-4
lines changed
Expand file tree Collapse file tree 2 files changed +4
-4
lines changed Original file line number Diff line number Diff line change @@ -294,7 +294,7 @@ impl App {
294294 self . persistent_data . set_current_document ( id) ;
295295 }
296296 DesktopFrontendMessage :: PersistenceUpdateDocumentsList { ids } => {
297- self . persistent_data . set_document_order ( ids) ;
297+ self . persistent_data . force_document_order ( ids) ;
298298 }
299299 DesktopFrontendMessage :: PersistenceWritePreferences { preferences } => {
300300 preferences:: write ( preferences) ;
Original file line number Diff line number Diff line change @@ -67,8 +67,9 @@ impl PersistentData {
6767 self . flush ( ) ;
6868 }
6969
70- pub ( crate ) fn set_document_order ( & mut self , order : Vec < DocumentId > ) {
70+ pub ( crate ) fn force_document_order ( & mut self , order : Vec < DocumentId > ) {
7171 self . document_order = Some ( order) ;
72+ self . documents . force_order ( self . document_order . as_ref ( ) . unwrap ( ) ) ;
7273 self . flush ( ) ;
7374 }
7475
@@ -148,7 +149,7 @@ impl DocumentStore {
148149 } )
149150 }
150151
151- fn force_order ( & mut self , desired_order : & Vec < DocumentId > ) {
152+ fn force_order ( & mut self , desired_order : & [ DocumentId ] ) {
152153 let mut ordered_prefix_len = 0 ;
153154 for id in desired_order {
154155 if let Some ( offset) = self . 0 [ ordered_prefix_len..] . iter ( ) . position ( |meta| meta. id == * id) {
@@ -159,7 +160,6 @@ impl DocumentStore {
159160 ordered_prefix_len += 1 ;
160161 }
161162 }
162- self . 0 . truncate ( ordered_prefix_len) ;
163163 }
164164
165165 fn document_ids ( & self ) -> Vec < DocumentId > {
You can’t perform that action at this time.
0 commit comments