43 references to PanelKey
Aspire.Tray.Tests (43)
LinuxTrayTests.cs (1)
189Assert.Equal(expected is null ? null : Enum.Parse<PanelKey>(expected), LinuxTrayPanel.MapKey(key, shift));
src\Aspire.Tray\Common\TrayPanel.cs (10)
412public PanelResponse Key(PanelKey key) 416case PanelKey.Escape: 443case PanelKey.Enter or PanelKey.Space: 452case PanelKey.Tab or PanelKey.ShiftTab: 453return MoveFocus(Scene.Targets.Where(target => target.Enabled).ToList(), key == PanelKey.Tab ? 1 : -1, wrap: true); 458PanelKey.Home => FocusAt(primary, 0), 459PanelKey.End => FocusAt(primary, primary.Count - 1), 460_ => MoveFocus(primary, key == PanelKey.Down ? 1 : -1, wrap: false)
src\Aspire.Tray\Linux\LinuxTrayPanel.cs (11)
596internal static PanelKey? MapKey(uint key, bool shift) => key switch 5980xFF52 => PanelKey.Up, 5990xFF54 => PanelKey.Down, 6000xFF09 => shift ? PanelKey.ShiftTab : PanelKey.Tab, 6010xFE20 => PanelKey.ShiftTab, 6020xFF0D or 0xFF8D => PanelKey.Enter, 6030x20 => PanelKey.Space, 6040xFF1B => PanelKey.Escape, 6050xFF50 => PanelKey.Home, 6060xFF57 => PanelKey.End,
TrayPanelTests.cs (21)
179Assert.Null(panel.Key(PanelKey.Enter).Action); 290panel.Key(PanelKey.Enter); 292panel.Key(PanelKey.Down); 294panel.Key(PanelKey.Enter); 295panel.Key(PanelKey.Down); 296panel.Key(PanelKey.Down); 300Assert.Null(panel.Key(PanelKey.Escape).Action); 303panel.Key(PanelKey.Down); 305Assert.Null(panel.Key(PanelKey.Escape).Action); 308Assert.Equal(PanelActionKind.Close, panel.Key(PanelKey.Escape).Action?.Kind); 504panel.Key(PanelKey.Down); 508panel.Key(PanelKey.Down); 528panel.Key(PanelKey.Tab); 534panel.Key(PanelKey.Tab); 536panel.Key(PanelKey.ShiftTab); 545Assert.Equal(PanelActionKind.Close, panel.Key(PanelKey.Escape).Action?.Kind); 581var first = panel.Key(PanelKey.Escape); 586Assert.Equal(PanelActionKind.Close, panel.Key(PanelKey.Escape).Action?.Kind); 726var escape = panel.Key(PanelKey.Escape); 773panel.Key(PanelKey.Down); 786panel.Key(PanelKey.End);