Repository navigation
Conversation
…ory and settings main UI
…ure links, settings
…gs-only host Revert the incorrect WinUI3 main-window/sidecar migration, restoring the native renderer, popup, history model and BGRA resources from ce5e92c. Preserve earlier controller timestamp, macOS, CI and settings DPI improvements. Respect UI specification section 11.3 and UI-222.
…or recognition semantics
…DPI and native C ABI
…3 Settings island
…tray/gear to same-process WinUI 3 host
…d retire Win32 settings fonts
…d Rust formatting
…LL for Windows x64
…ated Microsoft.UI.h
…UI controls and remove XAML codegen
…internal definition
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Purpose
Continue OpenShazam stability fixes on one draft PR while respecting the UI design document (v1.61, §11.3 and UI-222).
Architecture: native Rust + Win32/Direct2D/Windows Composition handles the tray, Shazam-style 380×610 DIP popup, artwork, history and motion. WinUI 3 is for the separate Settings window only. The GUI uses the existing typed Rust recognition controller; there is no JSONL recognition sidecar in the product UI.
Valid changes preserved
webtrackurl.hrefhandling; do not invent a track page URL.Design compliance restoration
Commit
71fb1eb0f669e3e1552100bcfafb0960c97108f1fully reverses the mistakenly implemented WinUI 3 main window and Rust JSONL recognition sidecar, restoring the original native Win32/Composition renderer, UI model, popup entrypoint and four BGRA assets. It also restores the Settings-only XAML, original app assembly identity, README and CI.A tree comparison confirms the current checkout's file tree is identical to
ce5e92c890a06ba0a1373e9f7c2d489433639072— the last correct pre-migration commit. All earlier valid fixes remain present.WinUI 3 Settings-only migration (integration in progress)
Design §11.3 is the binding UI decision. The Rust Win32/Direct2D/Composition recognition popup, tray, result card, artwork, history and audio backend remain native. The legacy Win32 Settings window, its dedicated painter, old click regions, window kind and styles have been removed in the working branch; the tray menu and gear now lazily invoke a C++/WinRT, same-process
DesktopWindowXamlSourcehost via narrow four-function C ABI. There is no Settings process spawn or second recognition engine. The new Settings UI uses native WinUI 3ScrollViewer,ToggleSwitch,InfoBar, OS theme/font resources and Windows StartupTask state. Initial device DPI and per-monitor window changes are wired.tools/build-windows.ps1builds the original Rust tray executable together withOpenShazam.SettingsHost.dlland stages them together. A dedicated Windows native CI job compiles the C++/WinRT WinUI 3 island and builds the Rust EXE as an artifact. Old C# settings-only test application still exists temporarily while native compile/run verification is in progress.Do not interpret the source change as a completed product migration yet. Native C++/WinRT compilation is being debugged (WinAppSDK native NuGet closure / WinUI / WebView2 WinMD). Physical Windows focus/input, XAML initialization on the native composition thread, MSIX Runtime, high-DPI and packaged StartupTask need independent checks. The PR must remain Draft until validated, with no automatic fallback to the deleted Win32 Settings UI.
Verification / release safety
The draft PR is not ready for merge until the latest Windows/macOS/Linux Rust checks, Windows GNU target, and WinUI Settings build complete, followed by physical Windows audio, native popup, DPI, notification-area, and MSIX testing.
Do not merge or write directly to
mainwithout user approval.