-
Bug
-
Resolution: Fixed
-
P2
-
8
When running a Swing interop application, such as HelloJFXPanel or SwingInterop, we now get repeated exceptions in EmbeddedPainter:
java.lang.NullPointerException
at com.sun.javafx.tk.quantum.AbstractPainter.paintImpl(AbstractPainter.java:175)
at com.sun.javafx.tk.quantum.EmbeddedPainter.run(EmbeddedPainter.java:92)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178)
at com.sun.prism.render.RenderJob.run(RenderJob.java:35)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:112)
at java.lang.Thread.run(Thread.java:722)
This appears to be caused by the Hi-DPI changes. The following statement is getting the NPE:
float pixelScale = presentable.getPixelScaleFactor();
java.lang.NullPointerException
at com.sun.javafx.tk.quantum.AbstractPainter.paintImpl(AbstractPainter.java:175)
at com.sun.javafx.tk.quantum.EmbeddedPainter.run(EmbeddedPainter.java:92)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask$Sync.innerRunAndReset(FutureTask.java:351)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:178)
at com.sun.prism.render.RenderJob.run(RenderJob.java:35)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1110)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:603)
at com.sun.javafx.tk.quantum.QuantumRenderer$PipelineRunnable.run(QuantumRenderer.java:112)
at java.lang.Thread.run(Thread.java:722)
This appears to be caused by the Hi-DPI changes. The following statement is getting the NPE:
float pixelScale = presentable.getPixelScaleFactor();