Commit 26 of 27:
512de9f5b0
docs: describe cross-platform named-window lifecycle
previous
next
whole branch
Review threads live on the whole diff, not on one commit, so
none are shown here - a thread's line means something in the
branch's final form, and painting it into an intermediate
step would put it on code it is not about.
docs/architecture/multi-window-ownership.md modified +4 -3 Changes to docs/architecture/multi-window-ownership.md ⋯ 17 lines Show the 17 lines above this hunk @@ -18,9 +18,10 @@ whether it stores a window-specific target. 18 18 | Permanent destroy and cleanup | Implemented for named windows | Implemented on close / destroy | Implemented on close / destroy | 19 19 | Modal and parent relationships | Unspecified | Unspecified | Unspecified | 20 20 21 - Issue # 67 remains open while the full CI matrix and the still - unspecified 22 - modal / parent semantics are reviewed . The Windows release archive now stages an 23 - app - local WebView2 loader ; users still need the Microsoft WebView2 Runtime . 21 + The runtime - creation , stable - handle , reply - routing , and event - scoping contract 22 + from issue # 67 is covered here . Modal / parent semantics remain separate future 23 + decisions . The Windows release archive stages an app - local WebView2 loader ; 24 + users still need the Microsoft WebView2 Runtime . 24 25 25 26 Linux and Windows keep their live native window / webview pairs in 26 27 `desktop_window_registry.zig` . Page messages are authenticated by the sending
docs/features/window-management.md modified +3 -2 Changes to docs/features/window-management.md ⋯ 484 lines Show the 484 lines above this hunk @@ -485,8 +485,9 @@ restore its DOM and JavaScript state. On Linux and Windows, closing releases 485 485 the native window and webview ; reopening the same ID creates a fresh page 486 486 behind the same stable SDK handle . Call `destroy()` to permanently release a 487 487 runtime - created window and its event subscriptions . The unnamed primary window 488 - cannot be force - destroyed through this API . CI exercises the Linux 489 - create / close / reopen path under Xvfb . 488 + cannot be force - destroyed through this API . CI exercises Linux 489 + create / close / reopen under Xvfb and the equivalent Windows WebView2 path , 490 + including concurrent child creation and stale - handle cleanup . 490 491 Modal / parent semantics are not part of the runtime - created - window contract yet . 491 492 See [ Multi - window ownership ] ( . . / architecture / multi - window - ownership . md ) for the 492 493 implemented routing guarantees , application - level event sinks and remaining
docs/usage.md modified +7 -6 Changes to docs/usage.md ⋯ 329 lines Show the 329 lines above this hunk @@ -330,15 +330,16 @@ await settingsWindow.focus() 330 330 `` ` 331 331 332 332 Calling `createWindow` again with the same `id` brings the retained native 333 - window forward and returns the same typed handle . Runtime creation currently 334 - uses the macOS host . `close()` retains that page for a later reopen , while 335 - `destroy()` permanently releases a runtime - created window ; the unnamed primary 336 - window is not destroyable through this API . Modal and parent - window 337 - relationships are not supported . 333 + window forward and returns the same typed handle on macOS , Linux , and Windows . 334 + On macOS , `close()` retains the page for a later reopen . On Linux and Windows , 335 + closing releases the native page ; reopening the same ID creates a fresh one 336 + behind the stable typed handle . `destroy()` permanently releases a 337 + runtime - created window ; the unnamed primary window is not destroyable through 338 + this API . Modal and parent - window relationships are not supported . 338 339 339 340 The [ multi - window ownership contract ] ( architecture / multi - window - ownership . md ) 340 341 tracks which state is window - scoped , which events intentionally target the 341 - primary page and what remains before the feature is cross - platform . 342 + primary page , and which advanced behaviors remain outside the contract . 342 343 343 344 ### Window Lifecycle Events 344 345