8027157: [SwingNode] needs explicit expose for JWindow

Reviewed-by: art, anthony
This commit is contained in:
Anton Tarasov 2013-10-29 16:35:20 +04:00
parent 65797af67d
commit bbad610f8e
3 changed files with 15 additions and 0 deletions

View File

@ -1108,4 +1108,8 @@ public abstract class WComponentPeer extends WObjectPeer
} }
private native void setZOrder(long above); private native void setZOrder(long above);
public boolean isLightweightFramePeer() {
return false;
}
} }

View File

@ -90,4 +90,8 @@ public class WLightweightFramePeer extends WFramePeer {
public void updateCursorImmediately() { public void updateCursorImmediately() {
SwingAccessor.getJLightweightFrameAccessor().updateCursor((JLightweightFrame)getLwTarget()); SwingAccessor.getJLightweightFrameAccessor().updateCursor((JLightweightFrame)getLwTarget());
} }
public boolean isLightweightFramePeer() {
return true;
}
} }

View File

@ -252,6 +252,13 @@ public class WWindowPeer extends WPanelPeer implements WindowPeer,
updateWindow(true); updateWindow(true);
} }
} }
// See https://javafx-jira.kenai.com/browse/RT-32570
WComponentPeer owner = getNativeParent();
if (owner != null && owner.isLightweightFramePeer()) {
Rectangle b = getBounds();
handleExpose(0, 0, b.width, b.height);
}
} }
// Synchronize the insets members (here & in helper) with actual window // Synchronize the insets members (here & in helper) with actual window