Skip to content
This repository was archived by the owner on Jun 21, 2023. It is now read-only.

Commit df69e10

Browse files
committed
Tidy up PR details XAML.
When coming to fix #1738, I noticed that the XAML in the PR details view had got quite messy, with quite a few unneeded `Grid`s and other layout controls. Simplified the XAML a bit and fixed #1738.
1 parent ee98b3b commit df69e10

File tree

1 file changed

+27
-67
lines changed

1 file changed

+27
-67
lines changed

src/GitHub.VisualStudio/Views/GitHubPane/PullRequestDetailView.xaml

Lines changed: 27 additions & 67 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@
1818
<Binding>
1919
<Binding.Source>
2020
<ghfvs:PullRequestDetailViewModelDesigner SourceBranchDisplayName="shana/error-handling-a-ridiculously-long-branch-name-because-why-not"
21-
TargetBranchDisplayName="master-is-always-stable"
22-
CommentCount="10">
21+
TargetBranchDisplayName="master-is-always-stable"
22+
CommentCount="10">
2323
<ghfvs:PullRequestDetailViewModelDesigner.UpdateState>
2424
<ghfvs:PullRequestUpdateStateDesigner CommitsAhead="0" CommitsBehind="0" UpToDate="True"/>
2525
</ghfvs:PullRequestDetailViewModelDesigner.UpdateState>
@@ -76,94 +76,54 @@
7676
<CommandBinding Command="{x:Static markdig:Commands.Hyperlink}" Executed="OpenHyperlink" />
7777
</FrameworkElement.CommandBindings>
7878

79-
<DockPanel Grid.IsSharedSizeScope="True" Margin="8 0">
80-
<Grid DockPanel.Dock="Top">
81-
<Grid.ColumnDefinitions>
82-
<ColumnDefinition Width="*" />
83-
<ColumnDefinition Width="Auto" />
84-
</Grid.ColumnDefinitions>
85-
86-
<Grid.RowDefinitions>
87-
<RowDefinition Height="*" />
88-
<RowDefinition Height="Auto" />
89-
</Grid.RowDefinitions>
90-
91-
<TextBlock Grid.Column="0"
92-
Style="{DynamicResource {x:Static vsui:VsResourceKeys.TextBlockEnvironment122PercentFontSizeStyleKey}}"
79+
<DockPanel Grid.IsSharedSizeScope="True">
80+
<StackPanel DockPanel.Dock="Top"
81+
Orientation="Vertical"
82+
Margin="8 0 0 0">
83+
84+
<!-- Title -->
85+
<TextBlock Style="{DynamicResource {x:Static vsui:VsResourceKeys.TextBlockEnvironment122PercentFontSizeStyleKey}}"
9386
TextWrapping="Wrap"
9487
Margin="0 0 5 3"
9588
Text="{Binding Model.Title}"/>
9689

97-
<StackPanel Grid.Column="0"
98-
Grid.Row="1"
99-
Orientation="Horizontal">
100-
90+
<!-- State and branches -->
91+
<StackPanel Orientation="Horizontal">
10192
<TextBlock FontWeight="Bold"
102-
Margin="0 0 4 0"
10393
VerticalAlignment="Center"
10494
Text="{Binding Model.State, Converter={StaticResource AllCaps}}"
10595
Style="{StaticResource StateIndicator}"/>
10696

107-
<Rectangle Grid.Column="1" Margin="5 0 10 0" Width="1" Height="12" VerticalAlignment="Center" Style="{DynamicResource Separator}" />
97+
<Rectangle Margin="9 0" Width="1" Height="12" VerticalAlignment="Center" Style="{DynamicResource Separator}" />
10898

109-
<!-- source and target branches -->
110-
<Grid Margin="0 -3" HorizontalAlignment="Left">
111-
<Grid.ColumnDefinitions>
112-
<ColumnDefinition Width="Auto"/>
113-
<ColumnDefinition Width="*"/>
114-
<ColumnDefinition Width="Auto"/>
115-
<ColumnDefinition Width="*"/>
116-
</Grid.ColumnDefinitions>
99+
<Border Grid.Column="1" HorizontalAlignment="Left" VerticalAlignment="Center" CornerRadius="2" Padding="5 1" Background="{DynamicResource GitHubBranchNameBackgroundBrush}">
100+
<TextBlock FontFamily="Consolas" TextTrimming="CharacterEllipsis" ToolTip="{Binding TargetBranchDisplayName, Mode=OneWay}" Text="{Binding TargetBranchDisplayName, Mode=OneWay}" />
101+
</Border>
117102

118-
<Border Grid.Column="1" HorizontalAlignment="Left" VerticalAlignment="Center" CornerRadius="2" Padding="5 1" Background="{DynamicResource GitHubBranchNameBackgroundBrush}">
119-
<TextBlock FontFamily="Consolas" TextTrimming="CharacterEllipsis" ToolTip="{Binding TargetBranchDisplayName, Mode=OneWay}" Text="{Binding TargetBranchDisplayName, Mode=OneWay}" />
120-
</Border>
103+
<ghfvs:OcticonImage Grid.Column="2" VerticalAlignment="Center" Margin="5 3" Icon="arrow_left" />
121104

122-
<ghfvs:OcticonImage Grid.Column="2" VerticalAlignment="Center" Margin="5" Icon="arrow_left" />
105+
<Border Grid.Column="3" HorizontalAlignment="Left" VerticalAlignment="Center" CornerRadius="2" Padding="5 1" Background="{DynamicResource GitHubBranchNameBackgroundBrush}">
106+
<TextBlock FontFamily="Consolas" TextTrimming="CharacterEllipsis" ToolTip="{Binding SourceBranchDisplayName, Mode=OneWay}" Text="{Binding SourceBranchDisplayName, Mode=OneWay}" />
107+
</Border>
123108

124-
<Border Grid.Column="3" HorizontalAlignment="Left" VerticalAlignment="Center" CornerRadius="2" Padding="5 1" Background="{DynamicResource GitHubBranchNameBackgroundBrush}">
125-
<TextBlock FontFamily="Consolas" TextTrimming="CharacterEllipsis" ToolTip="{Binding SourceBranchDisplayName, Mode=OneWay}" Text="{Binding SourceBranchDisplayName, Mode=OneWay}" />
126-
</Border>
127-
</Grid>
128109
</StackPanel>
129-
</Grid>
130110

131-
<!-- Avatar, PR Title, Open/Merged/Closed state and actions area -->
132-
<Grid DockPanel.Dock="Top">
133-
<Grid.ColumnDefinitions>
134-
<ColumnDefinition Width="Auto"/>
135-
<ColumnDefinition Width="1*"/>
136-
<ColumnDefinition Width="Auto"/>
137-
</Grid.ColumnDefinitions>
138-
139-
<Grid.RowDefinitions>
140-
<RowDefinition Height="Auto"/>
141-
<RowDefinition Height="Auto"/>
142-
<RowDefinition Height="Auto"/>
143-
</Grid.RowDefinitions>
144-
145-
<StackPanel Grid.Column="1" Margin="0 0 6 0" Orientation="Vertical">
146-
<TextBlock Grid.Column="0" Opacity="0.5" VerticalAlignment="Center"
147-
Text="{Binding Model.UpdatedAt, StringFormat={x:Static prop:Resources.UpdatedFormat}, Converter={ghfvs:DurationToStringConverter}, Mode=OneWay}"/>
148-
</StackPanel>
111+
<!-- Updated at -->
112+
<TextBlock Opacity="0.5"
113+
Text="{Binding Model.UpdatedAt, StringFormat={x:Static prop:Resources.UpdatedFormat}, Converter={ghfvs:DurationToStringConverter}, Mode=OneWay}"/>
149114

150115
<!-- Git operation error message -->
151-
<TextBox Grid.Column="0"
152-
Grid.ColumnSpan="3"
153-
Grid.Row="2"
154-
Foreground="Red"
155-
Margin="0 2 0 0"
116+
<TextBox Foreground="Red"
117+
Margin="-2 4"
156118
Text="{Binding OperationError, Mode=OneWay}"
157-
VerticalAlignment="Center"
158-
TextWrapping="Wrap"
159119
Style="{StaticResource FlatReadOnlyTextBox}"
160120
Visibility="{Binding OperationError, Converter={ghfvs:NullToVisibilityConverter}}"/>
161-
</Grid>
121+
</StackPanel>
162122

163-
<Rectangle DockPanel.Dock="Top" Style="{StaticResource Separator}" Height="2" Margin="-8,5,-8,0"/>
123+
<Rectangle DockPanel.Dock="Top" Style="{StaticResource Separator}" Height="2" Margin="0,5,0,0"/>
164124

165125
<ScrollViewer CanContentScroll="True"
166-
Margin="0,0,-8,0"
126+
Padding="8 0 0 0"
167127
HorizontalScrollBarVisibility="Auto"
168128
VerticalScrollBarVisibility="Auto">
169129
<ghfvs:ScrollingVerticalStackPanel>

0 commit comments

Comments
 (0)