Skip to content

Commit 1c6d759

Browse files
authored
Fixed window dragging in different modes (#1690)
* Fixed drag area * Bring back drag area * Fix drag area * Remove debug
1 parent 7f67108 commit 1c6d759

File tree

4 files changed

+29
-23
lines changed

4 files changed

+29
-23
lines changed

Files/UserControls/HorizontalMultitaskingControl.xaml

Lines changed: 15 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
<Setter Property="VerticalAlignment" Value="Top" />
2323
<Setter Property="Padding" Value="{ThemeResource TabViewHeaderPadding}" />
2424
<Setter Property="IsTabStop" Value="False" />
25-
<Setter Property="Background" Value="{ThemeResource TabViewBackground}" />
25+
<Setter Property="Background" Value="{x:Null}" />
2626
<Setter Property="KeyboardAcceleratorPlacementMode" Value="Hidden" />
2727

2828
<Setter Property="Template">
@@ -57,6 +57,7 @@
5757
<primitives:TabViewListView
5858
x:Name="TabListView"
5959
Grid.Column="1"
60+
Margin="6"
6061
AllowDrop="{TemplateBinding AllowDropTabs}"
6162
CanDragItems="{TemplateBinding CanDragTabs}"
6263
CanReorderItems="{TemplateBinding CanReorderTabs}"
@@ -67,7 +68,6 @@
6768
<Button
6869
x:Name="AddButton"
6970
Grid.Column="2"
70-
Margin="-8,1,0,0"
7171
Command="{TemplateBinding AddTabButtonCommand}"
7272
CommandParameter="{TemplateBinding AddTabButtonCommandParameter}"
7373
Content="&#xE710;"
@@ -80,6 +80,7 @@
8080
<ContentPresenter
8181
x:Name="RightContentPresenter"
8282
Grid.Column="3"
83+
Margin="0,0,250,0"
8384
HorizontalAlignment="Stretch"
8485
Content="{TemplateBinding TabStripFooter}"
8586
ContentTemplate="{TemplateBinding TabStripFooterTemplate}" />
@@ -136,7 +137,9 @@
136137
<Setter Property="ItemsPanel">
137138
<Setter.Value>
138139
<ItemsPanelTemplate>
139-
<ItemsStackPanel Orientation="Horizontal" />
140+
<ItemsStackPanel
141+
Orientation="Horizontal"
142+
VerticalAlignment="Center" />
140143
</ItemsPanelTemplate>
141144
</Setter.Value>
142145
</Setter>
@@ -167,7 +170,7 @@
167170
VerticalScrollMode="{TemplateBinding ScrollViewer.VerticalScrollMode}"
168171
ZoomMode="{TemplateBinding ScrollViewer.ZoomMode}">
169172

170-
<ItemsPresenter x:Name="TabsItemsPresenter" Padding="{TemplateBinding Padding}" />
173+
<ItemsPresenter x:Name="TabsItemsPresenter" />
171174

172175
</ScrollViewer>
173176
</Border>
@@ -317,7 +320,6 @@
317320
<Grid
318321
x:Name="LayoutRoot"
319322
Height="34"
320-
Margin="-1,0,0,0"
321323
Padding="{TemplateBinding Padding}">
322324
<!-- This item will cover the separator on its left side. -->
323325

@@ -753,7 +755,13 @@
753755
</ResourceDictionary>
754756
</UserControl.Resources>
755757

756-
<Grid>
758+
<Grid
759+
Canvas.ZIndex="4"
760+
Background="{ThemeResource TabViewBackground}">
761+
<Grid
762+
x:Name="DragArea"
763+
Background="Transparent"
764+
Loaded="DragArea_Loaded" />
757765
<muxc:TabView
758766
x:Name="horizontalTabView"
759767
HorizontalAlignment="Stretch"
@@ -777,7 +785,7 @@
777785
<muxc:TabView.TabItemTemplate>
778786
<DataTemplate x:DataType="local:TabItem">
779787
<muxc:TabViewItem
780-
Margin="-2,-2,8,4"
788+
Margin="2,0,2,0"
781789
AllowDrop="True"
782790
DragOver="TabViewItem_DragOver"
783791
Drop="TabViewItem_Drop"
@@ -788,17 +796,6 @@
788796
ToolTipService.ToolTip="{x:Null}" />
789797
</DataTemplate>
790798
</muxc:TabView.TabItemTemplate>
791-
<muxc:TabView.TabStripFooter>
792-
<Grid
793-
x:Name="DragArea"
794-
Grid.Column="1"
795-
Height="32"
796-
Margin="0,0,250,0"
797-
VerticalAlignment="Top"
798-
Background="Transparent"
799-
Canvas.ZIndex="4"
800-
Loaded="DragArea_Loaded" />
801-
</muxc:TabView.TabStripFooter>
802799
</muxc:TabView>
803800
</Grid>
804801
</UserControl>

Files/UserControls/HorizontalMultitaskingControl.xaml.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -271,7 +271,7 @@ private void TabViewItem_DragOver(object sender, DragEventArgs e)
271271

272272
private void TabStrip_TabDragStarting(TabView sender, TabViewTabDragStartingEventArgs args)
273273
{
274-
var tabViewItemPath = ((((args.Item as TabItem).Content as Grid).Children[0] as Frame).Content as IShellPage).NavigationToolbar.PathControlDisplayText;
274+
var tabViewItemPath = ((((args.Item as TabItem).Content as Grid).Children[0] as Frame).Tag as TabItemContent).NavigationArg;
275275
args.Data.Properties.Add(TabPathIdentifier, tabViewItemPath);
276276
args.Data.RequestedOperation = DataPackageOperation.Move;
277277
}

Files/Views/ModernShellPage.xaml

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
xmlns:Windows10version1903="http://schemas.microsoft.com/winfx/2006/xaml/presentation?IsApiContractPresent(Windows.Foundation.UniversalApiContract, 8)"
77
xmlns:controls="using:Files.Controls"
88
xmlns:controls1="using:Files.UserControls"
9+
xmlns:converters="using:Microsoft.Toolkit.Uwp.UI.Converters"
910
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
1011
xmlns:local="using:Files.Views.Pages"
1112
xmlns:local1="using:Files"
@@ -16,6 +17,8 @@
1617
mc:Ignorable="d">
1718
<Page.Resources>
1819
<ResourceDictionary>
20+
<converters:BoolNegationConverter
21+
x:Key="BoolNegationConverter" />
1922
<Style x:Key="DefaultGridSplitterStyle" TargetType="Custom:GridSplitter">
2023
<Setter Property="IsTabStop" Value="True" />
2124
<Setter Property="UseSystemFocusVisuals" Value="True" />
@@ -149,20 +152,26 @@
149152
Canvas.ZIndex="100"
150153
OffsetX="-2"
151154
ShadowOpacity=".04">
152-
<Grid Padding="0,8,0,0" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
155+
<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
153156
<Grid.RowDefinitions>
154157
<RowDefinition Height="Auto" />
155158
<RowDefinition Height="Auto" />
156159
<RowDefinition Height="*" />
157160
<RowDefinition Height="Auto" />
158161
</Grid.RowDefinitions>
159-
<Grid Height="24" x:Name="SmallWindowTitlebar" Loaded="SmallWindowTitlebar_Loaded" x:Load="{x:Bind AppSettings.IsHorizontalTabStripVisible, Mode=OneWay}"/>
162+
163+
<Grid
164+
Height="30"
165+
Background="Transparent"
166+
x:Name="SmallWindowTitlebar"
167+
Loaded="SmallWindowTitlebar_Loaded"
168+
x:Load="{x:Bind AppSettings.IsHorizontalTabStripVisible, Mode=OneWay, Converter={StaticResource BoolNegationConverter}}" />
160169

161170
<Grid Grid.Row="1" Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">
162171
<controls1:ModernNavigationToolbar
163172
x:Name="NavToolbar"
164173
Grid.Column="0"
165-
Margin="10,0"
174+
Margin="10"
166175
x:FieldModifier="public" />
167176
</Grid>
168177

Files/Views/ModernShellPage.xaml.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -313,7 +313,7 @@ private async void KeyboardAccelerator_Invoked(KeyboardAccelerator sender, Keybo
313313

314314
private void SmallWindowTitlebar_Loaded(object sender, RoutedEventArgs e)
315315
{
316-
Window.Current.SetTitleBar(sender as Grid);
316+
Window.Current.SetTitleBar(SmallWindowTitlebar);
317317
}
318318
}
319319

0 commit comments

Comments
 (0)