import javafx.application.Platform;
import javafx.embed.swing.JFXPanel;
import javafx.event.EventHandler;
import javafx.scene.Scene;
import javafx.scene.chart.AreaChart;
import javafx.scene.chart.NumberAxis;
import javafx.scene.chart.XYChart;
import javafx.scene.control.ContextMenu;
import javafx.scene.control.MenuItem;
import javafx.scene.input.MouseEvent;
import javax.swing.JFrame;

public class ContextMenuShowBug {
    public static void main(String[] args) {
        JFrame frame = new JFrame();
        JFXPanel panel = new JFXPanel();
        frame.add(panel);
        frame.setSize(1000, 1000);
        frame.setVisible(true);

        Platform.runLater(new Runnable() {
            @Override
            public void run() {
                XYChart chart = new AreaChart(new NumberAxis(), new NumberAxis());
                Scene myScene = new Scene(chart, 1000, 1000);
                panel.setScene(myScene);

                ContextMenu myContextMenu = new ContextMenu(new MenuItem("Menu"));
                EventHandler<MouseEvent> myEventHandler =
                        e -> myContextMenu.show(chart, e.getScreenX(), e.getScreenY());
                myScene.addEventHandler(MouseEvent.MOUSE_CLICKED, myEventHandler);
            }
        });
    }
} 