refactor: extract HealthBanner + promote converters to theme — Phase 2, Commit 13
HealthBanner.xaml takes the Row 1 YouTube-health banner (report-by-exception). Converters: promoted the 7 value<->visibility converters (BoolToVis, Inverse, NotNull, Null, Hidden, EnumToBool, AllTrueToVis) from MainWindow.Window.Resources into Themes/Controls.xaml so extracted UserControls can resolve them. AGENTS rule: controls cannot reach into a window's own named resources; they resolve from the app-level merged theme instead. Promoted all of them (not just NotNullToVis) so every pending extraction keeps working without window-level references. Zero behavior change; build 0 warnings; 246 pass, only the 2 known failures. Docs: ViewModels/index.md Phase 2 tracker updated in the same commit.
This commit is contained in:
@@ -0,0 +1,12 @@
|
||||
<UserControl x:Class="ytLive.Controls.HealthBanner"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
|
||||
<!-- YouTube health banner (TASK 5 item 3): report-by-exception — visible
|
||||
ONLY while a warning/error configuration issue exists. Amber for
|
||||
warning, darker red for error (HealthIssueBackground). -->
|
||||
<Border Background="{Binding HealthIssueBackground}"
|
||||
Visibility="{Binding HealthIssueBanner, Converter={StaticResource NotNullToVis}}">
|
||||
<TextBlock Text="{Binding HealthIssueBanner}" Foreground="White" FontSize="13"
|
||||
FontWeight="SemiBold" Margin="16,8" TextTrimming="CharacterEllipsis"/>
|
||||
</Border>
|
||||
</UserControl>
|
||||
@@ -0,0 +1,11 @@
|
||||
using System.Windows.Controls;
|
||||
|
||||
namespace ytLive.Controls;
|
||||
|
||||
public partial class HealthBanner : UserControl
|
||||
{
|
||||
public HealthBanner()
|
||||
{
|
||||
InitializeComponent();
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user