close
Skip to content

Avalonia: Feature parity with WinUI#4669

Merged
Gabriel Dufresne (GabrielDuf) merged 18 commits intomainfrom
featureParity
May 1, 2026
Merged

Avalonia: Feature parity with WinUI#4669
Gabriel Dufresne (GabrielDuf) merged 18 commits intomainfrom
featureParity

Conversation

@GabrielDuf
Copy link
Copy Markdown
Contributor

@GabrielDuf Gabriel Dufresne (GabrielDuf) commented May 1, 2026

This PR brings the Avalonia (cross-platform) port to full feature parity with the WinUI 3 application. The work covers every major surface area that was previously missing or incomplete.

Package lists & filter pane

  • Resizable filter pane with GridSplitter (replaces fixed SplitView); auto-closes when dragged below 100 px; switches to overlay mode on narrow windows
  • Per-page filter-pane width and overlay-state persistence across navigation
  • Hierarchical sources tree in the filter pane
  • Package tag state badges (installed, upgradable, pinned, on-queue, processing, failed)
  • Custom package icons loaded and displayed in list, grid, and icon views
  • Type-to-search with a global search-box focus API

Operations panel

  • Bulk operations (queue all, cancel all, retry all)
  • Expand/collapse all output cards
  • Per-card expand button in grid and icon views
  • Per-line color coding in the operation output window

Package details & install options

  • Installation options accessible from the package details window
  • InstallOptionsControl extracted as a reusable component; InstallOptionsWindow reuses it

Operations & dialogs

  • AvaloniaPackageOperationHelper — full operation lifecycle (install, update, uninstall, custom)
  • OperationFailedDialog, MissingDependencyDialog, IntegrityViolationDialog, SimpleErrorDialog, BundleSecurityReportDialog, DiscardBundleChangesDialog - Windows tray icon service
  • CLI argument handler (AvaloniaCliHandler)
  • Crash handler

Settings & backup

  • Clear-successful-operations setting
  • Cloud backup triggered on app load
  • Metered-connection auto-update gate

Platform & infrastructure

  • WebView with Windows implementation and Linux fallback
  • AvaloniaOperationRegistry and AvaloniaBootstrapper for operation wiring
  • App manifest updated for Windows UAC / DPI awareness
  • Chocolatey package build script added

…tence

When the content area is < 1000px wide, the filter pane switches to overlay
mode: it floats on top of the package list with a semi-transparent backdrop
that dismisses it on tap, matching WinUI's SplitView overlay behaviour.

Per-page filter pane open/closed state and pixel width are now persisted to
settings (HideToggleFilters / SidepanelWidths) and restored on next launch,
matching the WinUI implementation.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@aryanchoudharypro
Copy link
Copy Markdown
Contributor

Hello, just wanted to clarify if you plann to discontinue the win ui 3 version. If yes, i'd Appreciate if you could keep screen reader accessibility in mind when developing this new version. Thanks.

@GabrielDuf
Copy link
Copy Markdown
Contributor Author

Aryan Choudhary (@aryanchoudharypro),
Hello! Yes, the plan is to eventually move fully to Avalonia since it allows us to support multiple platforms more effectively. Accessibility is definitely something we’re keeping in mind during this transition.

I’ve already started working on some accessibility layers, and if you’re interested, you can take a look at this PR: #4582

@GabrielDuf Gabriel Dufresne (GabrielDuf) merged commit 73dbe37 into main May 1, 2026
1 check passed
@GabrielDuf Gabriel Dufresne (GabrielDuf) deleted the featureParity branch May 1, 2026 13:48
@aryanchoudharypro
Copy link
Copy Markdown
Contributor

Aryan Choudhary (Aryan Choudhary (@aryanchoudharypro)), Hello! Yes, the plan is to eventually move fully to Avalonia since it allows us to support multiple platforms more effectively. Accessibility is definitely something we’re keeping in mind during this transition.

I’ve already started working on some accessibility layers, and if you’re interested, you can take a look at this PR: #4582

seems very comprehensive, i myself will also try to support that accessibility support as much as i can manage!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

3 participants