Skip to content

feat: add an unpackaged WinUI 3 app project next to the WPF app - #122

Merged
ManuelStaggl merged 1 commit into
mainfrom
feat/winui-project
Oct 30, 2026
Merged

ManuelStaggl merged 1 commit into
mainfrom
feat/winui-project

Conversation

@ManuelStaggl

Copy link
Copy Markdown
Owner

Closes #84

  • src/RigShift.UI: WinUI 3 (Windows App SDK 2.6.4), WindowsPackageType=None, self-contained, own Main (DISABLE_XAML_GENERATED_MAIN): Velopack first, then the existing CLI switch, then an empty window with Mica and a NavigationView.
  • AppLogging, AppPaths, CommandLineClient, CrashHandling, LogFileFormat and PipeTrust are linked as source from the WPF app until Move view models and app services out of the WPF project #86 moves them to a UI-free library. AppPaths got its own file for that.
  • The single-instance mutex name moved to PipeProtocol, so both apps and the CLI use the same one.
  • EnableMsixTooling: without it dotnet publish leaves out RigShift.UI.pri and the app crashes at start (0xc000027b in Microsoft.UI.Xaml.dll).
  • CI publishes the new app, runs --version and checks that it is still running 10 s after start.

Verified locally: build with warnings as errors, all tests, RigShift.UI.exe --help identical to RigShift.exe --help apart from the exe name, and the published Release build opens the window. Published folder: 282 MB, 524 files. #85 will measure size and memory against 4.5.1.

RigShift.UI targets the same TFM, is self-contained and unpackaged, and runs
Velopack and the command line before any XAML. It opens an empty window with
Mica and a NavigationView. The start-up services are linked as source from
the WPF app until they move to a UI-free library. The single-instance mutex
name moves to PipeProtocol so both apps and the CLI share it. CI publishes the
new app and checks that it starts.

Closes #84
@ManuelStaggl
ManuelStaggl merged commit a81625b into main Oct 30, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Add an unpackaged WinUI 3 app project next to the WPF app

1 participant