🚀 Release Update: Major Stability, UI, and Architecture Improvements
yoAnimeServer — March 2026 Update
Over the past development cycle, we delivered one of the largest stability and usability upgrades to yoAnimeServer since the introduction of Integrated Mode. This update strengthens the PowerPoint‑integrated overlay system, increases resiliency, sharpens UX responsiveness, and ensures a smoother experience for creators, presenters, and power users.
This post highlights every major update made recently, including fixes, refactors, visual enhancements, new guardrails, and deep architectural improvements.
🌟 1. New: DPI‑Perfect Full‑Screen WPF Window Sizing
In earlier builds, the MainWindow used SystemParameters.PrimaryScreenWidth/Height, which are DIPs, not physical pixels.
This caused the overlay to appear slightly smaller in Live Visual Tree on machines with 125–150% scaling.
What’s new
- A new
ApplyInitialScreenSize()implementation now:- Detects the monitor using
MonitorFromWindow() - Reads physical pixel resolution
- Converts using actual DPI (
GetDpiForWindow()) - Sets
Width/Height/Left/Topin clean DIPs
- Detects the monitor using
Result:
Your WPF overlay now matches the monitor pixel‑perfectly, regardless of scaling or fractional DPI setups.
🌟 2. New: Status Bar Always Visible Over the Welcome Screen
Previously, in Standalone Mode, the Status Bar HUD could appear behind the Welcome Window.
This has been fixed by introducing:
SetHudTopmost(true)when showing Welcome WindowSetHudTopmost(false)when transitioning to Integrated Mode
Result:
Status messages are always visible, even before integrating with PowerPoint.
🌟 3. New: Crash Reporting Banner Logic Fixed
The HUD previously showed:
🛡️ Crash Reporting READY — Click Test Button!
…even when Crash Reporting was disabled.
Fixes implemented:
- Removed unconditional banner from
MainWindowconstructor - Banner is now shown only when:
- Crash Reporting is enabled and
- App has fully initialized DI
- Optional “Crash reporting disabled” info msg available
Result:
HUD now always reflects the correct Crash Reporting state.
🌟 4. New: Parent Integrity Monitor (Fully Implemented & Documented)
A full gate‑aware, UI‑safe, pipeline‑delegated parent integrity monitor now ensures your overlay remains correctly attached to PowerPoint.
Key features:
- Runs on safe intervals (≥ 1s)
- Only repairs after:
- Handshake complete
- PanesReady received
_readyToParent = true- PowerPoint window visible & not minimized
- Delegates repair through unified parenting pipeline
- Throttling avoids repeated fixes
- TRACE‑level “verified ok” logging keeps noise low
Result:
Overlay remains stable, anchored, and sized correctly—even through theme changes, DPI transitions, minimize/restore, or tab switches.
🌟 5. New: Coalesced Resizing + WM_WINDOWPOSCHANGED Noise Reduction
To avoid resize‑storms and flickering:
- Added
_resizeCoalescePendingflag - Coalesces WM_WINDOWPOSCHANGED events
- Only performs one resize per burst
- All repairs run through dispatcher-safe logic
Result:
UI feels smoother, with fewer flickers and no resizing thrash during window transitions.
🌟 6. New: Visibility & Minimized Guards Everywhere
To prevent incorrect or dangerous SetParent/resize operations, new guards were added:
IsWindowVisible(anchor)!IsIconic(anchor)- Desktop/Progman/WorkerW transient parent suppression
These appear in:
ResizeToParentClientArea()- Parent Integrity Monitor
- WM_WINDOWPOSCHANGED handler
- Parent sync timer
- Parent pipeline logic
Result:
No more corrupt sizes or incorrect parenting when PowerPoint is minimized or in transient UI states.
🌟 7. New: Unified Parenting Pipeline Strengthened
The pipeline now ensures:
- Only one authority determines SetParent behavior
- All parent repairs use:
- Style preconditions
- DPI-aware resizes
- Transient parent suppression
- Retry/backoff rules
- Telemetry beacons
- Full safety guarantees:
- No pre‑gate attachments
- No attachment to hidden/minimized parents
- No duplicate or conflicting SetParent calls
Result:
More predictable Integrated Mode behavior and industry-grade stability.
🌟 8. New: MainWindow Early-Show Improvements
In Standalone/Welcome Mode:
- MainWindow is shown early (non-activating, transparent)
- Status messages are visible from startup
- Does not steal focus
- Correctly sizes itself before showing
Result:
Cleaner onboarding, better diagnostics, improved UX.
🌟 9. New: HTML Documentation Page for Parent Integrity System
A full WordPress-ready HTML documentation page was created to describe:
- Architecture
- State machine
- Algorithm flow
- Guardrails
- Pseudocode
- Operator playbook
- Failure modes
- Related docs
This page is now ready to be published in /docs/integrated/parent-integrity/.
🌟 10. New: Unified Release Documentation Strategy for Integrated Mode
We established a comprehensive documentation plan, including:
Tier A (Foundation)
- Lifecycle & Handshake
- Deferred Startup (UI vs Background)
- PowerPoint Discovery & Safe Attach/Launch
- PowerPoint Instance Tracking
Tier B
- VSTO Registration (MSI/MSIX/Dev)
Tier C
- Parenting State Machine
- AppFrame Discovery
- Parent Integrity Monitor
- Elevation/UIPI
- PanesReady Sequence
This will shape the official dev documentation for future releases.
🌟 11. Many Smaller Enhancements & Fixes
IsIconic()added to NativeMethods- Improved DPI-change handling
- WM_DPICHANGED now properly guards resize noise
- Avoid resize when WindowState != Normal
- MainWindow now uses crisp rendering flags
(SnapsToDevicePixels,UseLayoutRounding) - Debug panel visibility tied to Test Crash Mode
- Simplified size logs, removed noisy duplicates
- Anchored-slide resizing logic hardened
- Improved logging clarity & trace-level correctness
🎉 Final Result: A More Stable, Predictable, and Professional Integrated Runtime
This release dramatically increases:
- Runtime stability
- Parent integrity reliability
- DPI correctness
- WPF/PowerPoint coordination
- User experience consistency
- Startup clarity
- Developer observability
- Operational safety
Your overlay behaves correctly across:
- DPI changes
- Display switching
- Minimize/restore
- PowerPoint theme transitions
- Welcome vs Integrated modes
- Multi-window context
- Task pane readiness
- Session reconnects / reactivations
Everything now flows through a single, battle‑hardened pipeline.