Skip to content

Commit a4befd0

Browse files
committed
code_review: PR #627
* add minimal height for both unstaged and staged changes view Signed-off-by: leo <[email protected]>
1 parent 2d7ea56 commit a4befd0

File tree

1 file changed

+114
-105
lines changed

1 file changed

+114
-105
lines changed

src/Views/WorkingCopy.axaml

Lines changed: 114 additions & 105 deletions
Original file line numberDiff line numberDiff line change
@@ -16,117 +16,126 @@
1616
</Grid.ColumnDefinitions>
1717

1818
<!-- Left -->
19-
<Grid Grid.Column="0" RowDefinitions="28,*,28,*">
20-
<!-- Unstaged Toolbar -->
21-
<Border Grid.Row="0" BorderThickness="0,0,0,1" BorderBrush="{DynamicResource Brush.Border0}">
22-
<Grid ColumnDefinitions="Auto,Auto,Auto,Auto,*,Auto,Auto,Auto,Auto,Auto">
23-
<Path Grid.Column="0" Margin="8,0,0,0" Width="14" Height="14" Fill="{DynamicResource Brush.FG2}" Data="{StaticResource Icons.Changes}"/>
24-
<TextBlock Grid.Column="1" Text="{DynamicResource Text.WorkingCopy.Unstaged}" Foreground="{DynamicResource Brush.FG2}" FontWeight="Bold" Margin="4,0,0,0"/>
25-
<TextBlock Grid.Column="2" FontWeight="Bold" Foreground="{DynamicResource Brush.FG2}" Text="{Binding Unstaged, Converter={x:Static c:ListConverters.ToCount}}"/>
26-
<v:LoadingIcon Grid.Column="3" Width="14" Height="14" Margin="8,0,0,0" IsVisible="{Binding IsStaging}"/>
27-
28-
<Button Grid.Column="5"
29-
Classes="icon_button"
30-
Width="26" Height="14"
31-
Padding="0"
32-
ToolTip.Tip="{DynamicResource Text.WorkingCopy.Unstaged.ViewAssumeUnchaged}"
33-
Command="{Binding OpenAssumeUnchanged}">
34-
<Path Width="14" Height="14" Data="{StaticResource Icons.File.Ignore}"/>
35-
</Button>
36-
<ToggleButton Grid.Column="6"
37-
Classes="toggle_untracked"
38-
Width="26" Height="14"
39-
ToolTip.Tip="{DynamicResource Text.WorkingCopy.IncludeUntracked}"
40-
IsChecked="{Binding IncludeUntracked, Mode=TwoWay}"/>
41-
<Button Grid.Column="7"
42-
Classes="icon_button"
43-
Width="26" Height="14"
44-
Padding="0"
45-
Click="OnStageSelectedButtonClicked">
46-
<ToolTip.Tip>
47-
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
48-
<TextBlock Text="{DynamicResource Text.WorkingCopy.Unstaged.Stage}" VerticalAlignment="Center"/>
49-
<TextBlock Margin="16,0,0,0" Text="{OnPlatform Space/Enter, macOS=␣/Enter}" Opacity=".6" FontSize="11" VerticalAlignment="Center"/>
50-
</StackPanel>
51-
</ToolTip.Tip>
52-
<Path Width="14" Height="14" Margin="0,6,0,0" Data="{StaticResource Icons.Down}"/>
53-
</Button>
54-
<Button Grid.Column="8"
55-
Classes="icon_button"
56-
Width="26" Height="14"
57-
Padding="0"
58-
ToolTip.Tip="{DynamicResource Text.WorkingCopy.Unstaged.StageAll}"
59-
Command="{Binding StageAll}">
60-
<Path Width="14" Height="14" Data="{StaticResource Icons.DoubleDown}"/>
61-
</Button>
62-
<v:ChangeViewModeSwitcher Grid.Column="9"
63-
Width="26" Height="14"
64-
Margin="0,1,0,0"
65-
ViewMode="{Binding Source={x:Static vm:Preference.Instance}, Path=UnstagedChangeViewMode, Mode=TwoWay}"/>
66-
</Grid>
67-
</Border>
68-
69-
<!-- Unstaged Changes -->
70-
<v:ChangeCollectionView Grid.Row="1"
71-
x:Name="UnstagedChangesView"
72-
Focusable="True"
73-
IsUnstagedChange="True"
74-
SelectionMode="Multiple"
75-
Background="{DynamicResource Brush.Contents}"
76-
ViewMode="{Binding Source={x:Static vm:Preference.Instance}, Path=UnstagedChangeViewMode}"
77-
Changes="{Binding Unstaged}"
78-
SelectedChanges="{Binding SelectedUnstaged, Mode=TwoWay}"
79-
ContextRequested="OnUnstagedContextRequested"
80-
ChangeDoubleTapped="OnUnstagedChangeDoubleTapped"
81-
KeyDown="OnUnstagedKeyDown"/>
19+
<Grid Grid.Column="0">
20+
<Grid.RowDefinitions>
21+
<RowDefinition Height="*" MinHeight="100"/>
22+
<RowDefinition Height="1"/>
23+
<RowDefinition Height="*" MinHeight="100"/>
24+
</Grid.RowDefinitions>
25+
26+
<!-- Unstaged -->
27+
<Grid Grid.Row="0" RowDefinitions="28,*">
28+
<!-- Unstaged Toolbar -->
29+
<Border Grid.Row="0" BorderThickness="0,0,0,1" BorderBrush="{DynamicResource Brush.Border0}">
30+
<Grid ColumnDefinitions="Auto,Auto,Auto,Auto,*,Auto,Auto,Auto,Auto,Auto">
31+
<Path Grid.Column="0" Margin="8,0,0,0" Width="14" Height="14" Fill="{DynamicResource Brush.FG2}" Data="{StaticResource Icons.Changes}"/>
32+
<TextBlock Grid.Column="1" Text="{DynamicResource Text.WorkingCopy.Unstaged}" Foreground="{DynamicResource Brush.FG2}" FontWeight="Bold" Margin="4,0,0,0"/>
33+
<TextBlock Grid.Column="2" FontWeight="Bold" Foreground="{DynamicResource Brush.FG2}" Text="{Binding Unstaged, Converter={x:Static c:ListConverters.ToCount}}"/>
34+
<v:LoadingIcon Grid.Column="3" Width="14" Height="14" Margin="8,0,0,0" IsVisible="{Binding IsStaging}"/>
8235

36+
<Button Grid.Column="5"
37+
Classes="icon_button"
38+
Width="26" Height="14"
39+
Padding="0"
40+
ToolTip.Tip="{DynamicResource Text.WorkingCopy.Unstaged.ViewAssumeUnchaged}"
41+
Command="{Binding OpenAssumeUnchanged}">
42+
<Path Width="14" Height="14" Data="{StaticResource Icons.File.Ignore}"/>
43+
</Button>
44+
<ToggleButton Grid.Column="6"
45+
Classes="toggle_untracked"
46+
Width="26" Height="14"
47+
ToolTip.Tip="{DynamicResource Text.WorkingCopy.IncludeUntracked}"
48+
IsChecked="{Binding IncludeUntracked, Mode=TwoWay}"/>
49+
<Button Grid.Column="7"
50+
Classes="icon_button"
51+
Width="26" Height="14"
52+
Padding="0"
53+
Click="OnStageSelectedButtonClicked">
54+
<ToolTip.Tip>
55+
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
56+
<TextBlock Text="{DynamicResource Text.WorkingCopy.Unstaged.Stage}" VerticalAlignment="Center"/>
57+
<TextBlock Margin="16,0,0,0" Text="{OnPlatform Space/Enter, macOS=␣/Enter}" Opacity=".6" FontSize="11" VerticalAlignment="Center"/>
58+
</StackPanel>
59+
</ToolTip.Tip>
60+
<Path Width="14" Height="14" Margin="0,6,0,0" Data="{StaticResource Icons.Down}"/>
61+
</Button>
62+
<Button Grid.Column="8"
63+
Classes="icon_button"
64+
Width="26" Height="14"
65+
Padding="0"
66+
ToolTip.Tip="{DynamicResource Text.WorkingCopy.Unstaged.StageAll}"
67+
Command="{Binding StageAll}">
68+
<Path Width="14" Height="14" Data="{StaticResource Icons.DoubleDown}"/>
69+
</Button>
70+
<v:ChangeViewModeSwitcher Grid.Column="9"
71+
Width="26" Height="14"
72+
Margin="0,1,0,0"
73+
ViewMode="{Binding Source={x:Static vm:Preference.Instance}, Path=UnstagedChangeViewMode, Mode=TwoWay}"/>
74+
</Grid>
75+
</Border>
8376

77+
<!-- Unstaged Changes -->
78+
<v:ChangeCollectionView Grid.Row="1"
79+
x:Name="UnstagedChangesView"
80+
Focusable="True"
81+
IsUnstagedChange="True"
82+
SelectionMode="Multiple"
83+
Background="{DynamicResource Brush.Contents}"
84+
ViewMode="{Binding Source={x:Static vm:Preference.Instance}, Path=UnstagedChangeViewMode}"
85+
Changes="{Binding Unstaged}"
86+
SelectedChanges="{Binding SelectedUnstaged, Mode=TwoWay}"
87+
ContextRequested="OnUnstagedContextRequested"
88+
ChangeDoubleTapped="OnUnstagedChangeDoubleTapped"
89+
KeyDown="OnUnstagedKeyDown"/>
90+
</Grid>
91+
8492
<!-- Splitter -->
85-
<GridSplitter Grid.Row="2"
86-
MinWidth="1"
93+
<GridSplitter Grid.Row="1"
94+
MinHeight="1"
8795
HorizontalAlignment="Stretch" VerticalAlignment="Stretch"
88-
Background="Transparent"
89-
BorderThickness="0,0,1,0"
90-
BorderBrush="{DynamicResource Brush.Border0}"/>
96+
Background="{DynamicResource Brush.Border0}"/>
9197

92-
<!-- Staged Toolbar -->
93-
<Border Grid.Row="2" BorderThickness="0,1" BorderBrush="{DynamicResource Brush.Border0}">
94-
<Grid ColumnDefinitions="Auto,Auto,Auto,Auto,*,Auto,Auto,Auto">
95-
<Path Grid.Column="0" Margin="8,0,0,0" Width="14" Height="14" Fill="{DynamicResource Brush.FG2}" Data="{StaticResource Icons.Changes}"/>
96-
<TextBlock Grid.Column="1" Text="{DynamicResource Text.WorkingCopy.Staged}" Foreground="{DynamicResource Brush.FG2}" FontWeight="Bold" Margin="4,0,0,0"/>
97-
<TextBlock Grid.Column="2" FontWeight="Bold" Foreground="{DynamicResource Brush.FG2}" Text="{Binding Staged, Converter={x:Static c:ListConverters.ToCount}}"/>
98-
<v:LoadingIcon Grid.Column="3" Width="14" Height="14" Margin="8,0,0,0" IsVisible="{Binding IsUnstaging}"/>
99-
<Button Grid.Column="5" Classes="icon_button" Width="26" Height="14" Padding="0" Click="OnUnstageSelectedButtonClicked">
100-
<ToolTip.Tip>
101-
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
102-
<TextBlock Text="{DynamicResource Text.WorkingCopy.Staged.Unstage}" VerticalAlignment="Center"/>
103-
<TextBlock Margin="16,0,0,0" Text="{OnPlatform Space/Enter, macOS=␣/Enter}" Opacity=".6" FontSize="11" VerticalAlignment="Center"/>
104-
</StackPanel>
105-
</ToolTip.Tip>
106-
<Path Width="14" Height="14" Margin="0,6,0,0" Data="{StaticResource Icons.Up}"/>
107-
</Button>
108-
<Button Grid.Column="6" Classes="icon_button" Width="26" Height="14" Padding="0" ToolTip.Tip="{DynamicResource Text.WorkingCopy.Staged.UnstageAll}" Command="{Binding UnstageAll}">
109-
<Path Width="14" Height="14" Data="{StaticResource Icons.DoubleUp}"/>
110-
</Button>
111-
<v:ChangeViewModeSwitcher Grid.Column="7"
112-
Width="26" Height="14"
113-
Margin="0,1,0,0"
114-
ViewMode="{Binding Source={x:Static vm:Preference.Instance}, Path=StagedChangeViewMode, Mode=TwoWay}"/>
115-
</Grid>
116-
</Border>
98+
<!-- Staged -->
99+
<Grid Grid.Row="2" RowDefinitions="28,*">
100+
<!-- Staged Toolbar -->
101+
<Border Grid.Row="0" BorderThickness="0,0,0,1" BorderBrush="{DynamicResource Brush.Border0}">
102+
<Grid ColumnDefinitions="Auto,Auto,Auto,Auto,*,Auto,Auto,Auto">
103+
<Path Grid.Column="0" Margin="8,0,0,0" Width="14" Height="14" Fill="{DynamicResource Brush.FG2}" Data="{StaticResource Icons.Changes}"/>
104+
<TextBlock Grid.Column="1" Text="{DynamicResource Text.WorkingCopy.Staged}" Foreground="{DynamicResource Brush.FG2}" FontWeight="Bold" Margin="4,0,0,0"/>
105+
<TextBlock Grid.Column="2" FontWeight="Bold" Foreground="{DynamicResource Brush.FG2}" Text="{Binding Staged, Converter={x:Static c:ListConverters.ToCount}}"/>
106+
<v:LoadingIcon Grid.Column="3" Width="14" Height="14" Margin="8,0,0,0" IsVisible="{Binding IsUnstaging}"/>
107+
<Button Grid.Column="5" Classes="icon_button" Width="26" Height="14" Padding="0" Click="OnUnstageSelectedButtonClicked">
108+
<ToolTip.Tip>
109+
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
110+
<TextBlock Text="{DynamicResource Text.WorkingCopy.Staged.Unstage}" VerticalAlignment="Center"/>
111+
<TextBlock Margin="16,0,0,0" Text="{OnPlatform Space/Enter, macOS=␣/Enter}" Opacity=".6" FontSize="11" VerticalAlignment="Center"/>
112+
</StackPanel>
113+
</ToolTip.Tip>
114+
<Path Width="14" Height="14" Margin="0,6,0,0" Data="{StaticResource Icons.Up}"/>
115+
</Button>
116+
<Button Grid.Column="6" Classes="icon_button" Width="26" Height="14" Padding="0" ToolTip.Tip="{DynamicResource Text.WorkingCopy.Staged.UnstageAll}" Command="{Binding UnstageAll}">
117+
<Path Width="14" Height="14" Data="{StaticResource Icons.DoubleUp}"/>
118+
</Button>
119+
<v:ChangeViewModeSwitcher Grid.Column="7"
120+
Width="26" Height="14"
121+
Margin="0,1,0,0"
122+
ViewMode="{Binding Source={x:Static vm:Preference.Instance}, Path=StagedChangeViewMode, Mode=TwoWay}"/>
123+
</Grid>
124+
</Border>
117125

118-
<!-- Staged Changes -->
119-
<v:ChangeCollectionView Grid.Row="3"
120-
x:Name="StagedChangesView"
121-
Focusable="True"
122-
SelectionMode="Multiple"
123-
Background="{DynamicResource Brush.Contents}"
124-
ViewMode="{Binding Source={x:Static vm:Preference.Instance}, Path=StagedChangeViewMode}"
125-
Changes="{Binding Staged}"
126-
SelectedChanges="{Binding SelectedStaged, Mode=TwoWay}"
127-
ContextRequested="OnStagedContextRequested"
128-
ChangeDoubleTapped="OnStagedChangeDoubleTapped"
129-
KeyDown="OnStagedKeyDown"/>
126+
<!-- Staged Changes -->
127+
<v:ChangeCollectionView Grid.Row="1"
128+
x:Name="StagedChangesView"
129+
Focusable="True"
130+
SelectionMode="Multiple"
131+
Background="{DynamicResource Brush.Contents}"
132+
ViewMode="{Binding Source={x:Static vm:Preference.Instance}, Path=StagedChangeViewMode}"
133+
Changes="{Binding Staged}"
134+
SelectedChanges="{Binding SelectedStaged, Mode=TwoWay}"
135+
ContextRequested="OnStagedContextRequested"
136+
ChangeDoubleTapped="OnStagedChangeDoubleTapped"
137+
KeyDown="OnStagedKeyDown"/>
138+
</Grid>
130139
</Grid>
131140

132141
<GridSplitter Grid.Column="1"

0 commit comments

Comments
 (0)