fix(ui): restore the Settings modal body and tidy the Prime schedule row
The re-templated TabControl dropped PART_ItemsPresenter, so no TabItem containers were realized and SelectedContent stayed null -> empty body. Keep the presenter collapsed instead. Also let the last-run label trim with a tooltip rather than reserving a fixed MinWidth.
This commit is contained in:
@@ -85,13 +85,23 @@
|
||||
<Border Grid.Column="1" Background="{DynamicResource LineBrush}" Width="1" Margin="0,8"/>
|
||||
|
||||
<!-- TabControl stays the content host (SelectedIndex driven by the sidebar); its own
|
||||
header strip is re-templated away so only PART_SelectedContentHost renders. -->
|
||||
header strip is re-templated away so only PART_SelectedContentHost renders.
|
||||
The PART_ItemsPresenter must stay in the template even though it is collapsed:
|
||||
TabControl.SelectedContent is resolved via ContainerFromIndex, and without a
|
||||
presenter the TabItem containers are never realized -> SelectedContent is null
|
||||
and the modal body renders empty. -->
|
||||
<TabControl Grid.Column="2" Padding="20,16" SelectedIndex="{Binding SelectedIndex, Mode=OneWay}">
|
||||
<TabControl.Template>
|
||||
<ControlTemplate TargetType="TabControl">
|
||||
<ContentPresenter Name="PART_SelectedContentHost"
|
||||
Content="{TemplateBinding SelectedContent}"
|
||||
ContentTemplate="{TemplateBinding SelectedContentTemplate}"/>
|
||||
<Panel>
|
||||
<ItemsPresenter Name="PART_ItemsPresenter"
|
||||
ItemsPanel="{TemplateBinding ItemsPanel}"
|
||||
IsVisible="False"/>
|
||||
<ContentPresenter Name="PART_SelectedContentHost"
|
||||
Padding="{TemplateBinding Padding}"
|
||||
Content="{TemplateBinding SelectedContent}"
|
||||
ContentTemplate="{TemplateBinding SelectedContentTemplate}"/>
|
||||
</Panel>
|
||||
</ControlTemplate>
|
||||
</TabControl.Template>
|
||||
|
||||
@@ -268,7 +278,7 @@
|
||||
CornerRadius="6" Padding="10,8" Margin="0,0,0,8"
|
||||
Background="{DynamicResource DeepBrush}">
|
||||
<StackPanel Spacing="6">
|
||||
<Grid ColumnDefinitions="Auto,*,Auto,Auto,Auto" ColumnSpacing="8">
|
||||
<Grid ColumnDefinitions="Auto,Auto,Auto,*,Auto" ColumnSpacing="8">
|
||||
<CheckBox Grid.Column="0" IsChecked="{Binding Enabled, Mode=TwoWay}" VerticalAlignment="Center"/>
|
||||
<StackPanel Grid.Column="1" Orientation="Horizontal" Spacing="4" VerticalAlignment="Center">
|
||||
<ToggleButton Classes="day-toggle" Content="{loc:Tr settings.prime.dayMo}" IsChecked="{Binding Monday, Mode=TwoWay}"/>
|
||||
@@ -284,7 +294,8 @@
|
||||
PlaceholderText="HH:mm" MaxLength="5"
|
||||
Width="68" VerticalAlignment="Center"/>
|
||||
<TextBlock Classes="meta" Grid.Column="3" Text="{Binding LastRunLabel}" VerticalAlignment="Center"
|
||||
MinWidth="80"/>
|
||||
TextTrimming="CharacterEllipsis"
|
||||
ToolTip.Tip="{Binding LastRunLabel}"/>
|
||||
<Button Classes="icon-btn" Grid.Column="4" Content="✕"
|
||||
ToolTip.Tip="{loc:Tr settings.prime.removeScheduleTip}"
|
||||
Command="{Binding $parent[ItemsControl].((vm:SettingsModalViewModel)DataContext).Prime.RemoveScheduleCommand}"
|
||||
|
||||
Reference in New Issue
Block a user