Skip to content

Commit 7ae5319

Browse files
authored
Switch to new tab when one is opened (#2061)
1 parent b349266 commit 7ae5319

File tree

2 files changed

+15
-11
lines changed

2 files changed

+15
-11
lines changed

Files/UserControls/MultitaskingControl/HorizontalMultitaskingControl.xaml.cs

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,8 @@ namespace Files.UserControls
2525
public sealed partial class HorizontalMultitaskingControl : UserControl, IMultitaskingControl
2626
{
2727
private const string TabDropHandledIdentifier = "FilesTabViewItemDropHandled";
28+
private readonly DispatcherTimer tabHoverTimer = new DispatcherTimer();
29+
private TabViewItem hoveredTabViewItem = null;
2830

2931
public const string TabPathIdentifier = "FilesTabViewItemPath";
3032

@@ -33,10 +35,7 @@ public sealed partial class HorizontalMultitaskingControl : UserControl, IMultit
3335
public void SelectionChanged() => TabStrip_SelectionChanged(null, null);
3436

3537
public ObservableCollection<TabItem> Items => MainPage.AppInstances;
36-
37-
private readonly DispatcherTimer tabHoverTimer = new DispatcherTimer();
38-
private TabViewItem hoveredTabViewItem = null;
39-
38+
4039
public HorizontalMultitaskingControl()
4140
{
4241
this.InitializeComponent();
@@ -225,7 +224,7 @@ private void HorizontalTabView_TabItemsChanged(TabView sender, Windows.Foundatio
225224
break;
226225

227226
case Windows.Foundation.Collections.CollectionChange.ItemInserted:
228-
App.InteractionViewModel.TabStripSelectedIndex = Items.IndexOf(HorizontalTabView.SelectedItem as TabItem);
227+
App.InteractionViewModel.TabStripSelectedIndex = (int)args.Index;
229228
break;
230229
}
231230
}
@@ -279,7 +278,9 @@ private void TabHoverSelected(object sender, object e)
279278
{
280279
tabHoverTimer.Stop();
281280
if (hoveredTabViewItem != null)
281+
{
282282
HorizontalTabView.SelectedItem = hoveredTabViewItem;
283+
}
283284
}
284285

285286
private void TabStrip_TabDragStarting(TabView sender, TabViewTabDragStartingEventArgs args)
@@ -298,7 +299,8 @@ private void TabStrip_TabStripDragOver(object sender, DragEventArgs e)
298299
e.DragUIOverride.Caption = ResourceController.GetTranslation("TabStripDragAndDropUIOverrideCaption");
299300
e.DragUIOverride.IsCaptionVisible = true;
300301
e.DragUIOverride.IsGlyphVisible = false;
301-
} else
302+
}
303+
else
302304
{
303305
HorizontalTabView.CanReorderTabs = false;
304306
}

Files/UserControls/MultitaskingControl/VerticalTabViewControl.xaml.cs

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -22,16 +22,15 @@ namespace Files.UserControls
2222
public sealed partial class VerticalTabViewControl : UserControl, IMultitaskingControl
2323
{
2424
private const string TabDropHandledIdentifier = "FilesTabViewItemDropHandled";
25+
private readonly DispatcherTimer tabHoverTimer = new DispatcherTimer();
26+
private TabViewItem hoveredTabViewItem = null;
2527

2628
public const string TabPathIdentifier = "FilesTabViewItemPath";
2729

2830
public void SelectionChanged() => TabStrip_SelectionChanged(null, null);
2931

3032
public ObservableCollection<TabItem> Items => MainPage.AppInstances;
3133

32-
private readonly DispatcherTimer tabHoverTimer = new DispatcherTimer();
33-
private TabViewItem hoveredTabViewItem = null;
34-
3534
public VerticalTabViewControl()
3635
{
3736
this.InitializeComponent();
@@ -215,7 +214,7 @@ private void VerticalTabView_TabItemsChanged(TabView sender, Windows.Foundation.
215214
break;
216215

217216
case Windows.Foundation.Collections.CollectionChange.ItemInserted:
218-
App.InteractionViewModel.TabStripSelectedIndex = Items.IndexOf(VerticalTabView.SelectedItem as TabItem);
217+
App.InteractionViewModel.TabStripSelectedIndex = (int)args.Index;
219218
break;
220219
}
221220
}
@@ -269,7 +268,9 @@ private void TabHoverSelected(object sender, object e)
269268
{
270269
tabHoverTimer.Stop();
271270
if (hoveredTabViewItem != null)
271+
{
272272
VerticalTabView.SelectedItem = hoveredTabViewItem;
273+
}
273274
}
274275

275276
private void TabStrip_TabDragStarting(TabView sender, TabViewTabDragStartingEventArgs args)
@@ -288,7 +289,8 @@ private void TabStrip_TabStripDragOver(object sender, DragEventArgs e)
288289
e.DragUIOverride.Caption = ResourceController.GetTranslation("TabStripDragAndDropUIOverrideCaption");
289290
e.DragUIOverride.IsCaptionVisible = true;
290291
e.DragUIOverride.IsGlyphVisible = false;
291-
} else
292+
}
293+
else
292294
{
293295
VerticalTabView.CanReorderTabs = false;
294296
}

0 commit comments

Comments
 (0)