Skip to content

Commit ea73284

Browse files
authored
Fix: Fixed issue where existing tabs were duplicated when opening a folder from the outside of Files (#15146)
1 parent c6ac35f commit ea73284

File tree

1 file changed

+8
-12
lines changed

1 file changed

+8
-12
lines changed

src/Files.App/ViewModels/MainPageViewModel.cs

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -125,15 +125,14 @@ public async Task OnNavigatedToAsync(NavigationEventArgs e)
125125
else if (UserSettingsService.GeneralSettingsService.ContinueLastSessionOnStartUp &&
126126
UserSettingsService.GeneralSettingsService.LastSessionTabList is not null)
127127
{
128-
foreach (string tabArgsString in UserSettingsService.GeneralSettingsService.LastSessionTabList)
128+
if (AppInstances.Count == 0)
129129
{
130-
var tabArgs = CustomTabViewItemParameter.Deserialize(tabArgsString);
131-
await NavigationHelpers.AddNewTabByParamAsync(tabArgs.InitialPageType, tabArgs.NavigationParameter);
130+
foreach (string tabArgsString in UserSettingsService.GeneralSettingsService.LastSessionTabList)
131+
{
132+
var tabArgs = CustomTabViewItemParameter.Deserialize(tabArgsString);
133+
await NavigationHelpers.AddNewTabByParamAsync(tabArgs.InitialPageType, tabArgs.NavigationParameter);
134+
}
132135
}
133-
134-
var defaultArg = new CustomTabViewItemParameter() { InitialPageType = typeof(PaneHolderPage), NavigationParameter = "Home" };
135-
136-
UserSettingsService.GeneralSettingsService.LastSessionTabList = [defaultArg.Serialize()];
137136
}
138137
else
139138
{
@@ -158,17 +157,14 @@ public async Task OnNavigatedToAsync(NavigationEventArgs e)
158157
await NavigationHelpers.AddNewTabByPathAsync(typeof(PaneHolderPage), path, true);
159158
}
160159
else if (UserSettingsService.GeneralSettingsService.ContinueLastSessionOnStartUp &&
161-
UserSettingsService.GeneralSettingsService.LastSessionTabList is not null)
160+
UserSettingsService.GeneralSettingsService.LastSessionTabList is not null &&
161+
AppInstances.Count == 0)
162162
{
163163
foreach (string tabArgsString in UserSettingsService.GeneralSettingsService.LastSessionTabList)
164164
{
165165
var tabArgs = CustomTabViewItemParameter.Deserialize(tabArgsString);
166166
await NavigationHelpers.AddNewTabByParamAsync(tabArgs.InitialPageType, tabArgs.NavigationParameter);
167167
}
168-
169-
var defaultArg = new CustomTabViewItemParameter() { InitialPageType = typeof(PaneHolderPage), NavigationParameter = "Home" };
170-
171-
UserSettingsService.GeneralSettingsService.LastSessionTabList = [defaultArg.Serialize()];
172168
}
173169
}
174170
catch { }

0 commit comments

Comments
 (0)