File tree Expand file tree Collapse file tree 1 file changed +11
-7
lines changed
src/Files.App/UserControls/Widgets Expand file tree Collapse file tree 1 file changed +11
-7
lines changed Original file line number Diff line number Diff line change @@ -108,16 +108,20 @@ private async Task UpdateRecentsList(NotifyCollectionChangedEventArgs e)
108
108
default :
109
109
{
110
110
var recentFiles = App . RecentItemsManager . RecentFiles ; // already sorted, add all in order
111
- foreach ( RecentItem elem in recentItemsCollection . ToList ( ) )
111
+ int idx = 0 ;
112
+ for ( ; idx < recentFiles . Count ; idx ++ )
112
113
{
113
- if ( ! recentFiles . Any ( x => x . Equals ( elem ) ) )
114
- {
115
- recentItemsCollection . Remove ( elem ) ;
116
- }
114
+ if ( idx >= recentItemsCollection . Count || ! recentFiles [ idx ] . Equals ( recentItemsCollection [ idx ] ) )
115
+ await AddItemToRecentListAsync ( recentFiles [ idx ] , idx ) ;
116
+ else
117
+ break ;
117
118
}
118
- for ( int i = 0 ; i < recentFiles . Count ; i ++ )
119
+ while ( idx < recentItemsCollection . Count )
119
120
{
120
- await AddItemToRecentListAsync ( recentFiles [ i ] , i ) ;
121
+ if ( idx >= recentFiles . Count || ! recentFiles [ idx ] . Equals ( recentItemsCollection [ idx ] ) )
122
+ recentItemsCollection . RemoveAt ( idx ) ;
123
+ else
124
+ idx ++ ;
121
125
}
122
126
break ;
123
127
}
You can’t perform that action at this time.
0 commit comments