Add keyboard focus rings to themed buttons
Some checks failed
CI / build-and-test (push) Failing after 31s
Some checks failed
CI / build-and-test (push) Failing after 31s
All Wd.Button.* styles set FocusVisualStyle=x:Null which suppresses WPF's default dotted focus rectangle. With no replacement IsKeyboardFocused trigger, tab-navigating gave NO visual cue — accessibility regression. Match the keyboard-focus visual to the hover visual so mouse and keyboard land on the same affordance: - Ghost: cyan border on focus (same as hover, minus the bg fill change so focus + hover compound visibly) - Caption: lifts to Wd.Button.HoverBg - RailIcon: lifts to Wd.Button.HoverBg + cyan icon - IsoToggle: 2px cyan border (same as hover; status bg preserved) Verified building cleanly. Tab-cycle through the IN-CALL bar / header pills / settings tabs now lights the focused control.
This commit is contained in:
parent
2de65f6d10
commit
0e2927e42c
1 changed files with 21 additions and 0 deletions
|
|
@ -167,6 +167,16 @@
|
||||||
<Setter TargetName="Bd" Property="Background" Value="{StaticResource Wd.Button.HoverBg}"/>
|
<Setter TargetName="Bd" Property="Background" Value="{StaticResource Wd.Button.HoverBg}"/>
|
||||||
<Setter TargetName="Bd" Property="BorderBrush" Value="{StaticResource Wd.Accent.Cyan}"/>
|
<Setter TargetName="Bd" Property="BorderBrush" Value="{StaticResource Wd.Accent.Cyan}"/>
|
||||||
</Trigger>
|
</Trigger>
|
||||||
|
<!--
|
||||||
|
Keyboard focus ring (Tab-navigation). FocusVisualStyle
|
||||||
|
is x:Null on all themed buttons — without this trigger
|
||||||
|
you'd have NO visual cue when tab-cycling through.
|
||||||
|
Match the hover treatment so mouse + keyboard land
|
||||||
|
on the same affordance.
|
||||||
|
-->
|
||||||
|
<Trigger Property="IsKeyboardFocused" Value="True">
|
||||||
|
<Setter TargetName="Bd" Property="BorderBrush" Value="{StaticResource Wd.Accent.Cyan}"/>
|
||||||
|
</Trigger>
|
||||||
<Trigger Property="IsPressed" Value="True">
|
<Trigger Property="IsPressed" Value="True">
|
||||||
<Setter TargetName="Bd" Property="Background" Value="{StaticResource Wd.Button.PressBg}"/>
|
<Setter TargetName="Bd" Property="Background" Value="{StaticResource Wd.Button.PressBg}"/>
|
||||||
<Setter TargetName="Bd" Property="BorderBrush" Value="{StaticResource Wd.Accent.CyanHover}"/>
|
<Setter TargetName="Bd" Property="BorderBrush" Value="{StaticResource Wd.Accent.CyanHover}"/>
|
||||||
|
|
@ -233,6 +243,9 @@
|
||||||
<Trigger Property="IsMouseOver" Value="True">
|
<Trigger Property="IsMouseOver" Value="True">
|
||||||
<Setter TargetName="Bd" Property="Background" Value="{StaticResource Wd.Button.HoverBg}"/>
|
<Setter TargetName="Bd" Property="Background" Value="{StaticResource Wd.Button.HoverBg}"/>
|
||||||
</Trigger>
|
</Trigger>
|
||||||
|
<Trigger Property="IsKeyboardFocused" Value="True">
|
||||||
|
<Setter TargetName="Bd" Property="Background" Value="{StaticResource Wd.Button.HoverBg}"/>
|
||||||
|
</Trigger>
|
||||||
<Trigger Property="IsPressed" Value="True">
|
<Trigger Property="IsPressed" Value="True">
|
||||||
<Setter TargetName="Bd" Property="Background" Value="{StaticResource Wd.Button.PressBg}"/>
|
<Setter TargetName="Bd" Property="Background" Value="{StaticResource Wd.Button.PressBg}"/>
|
||||||
</Trigger>
|
</Trigger>
|
||||||
|
|
@ -290,6 +303,10 @@
|
||||||
<Setter TargetName="Bd" Property="Background" Value="{StaticResource Wd.Button.HoverBg}"/>
|
<Setter TargetName="Bd" Property="Background" Value="{StaticResource Wd.Button.HoverBg}"/>
|
||||||
<Setter Property="Foreground" Value="{StaticResource Wd.Accent.Cyan}"/>
|
<Setter Property="Foreground" Value="{StaticResource Wd.Accent.Cyan}"/>
|
||||||
</Trigger>
|
</Trigger>
|
||||||
|
<Trigger Property="IsKeyboardFocused" Value="True">
|
||||||
|
<Setter TargetName="Bd" Property="Background" Value="{StaticResource Wd.Button.HoverBg}"/>
|
||||||
|
<Setter Property="Foreground" Value="{StaticResource Wd.Accent.Cyan}"/>
|
||||||
|
</Trigger>
|
||||||
<Trigger Property="IsPressed" Value="True">
|
<Trigger Property="IsPressed" Value="True">
|
||||||
<Setter TargetName="Bd" Property="Background" Value="{StaticResource Wd.Button.PressBg}"/>
|
<Setter TargetName="Bd" Property="Background" Value="{StaticResource Wd.Button.PressBg}"/>
|
||||||
</Trigger>
|
</Trigger>
|
||||||
|
|
@ -339,6 +356,10 @@
|
||||||
<Setter TargetName="Bd" Property="BorderBrush" Value="{StaticResource Wd.Accent.CyanHover}"/>
|
<Setter TargetName="Bd" Property="BorderBrush" Value="{StaticResource Wd.Accent.CyanHover}"/>
|
||||||
<Setter TargetName="Bd" Property="BorderThickness" Value="2"/>
|
<Setter TargetName="Bd" Property="BorderThickness" Value="2"/>
|
||||||
</Trigger>
|
</Trigger>
|
||||||
|
<Trigger Property="IsKeyboardFocused" Value="True">
|
||||||
|
<Setter TargetName="Bd" Property="BorderBrush" Value="{StaticResource Wd.Accent.CyanHover}"/>
|
||||||
|
<Setter TargetName="Bd" Property="BorderThickness" Value="2"/>
|
||||||
|
</Trigger>
|
||||||
<Trigger Property="IsPressed" Value="True">
|
<Trigger Property="IsPressed" Value="True">
|
||||||
<Setter TargetName="Bd" Property="BorderBrush" Value="{StaticResource Wd.Accent.Cyan}"/>
|
<Setter TargetName="Bd" Property="BorderBrush" Value="{StaticResource Wd.Accent.Cyan}"/>
|
||||||
<Setter TargetName="Bd" Property="BorderThickness" Value="2"/>
|
<Setter TargetName="Bd" Property="BorderThickness" Value="2"/>
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue