This repository was archived by the owner on Jul 6, 2026. It is now read-only.
Repository navigation
release_1.4.0
·
53 commits
to master
since this release
🚀 New Features
- Enhanced Image Saving: Refactored image saving logic into a dedicated
ImageSaveService. It now includes more robust overwrite confirmations and atomic file operations (using temporary files) to prevent data corruption. - Global UI Styling: Consolidated shared UI styles (like the
ImageSuggestionButtonStyle) intoApp.xamlto improve maintainability and visual consistency across the application.
🛠️ WebView2 Improvements
- Initialization Reliability: Improved the WebView2 startup process by moving it to the
Loadedevent and implementing a state flag to prevent multiple simultaneous initialization attempts. - Custom Data Folder: The WebView2 control now uses a specific folder in
LocalAppData. This resolves common "Operation Aborted" errors caused by permission issues or file locking in the default directory. - Better Error Handling: Added specific handling for
E_ABORTand "Runtime Not Found" scenarios, providing users with clear instructions and download links if the component is missing.
🧹 Refactoring & Architecture
- Service Consolidation: Created
WebSearchServiceandImageSaveServiceto decouple business logic from theMainWindowcode-behind. - Namespace Cleanup: Moved
ObjectToBoolConverterto theServicesnamespace and updated references across XAML files. - Code Modernization:
- Implemented
[GeneratedRegex]for improved performance in filename cleaning. - Updated LINQ queries to use
staticlambdas where possible to reduce allocations. - Adopted C# 12 collection expressions in
SettingsManager.
- Implemented
- Dependency Updates: Updated several NuGet packages, including
Magick.NET(v14.11.1),Microsoft.Web.WebView2(v1.0.3856.49), andPolly(v8.6.6).
🛡️ Stability & Bug Reporting
- Enhanced Error Logging: Integrated
BugReport.LogErrorAsyncacross all critical paths, including MAME data parsing, clipboard operations, API search failures, and file system interactions. - Robust Networking: Improved
BugReportservice with specific catch blocks forJsonException,IOException, andInvalidOperationExceptionto ensure the reporter itself doesn't crash during failure states.
📝 Miscellaneous
- Cleanup: Removed unused properties from
GoogleImageInfoand deleted obsolete partial class files.