--- old/src/macosx/classes/sun/lwawt/LWWindowPeer.java 2013-01-09 16:45:58.225768200 +0400 +++ new/src/macosx/classes/sun/lwawt/LWWindowPeer.java 2013-01-09 16:45:58.065759100 +0400 @@ -999,27 +999,23 @@ } } - /* - * Request the window insets from the delegate and compares it - * with the current one. This method is mostly called by the - * delegate, e.g. when the window state is changed and insets - * should be recalculated. - * + /** + * Request the window insets from the delegate and compares it with the + * current one. This method is mostly called by the delegate, e.g. when the + * window state is changed and insets should be recalculated. + *

* This method may be called on the toolkit thread. */ - public boolean updateInsets(Insets newInsets) { - boolean changed = false; + public final void updateInsets(final Insets newInsets) { synchronized (getStateLock()) { - changed = (insets.equals(newInsets)); + if (insets.equals(newInsets)) { + return; + } insets = newInsets; } - - if (changed) { - replaceSurfaceData(); - repaintPeer(); - } - - return changed; + postEvent(new ComponentEvent(getTarget(), + ComponentEvent.COMPONENT_RESIZED)); + repaintPeer(); } public static LWWindowPeer getWindowUnderCursor() {