Hi, I'm on Mac as well and just gave 8u181 a spin and see the same problem (beside others eg the DropDown popup does not move with window).
Just to make sure: It is curcial to not only bring up the DropDown-List but also open the Dialog-Window with the color-spectrum, ... . Tom On 31.07.18 14:34, Michael Paus wrote: > I did the test on a Mac. > > MacOS High Sierra > OpenJDK12ea4 > OpenJFX11ea20 (SDK) > > I just ran the code and repeated the steps given by Tom. > * Bring up the DropDown-List > * Bring up the custom color dialog > * Click somewhere in the JFrame > > Michael > > Am 31.07.18 um 14:19 schrieb Kevin Rushforth: >> I ran the test program on Windows 7 using JDK-11+24 plus my local >> build of openjfx 11, and I can't reproduce the problem. I suspect that >> Prasanta is correct in that this was fixed for FX/Swing interop by >> JDK-8185634 (on the FX side) and JDK-8187803 (on the AWT side). I >> don't know why you and Tom are still seeing this bug. What platform >> are you testing on? >> >> Note that this won't help SWT interop, though. A similar fix might be >> needed there (once we understand why the Swing interop test program >> isn't working for some of you). >> >> -- Kevin >> >> On 7/31/2018 4:45 AM, Michael Paus wrote: >>> Hi Tom >>> I gave it a try with the latest OpenJDK12ea and OpenJFX11ea and I still >>> see the same baviour which you described. >>> Michael >>> >>> Am 31.07.18 um 13:08 schrieb Tom Schindl: >>>> Hi, >>>> >>>> I give it a try but from the bug description and discussion I would >>>> have >>>> assumed it deals with the opposite problems (Opening a Swing-Dialog >>>> from >>>> an JavaFX-Application who uses Swing-Node). >>>> >>>> I also studied the code to see if how you make a JavaFX-Stage having a >>>> different owner but I could only find changes to AWT deal with this. >>>> >>>> Anyways I'll try to get it the latest master running. The issue states >>>> that it is fixed in 8u182 but only 8u181 is available and there are no >>>> EA-Builds of Java8 available anymore (Looks like Oracle does not want >>>> people to test fixes for upcoming 8-update anymore) >>>> >>>> Tom >>>> >>>> On 31.07.18 11:21, Prasanta Sadhukhan wrote: >>>>> Hi Tom, >>>>> >>>>> I am not able to see the problem in latest workspace. I believe this >>>>> issue is already fixed by JDK-8185634. >>>>> >>>>> Regards >>>>> Prasanta >>>>> On 7/31/2018 1:16 PM, Tom Schindl wrote: >>>>>> Hi, >>>>>> >>>>>> In one of our customers application we have major problems when >>>>>> embedding JavaFX into SWT (but from my tests the situation is >>>>>> equal for >>>>>> Swing). >>>>>> >>>>>> In the end all windows (most commonly popup-windows) are affected >>>>>> because they don't have a parent-window assigned and so they can be >>>>>> hidden by the window embedding them - if the window opened is >>>>>> Modal like >>>>>> eg the one from ColorPicker the JavaFX UI is also blocked. >>>>>> >>>>>> To see what I mean just use this snippet below and do the following: >>>>>> * Bring up the DropDown-List >>>>>> * Bring up the custom color dialog >>>>>> * Click somewhere in the JFrame >>>>>> >>>>>> You notice the following: >>>>>> * JavaFX Window is moved behind Swing-Window >>>>>> * JavaFX UI is blocked >>>>>> >>>>>>> package test; >>>>>>> >>>>>>> import javax.swing.JFrame; >>>>>>> >>>>>>> import javafx.application.Platform; >>>>>>> import javafx.embed.swing.JFXPanel; >>>>>>> import javafx.geometry.Pos; >>>>>>> import javafx.scene.Scene; >>>>>>> import javafx.scene.control.ColorPicker; >>>>>>> import javafx.scene.layout.BorderPane; >>>>>>> >>>>>>> public class TestSwingInterop extends JFrame { >>>>>>> public TestSwingInterop() { >>>>>>> setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); >>>>>>> final JFXPanel fxPanel = new JFXPanel(); >>>>>>> add(fxPanel); >>>>>>> Platform.runLater(new Runnable() { >>>>>>> @Override >>>>>>> public void run() { >>>>>>> initFX(fxPanel); >>>>>>> } >>>>>>> }); >>>>>>> } >>>>>>> private static void initFX(JFXPanel fxPanel) { >>>>>>> // This method is invoked on JavaFX thread >>>>>>> Scene scene = createScene(); >>>>>>> fxPanel.setScene(scene); >>>>>>> } >>>>>>> private static Scene createScene() { >>>>>>> ColorPicker picker = new ColorPicker(); >>>>>>> BorderPane.setAlignment(picker, Pos.TOP_LEFT); >>>>>>> BorderPane p = new BorderPane(picker); >>>>>>> return new Scene(p); >>>>>>> } >>>>>>> >>>>>>> public static void main(String[] args) { >>>>>>> TestSwingInterop s = new TestSwingInterop(); >>>>>>> s.setBounds(100, 100, 1000, 800); >>>>>>> s.setVisible(true); >>>>>>> } >>>>>>> } >>>>>> I've tested this on Java8 and Java9 but didn't had a chance to run >>>>>> it on >>>>>> the latest master. >>>>>> >>>>>> The problem is that the newly created JavaFX windows don't have the >>>>>> Native-Window as their parent but the EmbeddedStage (who is not >>>>>> bound to >>>>>> a native-window handle). It looks like EmbeddedStage has already been >>>>>> prepared (see getRawHandle() : long) to support something like >>>>>> that in >>>>>> future but com.sun.glass.ui.Window and its subclasses have never been >>>>>> extend to create a window based on a pure long-pointer. >>>>>> >>>>>> The only exception and the reason I guess the strategy would work was >>>>>> used for Applets. >>>>>> >>>>>> Before diving deeper into this I wanted to get a feedback from people >>>>>> who know things better: Does the strategy of passing along the window >>>>>> pointer (eg from SWT, don't know about Swing yet) to Glass and >>>>>> using it >>>>>> as the parent pointer sound like a proper idea? >>>>>> >>>>>> Tom >>>>>> >>> >> > -- Tom Schindl, CTO BestSolution.at EDV Systemhaus GmbH Eduard-Bodem-Gasse 5-7. A-6020 Innsbruck Reg. Nr. FN 222302s am Firmenbuchgericht Innsbruck