Flow.Launcher/Flow.Launcher.Avalonia/App.axaml
Hongtao Zhang 0f9b9329dd Add hotkey recorder with manual modifier tracking
- Add HotkeyRecorderDialog with global keyboard hook for capturing hotkeys
- Implement manual modifier state tracking to handle swallowed key events
- Add HotkeyControl button that opens the recorder dialog
- Add CheckAvailability and RemoveToggleHotkey to HotKeyMapper
- Expose GetKeyFromVk helper in GlobalHotkey infrastructure
- Add Settings pages (General, Plugin, Theme, Proxy, About)
- Add PreviewPanel for result previews in main window
- Fix hook reuse issue by clearing callback on close instead of disposing
2026-01-18 02:10:53 -08:00

42 lines
1.9 KiB
XML

<Application xmlns="https://github.com/avaloniaui"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:Flow.Launcher.Avalonia"
xmlns:sty="using:FluentAvalonia.Styling"
xmlns:i18n="using:Flow.Launcher.Avalonia.Resource"
x:Class="Flow.Launcher.Avalonia.App"
RequestedThemeVariant="Default">
<!-- "Default" ThemeVariant follows system theme variant.
"Dark" or "Light" are other available options. -->
<Application.Styles>
<sty:FluentAvaloniaTheme />
<StyleInclude Source="avares://Flow.Launcher.Avalonia/Themes/Base.axaml"/>
</Application.Styles>
<Application.Resources>
<ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
<!-- Embedded fonts -->
</ResourceDictionary.MergedDictionaries>
<!-- Register Segoe Fluent Icons font for glyph icons -->
<FontFamily x:Key="SegoeFluentIcons">avares://Flow.Launcher.Avalonia/Resources#Segoe Fluent Icons</FontFamily>
</ResourceDictionary>
</Application.Resources>
<TrayIcon.Icons>
<TrayIcons>
<TrayIcon Icon="avares://Flow.Launcher.Avalonia/Images/app.ico"
ToolTipText="Flow Launcher"
Clicked="TrayIcon_OnClicked">
<TrayIcon.Menu>
<NativeMenu>
<NativeMenuItem Header="{i18n:Localize show}" Click="MenuShow_OnClick" />
<NativeMenuItem Header="{i18n:Localize settings}" Click="MenuSettings_OnClick" />
<NativeMenuItemSeparator />
<NativeMenuItem Header="{i18n:Localize exit}" Click="MenuExit_OnClick" />
</NativeMenu>
</TrayIcon.Menu>
</TrayIcon>
</TrayIcons>
</TrayIcon.Icons>
</Application>