On Thu, 12 Jun 2025 19:39:30 GMT, Michael Strauß <mstra...@openjdk.org> wrote:

>> Implementation of 
>> [`StageStyle.EXTENDED`](https://gist.github.com/mstr2/0befc541ee7297b6db2865cc5e4dbd09).
>
> Michael Strauß has updated the pull request with a new target base due to a 
> merge or a rebase. The pull request now contains 108 commits:
> 
>  - Fix full-screen bug
>  - Merge branch 'master' into feature/extended-window
>  - only dispose ViewSceneOverlay when non-null
>  - Rename default window button style classes
>  - Set the scene root as the parent of the overlay node
>  - rename WindowManager to DesktopEnvironment
>  - enable preview feature system properties for tests
>  - javadoc fix
>  - fix memory leak in ViewScene
>  - Merge branch 'master' into feature/extended-window
>  - ... and 98 more: https://git.openjdk.org/jfx/compare/72c1c21a...3fdc465f

I left some comments, will re-approve if you decide to change anything. Testing 
looks good.

modules/javafx.graphics/src/main/java/javafx/scene/Parent.java line 1932:

> 1930:         // When we have a scene overlay (like the full-screen 
> notification message or default window buttons
> 1931:         // of an extended stage), the scene root is the parent of the 
> overlay node. However, the overlay node
> 1932:         // is not contained in the scene root's children list, because 
> it is not a publicly accessibly part of

minor: accessibly -> accessible

modules/javafx.graphics/src/main/java/javafx/scene/Parent.java line 1935:

> 1933:         // the scene graph. When this method is called on the root 
> node, we need to check whether the supposed
> 1934:         // child is actually contained in the children list.
> 1935:         if (!childSet.contains(node)) {

My tests confirm that the issue occurs when `setChildDirty` is called on the 
overlay node. This method may also be called from `childIncluded`and 
`childExcluded` which seems to be triggered when a node's visibility changes. 
If this doesn't happen the fix looks fine. Alternative may be to move the check 
inside `setChildDirty`.

-------------

Marked as reviewed by mmack (Author).

PR Review: https://git.openjdk.org/jfx/pull/1605#pullrequestreview-2922633419
PR Review Comment: https://git.openjdk.org/jfx/pull/1605#discussion_r2143644730
PR Review Comment: https://git.openjdk.org/jfx/pull/1605#discussion_r2143657673

Reply via email to