diff --git a/src/Views/LauncherTabBar.axaml b/src/Views/LauncherTabBar.axaml index 5be41a13..c957d134 100644 --- a/src/Views/LauncherTabBar.axaml +++ b/src/Views/LauncherTabBar.axaml @@ -7,7 +7,7 @@ mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450" x:Class="SourceGit.Views.LauncherTabBar" x:DataType="vm:Launcher"> - + @@ -96,7 +96,8 @@ - diff --git a/src/Views/LauncherTabBar.axaml.cs b/src/Views/LauncherTabBar.axaml.cs index f8c9107c..129ce892 100644 --- a/src/Views/LauncherTabBar.axaml.cs +++ b/src/Views/LauncherTabBar.axaml.cs @@ -43,6 +43,9 @@ namespace SourceGit.Views if (containerEndX < startX || containerEndX > endX) continue; + if (OuterNewTabBtn.IsVisible && i == count - 1) + break; + var separatorX = containerEndX - startX + LauncherTabsScroller.Bounds.X; context.DrawLine(separatorPen, new Point(separatorX, separatorY), new Point(separatorX, separatorY + 20)); } @@ -88,7 +91,7 @@ namespace SourceGit.Views x = drawRightX - 6; } - if (drawRightX < LauncherTabsScroller.Bounds.Right) + if (drawRightX <= LauncherTabsScroller.Bounds.Right) { ctx.LineTo(new Point(x, y)); x = drawRightX; @@ -146,11 +149,15 @@ namespace SourceGit.Views LeftScrollIndicator.IsEnabled = LauncherTabsScroller.Offset.X > 0; RightScrollIndicator.IsVisible = true; RightScrollIndicator.IsEnabled = LauncherTabsScroller.Offset.X < LauncherTabsScroller.Extent.Width - LauncherTabsScroller.Viewport.Width; + InnerNewTabBtn.IsVisible = false; + OuterNewTabBtn.IsVisible = true; } else { LeftScrollIndicator.IsVisible = false; RightScrollIndicator.IsVisible = false; + InnerNewTabBtn.IsVisible = true; + OuterNewTabBtn.IsVisible = false; } InvalidateVisual();