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

Print this page

        

@@ -29,17 +29,43 @@
 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 {
+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