Is your feature request related to a problem? Please describe.
The application currently uses default OS window chrome (title bar and borders), which doesn't provide a cohesive, modern aesthetic that matches the app's comic-inspired personality. Custom window chrome would give AvaloniaXKCD a more polished, distinctive appearance.
Describe the solution you'd like
Design and implement custom window chrome for AvaloniaXKCD following modern Avalonia best practices:
- Follow the Avalonia UI tutorial on creating a modern-looking window
- Research Avalonia's
WindowChrome and ExtendClientArea APIs
- Design and implement a custom title bar and window frame in XAML that aligns with the application's aesthetic
- Create a reusable custom title bar control (buttons, drag region, app name/logo)
- Ensure all standard window controls (minimize, maximize, close) are correctly wired to host OS logic
- Add animations or visual polish where appropriate (hover, active states)
- Ensure window behavior (drag, resize, minimize/maximize/close) works correctly on all desktop platforms
- Test under dark/light modes and different DPI settings
- Verify custom chrome behaves correctly across all desktop targets (
AvaloniaXKCD.Desktop, potential macOS/Linux ports)
- Document the structure and styling for future customization
References:
Describe alternatives you've considered
- Keeping default OS chrome, but this provides less visual distinctiveness.
Additional context
Acceptance Criteria:
Is your feature request related to a problem? Please describe.
The application currently uses default OS window chrome (title bar and borders), which doesn't provide a cohesive, modern aesthetic that matches the app's comic-inspired personality. Custom window chrome would give AvaloniaXKCD a more polished, distinctive appearance.
Describe the solution you'd like
Design and implement custom window chrome for AvaloniaXKCD following modern Avalonia best practices:
WindowChromeandExtendClientAreaAPIsAvaloniaXKCD.Desktop, potential macOS/Linux ports)References:
Describe alternatives you've considered
Additional context
Acceptance Criteria: