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
Commit 2894880
Browse filesBrowse the repository at this point in the historyBrowse files
Sync with core 9d6b50d: replay the #75 flash reports too
The window_manager reports fixture gets startup-center, startup-maximize and
flashes: frames sampled from process start and through maximize, restore,
show after hide and an off-screen drag. It found maximize() before the
first show reverting on the Flutter runner's first frame (fixed in core).
All covered reports of #75-#78 now behave.
Copy file name to clipboardExpand all lines: tools/gui/README.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -22,7 +22,7 @@ runner) lives in [`.agents/skills/`](../../.agents/skills); read
22
22
|`flutter_window_title_bar_system_menu_test.ps1`|`window_title_bar_example` (#66) | Windows | End to end in a real Flutter app: a secondary click on the `DragToMoveArea` strip opens the native system menu at the pointer; its item states match the window (restored: Restore off; maximized: Move, Size, Maximize off); choosing Maximize maximizes and, from a second menu, Restore restores to the earlier width. Items are taken by their fixed order, so any display language works. Owner-guarded clicks, no keyboard. Set `TITLE_BAR_EXAMPLE_EXE` for a build outside `$RemoteWorkspace`. |
23
23
|`flutter_window_title_bar_close_test.ps1`|`window_title_bar_example` (#65) | Windows | End to end in a real Flutter app: with Closing set to Keep open, the example cancels `WindowCloseRequestedEvent`; a real click on the window's own close button (found through DWM's caption button bounds) and the system menu's Close each leave the window open and count one cancelled request; with Allow, the close button closes the window and the app exits with code 0. Owner-guarded clicks, no keyboard. Set `TITLE_BAR_EXAMPLE_EXE` for a build outside `$RemoteWorkspace`. |
24
24
|`flutter_window_title_bar_close_test_linux.py`|`window_title_bar_example` (#65) | Linux (GNOME) | The Linux twin of the close test: with Keep open, two real clicks on the header bar's close button (found by its accessible name through AT-SPI) are cancelled and counted; with Allow the click closes the window and the app exits with code 0. The Flutter view is located through AT-SPI too, since the runner's header bar sits inside the X11 client area. The system menu is gnome-shell's and is not driven. Set `TITLE_BAR_EXAMPLE_EXE` for a build outside `$REMOTE_WORKSPACE`. |
25
-
| `flutter_window_reports_test.ps1` | fixture `window_reports_flutter.dart` (#76, #77, #78) | Windows | The window_manager reports carried over to nativeapi-core, replayed through the Flutter Window API in a fixture app built from the workspace's Dart packages (`REPORTS_ARCHIVE`). The app paints solid colours and announces each step; the runner measures geometry, styles, DWM caption buttons, pixels and frame-by-frame samples. Scenarios (`REPORTS_SCENARIOS`): `fullscreen` (#458 start in full screen and leave it, #579 caption back, #330 no stale content at the bottom), `hidden` (#547 top border as thick as the sides, #554/#450 maximized exactly to the work area, #378 no padding in full screen, #397 no caption flash when leaving it), `transparent` (#576 caption buttons and title with a transparent background), `events` (#294 focus last after restoring, #207 double-click on the caption maximizes and restores with Resized, #511 maximize() from onDoubleTapDown, #534 setIcon() from flutter_assets). Owner-guarded clicks on the app's own window only, no keyboard. Not covered: #480 (keyboard) and #245 (two monitors). |
25
+
| `flutter_window_reports_test.ps1` | fixture `window_reports_flutter.dart` (#75, #76, #77, #78) | Windows | The window_manager reports carried over to nativeapi-core, replayed through the Flutter Window API in a fixture app built from the workspace's Dart packages (`REPORTS_ARCHIVE`). The app paints solid colours and announces each step; the runner measures geometry, styles, DWM caption buttons, pixels and frame-by-frame samples. Scenarios (`REPORTS_SCENARIOS`): `startup-center` (#428 no white or black frame, #504/#223 appears where it stays, centred), `startup-maximize` (#412/#572 maximized before the first show appears maximized and stays so), `flashes` (#383/#153/#155 no white or black frame while maximizing, restoring or showing after hide, #578 a part dragged back from off screen painted within 100 ms), `fullscreen` (#458 start in full screen and leave it, #579 caption back, #330 no stale content at the bottom), `hidden` (#547 top border as thick as the sides, #554/#450 maximized exactly to the work area, #378 no padding in full screen, #397 no caption flash when leaving it), `transparent` (#576 caption buttons and title with a transparent background), `events` (#294 focus last after restoring, #207 double-click on the caption maximizes and restores with Resized, #511 maximize() from onDoubleTapDown, #534 setIcon() from flutter_assets). Owner-guarded clicks on the app's own window only, no keyboard. Not covered: #480 (keyboard) and #245 (two monitors). |
|`flutter_window_shape_smoke_macos.py` / `flutter_window_shape_test_windows.ps1`|`shaped_window_example`| macOS / Windows | macOS: no-input shape and pixel-alpha smoke test; Windows: native regions, real button clicks/drag, resize, clear/reapply, click-through to the underlying app window |
28
28
|`flutter_detachable_window_test.py` / `.ps1`|`detachable_window_example`| macOS / Windows | tear a panel off, exact content size, header stays under the cursor, dock into the other window, `State` preserved |
Check '#155 show() after hide() shows no white or black frame' ($seen[0].Count -gt0-and$bad.Count-eq0) "$($seen[0].Count) frames per point, flashes: $(($bad|Select-Object-Unique) -join'')"
376
+
Wait-Step'drag'|Out-Null
377
+
# #578: drag the window by its title bar until 40% of it is off the left
378
+
# edge, back again, then time how long the uncovered part stays unpainted.
0 commit comments