src/windows/classes/sun/awt/windows/WLightweightFramePeer.java

Print this page

        

*** 29,45 **** import java.awt.Graphics; import java.awt.event.ComponentEvent; import java.awt.event.MouseEvent; import sun.awt.LightweightFrame; ! public class WLightweightFramePeer extends WFramePeer { public WLightweightFramePeer(LightweightFrame target) { super(target); } private LightweightFrame getLwTarget() { return (LightweightFrame)target; } @Override --- 29,71 ---- import java.awt.Graphics; import java.awt.event.ComponentEvent; import java.awt.event.MouseEvent; import sun.awt.LightweightFrame; + import sun.awt.LightweightFramePeer; + import sun.awt.LightweightFramePeerInterface; ! public class WLightweightFramePeer extends WFramePeer implements LightweightFramePeer { public WLightweightFramePeer(LightweightFrame target) { super(target); } + private static WLightweightFramePeer lightweightFramePeerUnderMouse = null; + + @Override + public void setLightWeightFrameUnderMouse() { + lightweightFramePeerUnderMouse = this; + setLWFrameUnderMouse(this); + } + + @Override + public boolean cleanLightWeightFrameUnderMouse() { + if (lightweightFramePeerUnderMouse == this) { + lightweightFramePeerUnderMouse = this; + setLWFrameUnderMouse(null); + return true; + } + return false; + } + + static LightweightFrame getFrameUnderCursor() { + return lightweightFramePeerUnderMouse == null ? null : lightweightFramePeerUnderMouse.getLwTarget(); + } + + private static native void setLWFrameUnderMouse(WLightweightFramePeer lwFrame); + private LightweightFrame getLwTarget() { return (LightweightFrame)target; } @Override