On Fri, 21 Jul 2023 21:45:56 GMT, John Hendrikx <jhendr...@openjdk.org> wrote:
>> Prasanta Sadhukhan has updated the pull request incrementally with one >> additional commit since the last revision: >> >> Check FXEnabled initially > > modules/javafx.swing/src/main/java/javafx/embed/swing/JFXPanel.java line 1069: > >> 1067: >> 1068: @Override >> 1069: public void setEmbeddedScene(EmbeddedSceneInterface >> embeddedScene) { > > Same comment as with `setEmbeddedStage`; surrounding all accesses to > `scenePeer` and `stagePeer` like this is not the way to do it, and looks > incorrect. I think this is more in the right direction: > > public void setEmbeddedScene(EmbeddedSceneInterface embeddedScene) { > synchronized(LOCK) { > if (scenePeer == embeddedScene) { > return; > } > scenePeer = embeddedScene; > } > > if (embeddedScene == null) { > invokeOnClientEDT(() -> { > if (dnd != null) { > dnd.removeNotify(); > dnd = null; > } > }); > return; > } > if (pWidth > 0 && pHeight > 0) { > embeddedScene.setSize(pWidth, pHeight); > } > embeddedScene.setPixelScaleFactors((float) scaleFactorX, (float) > scaleFactorY); > > invokeOnClientEDT(() -> { > dnd = new SwingDnD(JFXPanel.this, scenePeer); > dnd.addNotify(); > > embeddedScene.setDragStartListener(dnd.getDragStartListener()); > }); > } ok ------------- PR Review Comment: https://git.openjdk.org/jfx/pull/1178#discussion_r1271826532