Hi Martin,
Thank you very much! If it’s not too much trouble, could you please add my
popup test GIF to the issue? It would be very helpful for the developers who
will work on it. The issue is quite serious and difficult, as it is hard to
explain and reproduce.
Best regards, Pavel
On 11/28/25 20:36, Martin Fox wrote:
Hi Pavel,
Thanks for the test case. I can reproduce this on an Ubuntu 24 system. I’ve
verified that JavaFX is passing valid pixels off to GDK but somehow they’re
being dropped. There’s nothing obvious going wrong on the JavaFX side and GDK
isn’t issuing any error messages.
I took a quick look at the GDK source code and it seems to be making OpenGL
calls which worries me. Unfortunately I'm not set up to debug the internals of
GDK so I’m not sure I can take this any further.
Martin
On Nov 26, 2025, at 11:24 AM, PavelTurk <[email protected]> wrote:
Hello, everyone
I opened JDK-8371781, but it was closed as “cannot reproduce.” Since the issue
is very serious, I am providing a complete example along with a GIF file
showing how to reproduce it. I want to emphasize that the problem does not
occur consistently, but intermittently. Sometimes you need to perform the same
action 30–40 times to reproduce it.
GIF (about 15 seconds) - https://ibb.co/n8Y42bNy
Test code:
public class Test1 extends Application {
private final Label label = new Label("Miracles don’t happen.");
@Override
public void start(Stage stage) {
MenuItem item = new MenuItem("Click me!");
item.setOnAction(e -> {
label.setText("It’s a miracle!");
});
Menu menu = new Menu("Menu");
menu.getItems().add(item);
MenuBar bar = new MenuBar(menu);
var stackPane = new StackPane(label);
VBox.setVgrow(stackPane, Priority.ALWAYS);
label.setStyle("-fx-font-size: 30");
VBox root = new VBox(bar, stackPane);
Scene scene = new Scene(root, 400, 400);
stage.setScene(scene);
stage.setTitle("JDK-8371781");
stage.show();
}
public static void main(String[] args) {
launch();
}
}
Best regards, Pavel