You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Windows] Verify: flashes and blank frames on start, show, restore and maximize #75
These were reported against window_manager 0.5.x, whose platform code is gone: window_manager 0.6.0 is rebuilt on nativeapi. None of them has been checked against nativeapi yet. Each needs a reproduction with nativeapi (a Flutter app on the Window API), then a fix or a note that it no longer happens. Tick them off here as they're checked.
Replayed with the real nativeapi Flutter Window API in a real Flutter Windows app (Windows 11 build 26200, Flutter 3.47.6 debug): tools/gui/flutter_window_reports_test.ps1 builds the fixture tools/gui/window_reports_flutter.dart against the workspace's Dart packages, paints solid colours, and measures native geometry, styles, DWM caption buttons, pixels and frame-by-frame samples. No keyboard input; the only clicks are owner-guarded ones on the app's own window. The suite passes repeatedly on core 9d6b50d (workspace libnativeapi/nativeapi@2894880).
#428 — no white or black frame at startup (frames sampled from process start; the window only appears with its content).
#504 / #223 — sized and center()ed before the first frame: it appears where it stays, centred (as Windows measures the window, invisible resize borders included), no jump.
#412 / #572 — reproduced and fixed (9d6b50d): maximize() before the first show showed the window maximized at once, and the Flutter runner's own first-frame ShowWindow(SW_SHOWNORMAL) then restored it to the default size, with a black frame on the way. Maximize() on a window that is not shown yet now keeps it hidden with the request recorded; whatever shows it, it appears maximized from its first visible frame (IsMaximized() reports the request, Unmaximize() takes it back). Now: maximized from the first sample, still maximized 2 s later. Core test: window_startup_maximize_windows_test.
#383 — no white or black frame while maximize() runs (~50 frames per point).
#153 — no black frame while restoring from maximized.
#155 — no white or black frame once the window is visible again after hide() / show().
#578 — the window dragged by its title bar until 40 % is off screen and back (real owner-guarded drag): the uncovered part shows content at the first sample after release.
Activity
Show a window maximized before its first show maximized (#75)
lijy91 commentedon Oct 7, 2026
Replayed with the real nativeapi Flutter Window API in a real Flutter Windows app (Windows 11 build 26200, Flutter 3.47.6 debug):
tools/gui/flutter_window_reports_test.ps1builds the fixturetools/gui/window_reports_flutter.dartagainst the workspace's Dart packages, paints solid colours, and measures native geometry, styles, DWM caption buttons, pixels and frame-by-frame samples. No keyboard input; the only clicks are owner-guarded ones on the app's own window. The suite passes repeatedly on core 9d6b50d (workspace libnativeapi/nativeapi@2894880).center()ed before the first frame: it appears where it stays, centred (as Windows measures the window, invisible resize borders included), no jump.maximize()before the first show showed the window maximized at once, and the Flutter runner's own first-frameShowWindow(SW_SHOWNORMAL)then restored it to the default size, with a black frame on the way.Maximize()on a window that is not shown yet now keeps it hidden with the request recorded; whatever shows it, it appears maximized from its first visible frame (IsMaximized()reports the request,Unmaximize()takes it back). Now: maximized from the first sample, still maximized 2 s later. Core test:window_startup_maximize_windows_test.maximize()runs (~50 frames per point).hide()/show().All eight checked; closing.