release_2.6.0
·
45 commits
to master
since this release
✨ Key UI Improvements
- Loading Overlays: Full-screen progress indicators with descriptive text replace inline spinners
- Cached Context Menus: Right-click menus now reuse instances for smoother repeated interactions
🛠 Technical Refinements
- Threading Overhaul: Better async patterns, cancellation support, and resource disposal across all services
- Image Processing: Robust retry logic for file locks (OneDrive/antivirus), atomic writes, orphaned temp cleanup
- Data Binding: Fixed image dimension bindings, added
MissingImageItemmodel for cleaner ListBox binding - Error Resilience: Granular locking in ErrorLogger, UI thread safety in AudioService, graceful mame.dat handling
📈 Performance & Reliability
- Swapped Parallel.ForEach → Task.WhenAll for better cancellation
- Lazy initialization for heavy resources (broken images, MAME data)
- Source-generated regex, C#14 static lambdas, pattern matching throughout
Result: Smoother UX during searches, fewer binding errors, bulletproof file operations 🚀