--- old/src/java.desktop/unix/classes/sun/awt/X11/XDecoratedPeer.java 2015-11-06 02:13:02.443003011 -0500 +++ new/src/java.desktop/unix/classes/sun/awt/X11/XDecoratedPeer.java 2015-11-06 02:13:02.282923013 -0500 @@ -737,16 +737,12 @@ updateChildrenSizes(); - // Bounds of the window - Rectangle targetBounds = AWTAccessor.getComponentAccessor().getBounds(target); - Point newLocation = getNewLocation(xe, currentInsets.left, currentInsets.top); - WindowDimensions newDimensions = new WindowDimensions(newLocation, - new Dimension(xe.get_width(), xe.get_height()), - copy(currentInsets), - true); + new Dimension(scaleDown(xe.get_width()), + scaleDown(xe.get_height())), + copy(currentInsets), true); if (insLog.isLoggable(PlatformLogger.Level.FINER)) { insLog.finer("Insets are {0}, new dimensions {1}", @@ -793,7 +789,8 @@ try { updateSizeHints(rec.x, rec.y, rec.width, rec.height); XlibWrapper.XMoveResizeWindow(XToolkit.getDisplay(), getShell(), - rec.x, rec.y, rec.width, rec.height); + scaleUp(rec.x), scaleUp(rec.y), + scaleUp(rec.width), scaleUp(rec.height)); } finally { XToolkit.awtUnlock(); @@ -806,7 +803,8 @@ XToolkit.awtLock(); try { updateSizeHints(rec.x, rec.y, rec.width, rec.height); - XlibWrapper.XResizeWindow(XToolkit.getDisplay(), getShell(), rec.width, rec.height); + XlibWrapper.XResizeWindow(XToolkit.getDisplay(), getShell(), + scaleUp(rec.width), scaleUp(rec.height)); } finally { XToolkit.awtUnlock(); @@ -819,7 +817,8 @@ XToolkit.awtLock(); try { updateSizeHints(rec.x, rec.y, rec.width, rec.height); - XlibWrapper.XMoveWindow(XToolkit.getDisplay(), getShell(), rec.x, rec.y); + XlibWrapper.XMoveWindow(XToolkit.getDisplay(), getShell(), + scaleUp(rec.x), scaleUp(rec.y)); } finally { XToolkit.awtUnlock();