modules/swing/src/main/java/javafx/embed/swing/JFXPanel.java

Print this page

        

*** 206,220 **** } // Initialize FX runtime when the JFXPanel instance is constructed private synchronized static void initFx() { // Note that calling PlatformImpl.startup more than once is OK - AccessController.doPrivileged((PrivilegedAction<Void>) () -> { - System.setProperty("glass.win.uiScale", "100%"); - System.setProperty("glass.win.renderScale", "100%"); - return null; - }); PlatformImpl.startup(() -> { // No need to do anything here }); } --- 206,215 ----
*** 681,690 **** --- 676,688 ---- if (scenePeer == null) { return; } if (pixelsIm == null) { createResizePixelBuffer(scaleFactor); + if (pixelsIm == null) { + return; + } } DataBufferInt dataBuf = (DataBufferInt)pixelsIm.getRaster().getDataBuffer(); int[] pixelsData = dataBuf.getData(); IntBuffer buf = IntBuffer.wrap(pixelsData); if (!scenePeer.getPixels(buf, pWidth, pHeight)) {
*** 710,720 **** newScaleFactor = getDefaultScale(((SunGraphics2D)g).surfaceData); } if (scaleFactor != newScaleFactor) { createResizePixelBuffer(newScaleFactor); // The scene will request repaint. ! scenePeer.setPixelScaleFactor(newScaleFactor); scaleFactor = newScaleFactor; } } catch (Throwable th) { th.printStackTrace(); } finally { --- 708,718 ---- newScaleFactor = getDefaultScale(((SunGraphics2D)g).surfaceData); } if (scaleFactor != newScaleFactor) { createResizePixelBuffer(newScaleFactor); // The scene will request repaint. ! scenePeer.setPixelScaleFactors(newScaleFactor, newScaleFactor); scaleFactor = newScaleFactor; } } catch (Throwable th) { th.printStackTrace(); } finally {
*** 904,914 **** return; } if (pWidth > 0 && pHeight > 0) { scenePeer.setSize(pWidth, pHeight); } ! scenePeer.setPixelScaleFactor(scaleFactor); invokeOnClientEDT(() -> { dnd = new SwingDnD(JFXPanel.this, scenePeer); dnd.addNotify(); if (scenePeer != null) { --- 902,912 ---- return; } if (pWidth > 0 && pHeight > 0) { scenePeer.setSize(pWidth, pHeight); } ! scenePeer.setPixelScaleFactors(scaleFactor, scaleFactor); invokeOnClientEDT(() -> { dnd = new SwingDnD(JFXPanel.this, scenePeer); dnd.addNotify(); if (scenePeer != null) {