-
High-DPI display support: DRM auto-downscale for panels exceeding 1920px, xlarge font constants for large displays, and fbdev resolution warnings (#773, #774)
-
Android system keyboard toggle using native IME via SDL_StartTextInput (#774)
-
Android ghost navigation bar with edge-swipe reveal and inactivity auto-hide
-
GPU-accelerated SDL drawing backend with fixed temperature graph gradient bands
-
Pre-print overlay now dismisses via authoritative Moonraker PRINTING state and RESPOND gcode completion match, replacing heuristic layer/progress triggers
-
Zip archive support in release pipeline with tar.gz fallback
-
Heap stats and startup phase snapshots in telemetry
-
UX micro-breakpoints for responsive layouts (#763)
-
Android black screen on app resume caused by missed SDL events while backgrounded (#774)
-
Android high-DPI aliasing eliminated with integer display scaling (#774)
-
Android crash reporter HTTPS failures bridged via JNI on devices without libhv SSL (#774)
-
WiFi wizard click handler crash on deferred-deleted list items (#778)
-
Nozzle temperature rows going stale due to lifetime token gate on version observer (#782)
-
Printer discovery SIGSEGV from unsynchronized hardware struct copy (#777)
-
DRM auto-downscale now correctly skipped when user explicitly sets -s (#773)
-
Bed mesh fallback probe count divided by samples-per-point to match actual probe density
-
G-code viewer streaming load failure now shows an error toast instead of crashing
-
Null-guard on Moonraker API notify callback (#765)
-
IFS spool eject detection via empty color field on Adventurer5M (#631)
-
QWERTZ and AZERTY barcode scanner keymap support
-
Webcam list filtered by service type to exclude unsupported streams
-
Print select retries empty thumbnails on panel revisit
-
G-code viewer layer re-frozen on terminal to idle transition