class java.awt.LightweightDispatcher implements java.io.Serializable, java.awt.event.AWTEventListener
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: java.awt.LightweightDispatcher
super_class: java.lang.Object
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 5184291520170872969
private static final int LWD_MOUSE_DRAGGED_OVER;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 1500
private static final sun.util.logging.PlatformLogger eventLog;
descriptor: Lsun/util/logging/PlatformLogger;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final int BUTTONS_DOWN_MASK;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private java.awt.Container nativeContainer;
descriptor: Ljava/awt/Container;
flags: (0x0002) ACC_PRIVATE
private java.awt.Component focus;
descriptor: Ljava/awt/Component;
flags: (0x0002) ACC_PRIVATE
private transient java.lang.ref.WeakReference<java.awt.Component> mouseEventTarget;
descriptor: Ljava/lang/ref/WeakReference;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
Signature: Ljava/lang/ref/WeakReference<Ljava/awt/Component;>;
private transient java.lang.ref.WeakReference<java.awt.Component> targetLastEntered;
descriptor: Ljava/lang/ref/WeakReference;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
Signature: Ljava/lang/ref/WeakReference<Ljava/awt/Component;>;
private transient java.lang.ref.WeakReference<java.awt.Component> targetLastEnteredDT;
descriptor: Ljava/lang/ref/WeakReference;
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
Signature: Ljava/lang/ref/WeakReference<Ljava/awt/Component;>;
private transient boolean isMouseInNativeContainer;
descriptor: Z
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private transient boolean isMouseDTInNativeContainer;
descriptor: Z
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private java.awt.Cursor nativeCursor;
descriptor: Ljava/awt/Cursor;
flags: (0x0002) ACC_PRIVATE
private long eventMask;
descriptor: J
flags: (0x0002) ACC_PRIVATE
private static final long PROXY_EVENT_MASK;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 131132
private static final long MOUSE_MASK;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 131120
static final boolean $assertionsDisabled;
descriptor: Z
flags: (0x1018) ACC_STATIC, ACC_FINAL, ACC_SYNTHETIC
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=6, args_size=0
0: ldc Ljava/awt/LightweightDispatcher;
invokevirtual java.lang.Class.desiredAssertionStatus:()Z
ifne 1
iconst_1
goto 2
StackMap locals:
StackMap stack:
1: iconst_0
StackMap locals:
StackMap stack: int
2: putstatic java.awt.LightweightDispatcher.$assertionsDisabled:Z
3: ldc "java.awt.event.LightweightDispatcher"
invokestatic sun.util.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lsun/util/logging/PlatformLogger;
putstatic java.awt.LightweightDispatcher.eventLog:Lsun/util/logging/PlatformLogger;
4: invokestatic sun.awt.AWTAccessor.getInputEventAccessor:()Lsun/awt/AWTAccessor$InputEventAccessor;
5: invokeinterface sun.awt.AWTAccessor$InputEventAccessor.getButtonDownMasks:()[I
6: astore 0
start local 0 7: iconst_0
istore 1
start local 1 8: aload 0
dup
astore 5
arraylength
istore 4
iconst_0
istore 3
goto 12
StackMap locals: int[] int top int int int[]
StackMap stack:
9: aload 5
iload 3
iaload
istore 2
start local 2 10: iload 1
iload 2
ior
istore 1
end local 2 11: iinc 3 1
StackMap locals:
StackMap stack:
12: iload 3
iload 4
if_icmplt 9
13: iload 1
putstatic java.awt.LightweightDispatcher.BUTTONS_DOWN_MASK:I
end local 1 end local 0 14: return
LocalVariableTable:
Start End Slot Name Signature
7 14 0 buttonsDownMask [I
8 14 1 mask I
10 11 2 buttonDownMask I
void <init>(java.awt.Container);
descriptor: (Ljava/awt/Container;)V
flags: (0x0000)
Code:
stack=4, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
iconst_0
putfield java.awt.LightweightDispatcher.isMouseInNativeContainer:Z
2: aload 0
iconst_0
putfield java.awt.LightweightDispatcher.isMouseDTInNativeContainer:Z
3: aload 0
aload 1
putfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
4: aload 0
new java.lang.ref.WeakReference
dup
aconst_null
invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
putfield java.awt.LightweightDispatcher.mouseEventTarget:Ljava/lang/ref/WeakReference;
5: aload 0
new java.lang.ref.WeakReference
dup
aconst_null
invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
putfield java.awt.LightweightDispatcher.targetLastEntered:Ljava/lang/ref/WeakReference;
6: aload 0
new java.lang.ref.WeakReference
dup
aconst_null
invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
putfield java.awt.LightweightDispatcher.targetLastEnteredDT:Ljava/lang/ref/WeakReference;
7: aload 0
lconst_0
putfield java.awt.LightweightDispatcher.eventMask:J
8: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Ljava/awt/LightweightDispatcher;
0 9 1 nativeContainer Ljava/awt/Container;
MethodParameters:
Name Flags
nativeContainer
void dispose();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokevirtual java.awt.LightweightDispatcher.stopListeningForOtherDrags:()V
1: aload 0
getfield java.awt.LightweightDispatcher.mouseEventTarget:Ljava/lang/ref/WeakReference;
invokevirtual java.lang.ref.WeakReference.clear:()V
2: aload 0
getfield java.awt.LightweightDispatcher.targetLastEntered:Ljava/lang/ref/WeakReference;
invokevirtual java.lang.ref.WeakReference.clear:()V
3: aload 0
getfield java.awt.LightweightDispatcher.targetLastEnteredDT:Ljava/lang/ref/WeakReference;
invokevirtual java.lang.ref.WeakReference.clear:()V
4: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Ljava/awt/LightweightDispatcher;
void enableEvents(long);
descriptor: (J)V
flags: (0x0000)
Code:
stack=5, locals=3, args_size=2
start local 0 start local 1 0: aload 0
dup
getfield java.awt.LightweightDispatcher.eventMask:J
lload 1
lor
putfield java.awt.LightweightDispatcher.eventMask:J
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Ljava/awt/LightweightDispatcher;
0 2 1 events J
MethodParameters:
Name Flags
events
boolean dispatchEvent(java.awt.AWTEvent);
descriptor: (Ljava/awt/AWTEvent;)Z
flags: (0x0000)
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: iconst_0
istore 2
start local 2 1: aload 1
instanceof sun.awt.dnd.SunDropTargetEvent
ifeq 5
2: aload 1
checkcast sun.awt.dnd.SunDropTargetEvent
astore 3
start local 3 3: aload 0
aload 3
invokevirtual java.awt.LightweightDispatcher.processDropTargetEvent:(Lsun/awt/dnd/SunDropTargetEvent;)Z
istore 2
end local 3 4: goto 10
5: StackMap locals: int
StackMap stack:
aload 1
instanceof java.awt.event.MouseEvent
ifeq 8
aload 0
getfield java.awt.LightweightDispatcher.eventMask:J
ldc 131120
land
lconst_0
lcmp
ifeq 8
6: aload 1
checkcast java.awt.event.MouseEvent
astore 3
start local 3 7: aload 0
aload 3
invokevirtual java.awt.LightweightDispatcher.processMouseEvent:(Ljava/awt/event/MouseEvent;)Z
istore 2
end local 3 8: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.awt.AWTEvent.getID:()I
sipush 503
if_icmpne 10
9: aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
invokevirtual java.awt.Container.updateCursorImmediately:()V
10: StackMap locals:
StackMap stack:
iload 2
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Ljava/awt/LightweightDispatcher;
0 11 1 e Ljava/awt/AWTEvent;
1 11 2 ret Z
3 4 3 sdde Lsun/awt/dnd/SunDropTargetEvent;
7 8 3 me Ljava/awt/event/MouseEvent;
MethodParameters:
Name Flags
e
private boolean isMouseGrab(java.awt.event.MouseEvent);
descriptor: (Ljava/awt/event/MouseEvent;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.awt.event.MouseEvent.getModifiersEx:()I
istore 2
start local 2 1: aload 1
invokevirtual java.awt.event.MouseEvent.getID:()I
sipush 501
if_icmpeq 3
2: aload 1
invokevirtual java.awt.event.MouseEvent.getID:()I
sipush 502
if_icmpne 4
3: StackMap locals: int
StackMap stack:
iload 2
aload 1
invokevirtual java.awt.event.MouseEvent.getButton:()I
invokestatic java.awt.event.InputEvent.getMaskForButton:(I)I
ixor
istore 2
4: StackMap locals:
StackMap stack:
iload 2
getstatic java.awt.LightweightDispatcher.BUTTONS_DOWN_MASK:I
iand
ifeq 5
iconst_1
ireturn
StackMap locals:
StackMap stack:
5: iconst_0
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Ljava/awt/LightweightDispatcher;
0 6 1 e Ljava/awt/event/MouseEvent;
1 6 2 modifiers I
MethodParameters:
Name Flags
e
private boolean processMouseEvent(java.awt.event.MouseEvent);
descriptor: (Ljava/awt/event/MouseEvent;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=5, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.awt.event.MouseEvent.getID:()I
istore 2
start local 2 1: aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
aload 1
invokevirtual java.awt.event.MouseEvent.getX:()I
aload 1
invokevirtual java.awt.event.MouseEvent.getY:()I
2: iconst_1
3: invokevirtual java.awt.Container.getMouseEventTarget:(IIZ)Ljava/awt/Component;
4: astore 3
start local 3 5: aload 0
aload 3
aload 1
invokevirtual java.awt.LightweightDispatcher.trackMouseEnterExit:(Ljava/awt/Component;Ljava/awt/event/MouseEvent;)V
6: aload 0
getfield java.awt.LightweightDispatcher.mouseEventTarget:Ljava/lang/ref/WeakReference;
invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
checkcast java.awt.Component
astore 4
start local 4 7: aload 0
aload 1
invokevirtual java.awt.LightweightDispatcher.isMouseGrab:(Ljava/awt/event/MouseEvent;)Z
ifne 12
iload 2
sipush 500
if_icmpeq 12
8: aload 3
aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
if_acmpeq 9
aload 3
goto 10
StackMap locals: int java.awt.Component java.awt.Component
StackMap stack:
9: aconst_null
StackMap locals:
StackMap stack: java.awt.Component
10: astore 4
11: aload 0
new java.lang.ref.WeakReference
dup
aload 4
invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
putfield java.awt.LightweightDispatcher.mouseEventTarget:Ljava/lang/ref/WeakReference;
12: StackMap locals:
StackMap stack:
aload 4
ifnull 35
13: iload 2
tableswitch { // 500 - 507
500: 19
501: 15
502: 17
503: 22
504: 14
505: 14
506: 24
507: 27
default: 33
}
14: StackMap locals:
StackMap stack:
goto 33
15: StackMap locals:
StackMap stack:
aload 0
aload 4
iload 2
aload 1
invokevirtual java.awt.LightweightDispatcher.retargetMouseEvent:(Ljava/awt/Component;ILjava/awt/event/MouseEvent;)V
16: goto 33
17: StackMap locals:
StackMap stack:
aload 0
aload 4
iload 2
aload 1
invokevirtual java.awt.LightweightDispatcher.retargetMouseEvent:(Ljava/awt/Component;ILjava/awt/event/MouseEvent;)V
18: goto 33
19: StackMap locals:
StackMap stack:
aload 3
aload 4
if_acmpne 33
20: aload 0
aload 3
iload 2
aload 1
invokevirtual java.awt.LightweightDispatcher.retargetMouseEvent:(Ljava/awt/Component;ILjava/awt/event/MouseEvent;)V
21: goto 33
22: StackMap locals:
StackMap stack:
aload 0
aload 4
iload 2
aload 1
invokevirtual java.awt.LightweightDispatcher.retargetMouseEvent:(Ljava/awt/Component;ILjava/awt/event/MouseEvent;)V
23: goto 33
24: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual java.awt.LightweightDispatcher.isMouseGrab:(Ljava/awt/event/MouseEvent;)Z
ifeq 33
25: aload 0
aload 4
iload 2
aload 1
invokevirtual java.awt.LightweightDispatcher.retargetMouseEvent:(Ljava/awt/Component;ILjava/awt/event/MouseEvent;)V
26: goto 33
27: StackMap locals:
StackMap stack:
getstatic java.awt.LightweightDispatcher.eventLog:Lsun/util/logging/PlatformLogger;
getstatic sun.util.logging.PlatformLogger$Level.FINEST:Lsun/util/logging/PlatformLogger$Level;
invokevirtual sun.util.logging.PlatformLogger.isLoggable:(Lsun/util/logging/PlatformLogger$Level;)Z
ifeq 32
aload 3
ifnull 32
28: getstatic java.awt.LightweightDispatcher.eventLog:Lsun/util/logging/PlatformLogger;
new java.lang.StringBuilder
dup
ldc "retargeting mouse wheel to "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
29: aload 3
invokevirtual java.awt.Component.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc ", "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
30: aload 3
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
31: invokevirtual sun.util.logging.PlatformLogger.finest:(Ljava/lang/String;)V
32: StackMap locals:
StackMap stack:
aload 0
aload 3
iload 2
aload 1
invokevirtual java.awt.LightweightDispatcher.retargetMouseEvent:(Ljava/awt/Component;ILjava/awt/event/MouseEvent;)V
33: StackMap locals:
StackMap stack:
iload 2
sipush 507
if_icmpeq 35
34: aload 1
invokevirtual java.awt.event.MouseEvent.consume:()V
35: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.awt.event.MouseEvent.isConsumed:()Z
ireturn
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 36 0 this Ljava/awt/LightweightDispatcher;
0 36 1 e Ljava/awt/event/MouseEvent;
1 36 2 id I
5 36 3 mouseOver Ljava/awt/Component;
7 36 4 met Ljava/awt/Component;
MethodParameters:
Name Flags
e
private boolean processDropTargetEvent(sun.awt.dnd.SunDropTargetEvent);
descriptor: (Lsun/awt/dnd/SunDropTargetEvent;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=6, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual sun.awt.dnd.SunDropTargetEvent.getID:()I
istore 2
start local 2 1: aload 1
invokevirtual sun.awt.dnd.SunDropTargetEvent.getX:()I
istore 3
start local 3 2: aload 1
invokevirtual sun.awt.dnd.SunDropTargetEvent.getY:()I
istore 4
start local 4 3: aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
iload 3
iload 4
invokevirtual java.awt.Container.contains:(II)Z
ifne 15
4: aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
invokevirtual java.awt.Container.getSize:()Ljava/awt/Dimension;
astore 5
start local 5 5: aload 5
getfield java.awt.Dimension.width:I
iload 3
if_icmpgt 8
6: aload 5
getfield java.awt.Dimension.width:I
iconst_1
isub
istore 3
7: goto 10
StackMap locals: java.awt.LightweightDispatcher sun.awt.dnd.SunDropTargetEvent int int int java.awt.Dimension
StackMap stack:
8: iload 3
ifge 10
9: iconst_0
istore 3
10: StackMap locals:
StackMap stack:
aload 5
getfield java.awt.Dimension.height:I
iload 4
if_icmpgt 13
11: aload 5
getfield java.awt.Dimension.height:I
iconst_1
isub
istore 4
12: goto 15
StackMap locals:
StackMap stack:
13: iload 4
ifge 15
14: iconst_0
istore 4
end local 5 15: StackMap locals:
StackMap stack:
aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
iload 3
iload 4
16: iconst_1
17: invokevirtual java.awt.Container.getDropTargetEventTarget:(IIZ)Ljava/awt/Component;
18: astore 5
start local 5 19: aload 0
aload 5
aload 1
invokevirtual java.awt.LightweightDispatcher.trackMouseEnterExit:(Ljava/awt/Component;Ljava/awt/event/MouseEvent;)V
20: aload 5
aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
if_acmpeq 25
aload 5
ifnull 25
21: iload 2
tableswitch { // 504 - 505
504: 22
505: 22
default: 23
}
22: StackMap locals: java.awt.Component
StackMap stack:
goto 25
23: StackMap locals:
StackMap stack:
aload 0
aload 5
iload 2
aload 1
invokevirtual java.awt.LightweightDispatcher.retargetMouseEvent:(Ljava/awt/Component;ILjava/awt/event/MouseEvent;)V
24: aload 1
invokevirtual sun.awt.dnd.SunDropTargetEvent.consume:()V
25: StackMap locals:
StackMap stack:
aload 1
invokevirtual sun.awt.dnd.SunDropTargetEvent.isConsumed:()Z
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Ljava/awt/LightweightDispatcher;
0 26 1 e Lsun/awt/dnd/SunDropTargetEvent;
1 26 2 id I
2 26 3 x I
3 26 4 y I
5 15 5 d Ljava/awt/Dimension;
19 26 5 mouseOver Ljava/awt/Component;
MethodParameters:
Name Flags
e
private void trackDropTargetEnterExit(java.awt.Component, java.awt.event.MouseEvent);
descriptor: (Ljava/awt/Component;Ljava/awt/event/MouseEvent;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual java.awt.event.MouseEvent.getID:()I
istore 3
start local 3 1: iload 3
sipush 504
if_icmpne 4
aload 0
getfield java.awt.LightweightDispatcher.isMouseDTInNativeContainer:Z
ifeq 4
2: aload 0
getfield java.awt.LightweightDispatcher.targetLastEnteredDT:Ljava/lang/ref/WeakReference;
invokevirtual java.lang.ref.WeakReference.clear:()V
3: goto 9
StackMap locals: int
StackMap stack:
4: iload 3
sipush 504
if_icmpne 7
5: aload 0
iconst_1
putfield java.awt.LightweightDispatcher.isMouseDTInNativeContainer:Z
6: goto 9
StackMap locals:
StackMap stack:
7: iload 3
sipush 505
if_icmpne 9
8: aload 0
iconst_0
putfield java.awt.LightweightDispatcher.isMouseDTInNativeContainer:Z
9: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
10: aload 0
getfield java.awt.LightweightDispatcher.targetLastEnteredDT:Ljava/lang/ref/WeakReference;
invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
checkcast java.awt.Component
11: aload 0
getfield java.awt.LightweightDispatcher.isMouseDTInNativeContainer:Z
12: invokevirtual java.awt.LightweightDispatcher.retargetMouseEnterExit:(Ljava/awt/Component;Ljava/awt/event/MouseEvent;Ljava/awt/Component;Z)Ljava/awt/Component;
astore 4
start local 4 13: aload 0
new java.lang.ref.WeakReference
dup
aload 4
invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
putfield java.awt.LightweightDispatcher.targetLastEnteredDT:Ljava/lang/ref/WeakReference;
14: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Ljava/awt/LightweightDispatcher;
0 15 1 targetOver Ljava/awt/Component;
0 15 2 e Ljava/awt/event/MouseEvent;
1 15 3 id I
13 15 4 tle Ljava/awt/Component;
MethodParameters:
Name Flags
targetOver
e
private void trackMouseEnterExit(java.awt.Component, java.awt.event.MouseEvent);
descriptor: (Ljava/awt/Component;Ljava/awt/event/MouseEvent;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
instanceof sun.awt.dnd.SunDropTargetEvent
ifeq 3
1: aload 0
aload 1
aload 2
invokevirtual java.awt.LightweightDispatcher.trackDropTargetEnterExit:(Ljava/awt/Component;Ljava/awt/event/MouseEvent;)V
2: return
3: StackMap locals:
StackMap stack:
aload 2
invokevirtual java.awt.event.MouseEvent.getID:()I
istore 3
start local 3 4: iload 3
sipush 505
if_icmpeq 11
5: iload 3
sipush 506
if_icmpeq 11
6: iload 3
sipush 1500
if_icmpeq 11
7: aload 0
getfield java.awt.LightweightDispatcher.isMouseInNativeContainer:Z
ifne 11
8: aload 0
iconst_1
putfield java.awt.LightweightDispatcher.isMouseInNativeContainer:Z
9: aload 0
invokevirtual java.awt.LightweightDispatcher.startListeningForOtherDrags:()V
10: goto 14
StackMap locals: int
StackMap stack:
11: iload 3
sipush 505
if_icmpne 14
12: aload 0
iconst_0
putfield java.awt.LightweightDispatcher.isMouseInNativeContainer:Z
13: aload 0
invokevirtual java.awt.LightweightDispatcher.stopListeningForOtherDrags:()V
14: StackMap locals:
StackMap stack:
aload 0
aload 1
aload 2
15: aload 0
getfield java.awt.LightweightDispatcher.targetLastEntered:Ljava/lang/ref/WeakReference;
invokevirtual java.lang.ref.WeakReference.get:()Ljava/lang/Object;
checkcast java.awt.Component
16: aload 0
getfield java.awt.LightweightDispatcher.isMouseInNativeContainer:Z
17: invokevirtual java.awt.LightweightDispatcher.retargetMouseEnterExit:(Ljava/awt/Component;Ljava/awt/event/MouseEvent;Ljava/awt/Component;Z)Ljava/awt/Component;
astore 4
start local 4 18: aload 0
new java.lang.ref.WeakReference
dup
aload 4
invokespecial java.lang.ref.WeakReference.<init>:(Ljava/lang/Object;)V
putfield java.awt.LightweightDispatcher.targetLastEntered:Ljava/lang/ref/WeakReference;
19: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 20 0 this Ljava/awt/LightweightDispatcher;
0 20 1 targetOver Ljava/awt/Component;
0 20 2 e Ljava/awt/event/MouseEvent;
4 20 3 id I
18 20 4 tle Ljava/awt/Component;
MethodParameters:
Name Flags
targetOver
e
private java.awt.Component retargetMouseEnterExit(java.awt.Component, java.awt.event.MouseEvent, java.awt.Component, boolean);
descriptor: (Ljava/awt/Component;Ljava/awt/event/MouseEvent;Ljava/awt/Component;Z)Ljava/awt/Component;
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 2
invokevirtual java.awt.event.MouseEvent.getID:()I
istore 5
start local 5 1: iload 4
ifeq 2
aload 1
goto 3
StackMap locals: int
StackMap stack:
2: aconst_null
StackMap locals:
StackMap stack: java.awt.Component
3: astore 6
start local 6 4: aload 3
aload 6
if_acmpeq 13
5: aload 3
ifnull 7
6: aload 0
aload 3
sipush 505
aload 2
invokevirtual java.awt.LightweightDispatcher.retargetMouseEvent:(Ljava/awt/Component;ILjava/awt/event/MouseEvent;)V
7: StackMap locals: java.awt.Component
StackMap stack:
iload 5
sipush 505
if_icmpne 9
8: aload 2
invokevirtual java.awt.event.MouseEvent.consume:()V
9: StackMap locals:
StackMap stack:
aload 6
ifnull 11
10: aload 0
aload 6
sipush 504
aload 2
invokevirtual java.awt.LightweightDispatcher.retargetMouseEvent:(Ljava/awt/Component;ILjava/awt/event/MouseEvent;)V
11: StackMap locals:
StackMap stack:
iload 5
sipush 504
if_icmpne 13
12: aload 2
invokevirtual java.awt.event.MouseEvent.consume:()V
13: StackMap locals:
StackMap stack:
aload 6
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 14 0 this Ljava/awt/LightweightDispatcher;
0 14 1 targetOver Ljava/awt/Component;
0 14 2 e Ljava/awt/event/MouseEvent;
0 14 3 lastEntered Ljava/awt/Component;
0 14 4 inNativeContainer Z
1 14 5 id I
4 14 6 targetEnter Ljava/awt/Component;
MethodParameters:
Name Flags
targetOver
e
lastEntered
inNativeContainer
private void startListeningForOtherDrags();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.awt.LightweightDispatcher$1
dup
aload 0
invokespecial java.awt.LightweightDispatcher$1.<init>:(Ljava/awt/LightweightDispatcher;)V
1: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
pop
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/awt/LightweightDispatcher;
private void stopListeningForOtherDrags();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 0: new java.awt.LightweightDispatcher$2
dup
aload 0
invokespecial java.awt.LightweightDispatcher$2.<init>:(Ljava/awt/LightweightDispatcher;)V
1: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
pop
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Ljava/awt/LightweightDispatcher;
public void eventDispatched(java.awt.AWTEvent);
descriptor: (Ljava/awt/AWTEvent;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=14, locals=12, args_size=2
start local 0 start local 1 0: aload 1
instanceof java.awt.event.MouseEvent
ifeq 5
1: aload 1
instanceof sun.awt.dnd.SunDropTargetEvent
ifne 5
2: aload 1
getfield java.awt.AWTEvent.id:I
sipush 506
if_icmpne 5
3: aload 1
invokevirtual java.awt.AWTEvent.getSource:()Ljava/lang/Object;
aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
if_acmpeq 5
4: iconst_1
goto 6
StackMap locals:
StackMap stack:
5: iconst_0
StackMap locals:
StackMap stack: int
6: istore 2
start local 2 7: iload 2
ifne 9
8: return
9: StackMap locals: int
StackMap stack:
aload 1
checkcast java.awt.event.MouseEvent
astore 3
start local 3 10: aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
invokevirtual java.awt.Container.getTreeLock:()Ljava/lang/Object;
dup
astore 5
monitorenter
11: aload 3
invokevirtual java.awt.event.MouseEvent.getComponent:()Ljava/awt/Component;
astore 6
start local 6 12: aload 6
invokevirtual java.awt.Component.isShowing:()Z
ifne 15
13: aload 5
monitorexit
14: return
15: StackMap locals: java.awt.LightweightDispatcher java.awt.AWTEvent int java.awt.event.MouseEvent top java.lang.Object java.awt.Component
StackMap stack:
aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
astore 7
start local 7 16: goto 18
17: StackMap locals: java.awt.Component
StackMap stack:
aload 7
invokevirtual java.awt.Component.getParent_NoClientCode:()Ljava/awt/Container;
astore 7
18: StackMap locals:
StackMap stack:
aload 7
ifnull 19
aload 7
instanceof java.awt.Window
ifeq 17
19: StackMap locals:
StackMap stack:
aload 7
ifnull 20
aload 7
checkcast java.awt.Window
invokevirtual java.awt.Window.isModalBlocked:()Z
ifeq 22
20: StackMap locals:
StackMap stack:
aload 5
monitorexit
21: return
22: StackMap locals:
StackMap stack:
new java.awt.event.MouseEvent
dup
aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
23: sipush 1500
24: aload 3
invokevirtual java.awt.event.MouseEvent.getWhen:()J
25: aload 3
invokevirtual java.awt.event.MouseEvent.getModifiersEx:()I
aload 3
invokevirtual java.awt.event.MouseEvent.getModifiers:()I
ior
26: aload 3
invokevirtual java.awt.event.MouseEvent.getX:()I
27: aload 3
invokevirtual java.awt.event.MouseEvent.getY:()I
28: aload 3
invokevirtual java.awt.event.MouseEvent.getXOnScreen:()I
29: aload 3
invokevirtual java.awt.event.MouseEvent.getYOnScreen:()I
30: aload 3
invokevirtual java.awt.event.MouseEvent.getClickCount:()I
31: aload 3
invokevirtual java.awt.event.MouseEvent.isPopupTrigger:()Z
32: aload 3
invokevirtual java.awt.event.MouseEvent.getButton:()I
33: invokespecial java.awt.event.MouseEvent.<init>:(Ljava/awt/Component;IJIIIIIIZI)V
astore 4
start local 4 34: invokestatic sun.awt.AWTAccessor.getMouseEventAccessor:()Lsun/awt/AWTAccessor$MouseEventAccessor;
astore 8
start local 8 35: aload 8
aload 4
36: aload 8
aload 3
invokeinterface sun.awt.AWTAccessor$MouseEventAccessor.isCausedByTouchEvent:(Ljava/awt/event/MouseEvent;)Z
37: invokeinterface sun.awt.AWTAccessor$MouseEventAccessor.setCausedByTouchEvent:(Ljava/awt/event/MouseEvent;Z)V
38: aload 3
aload 4
invokevirtual java.awt.AWTEvent.copyPrivateDataInto:(Ljava/awt/AWTEvent;)V
39: aload 6
invokevirtual java.awt.Component.getLocationOnScreen:()Ljava/awt/Point;
astore 9
start local 9 40: invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
getfield java.awt.Container.appContext:Lsun/awt/AppContext;
if_acmpeq 46
41: aload 4
astore 10
start local 10 42: new java.awt.LightweightDispatcher$3
dup
aload 0
aload 10
aload 9
invokespecial java.awt.LightweightDispatcher$3.<init>:(Ljava/awt/LightweightDispatcher;Ljava/awt/event/MouseEvent;Ljava/awt/Point;)V
astore 11
start local 11 43: aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
aload 11
invokestatic sun.awt.SunToolkit.executeOnEventHandlerThread:(Ljava/lang/Object;Ljava/lang/Runnable;)V
44: aload 5
monitorexit
45: return
end local 11 end local 10 46: StackMap locals: java.awt.LightweightDispatcher java.awt.AWTEvent int java.awt.event.MouseEvent java.awt.event.MouseEvent java.lang.Object java.awt.Component java.awt.Component sun.awt.AWTAccessor$MouseEventAccessor java.awt.Point
StackMap stack:
aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
invokevirtual java.awt.Container.isShowing:()Z
ifne 49
47: aload 5
monitorexit
48: return
49: StackMap locals:
StackMap stack:
aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
invokevirtual java.awt.Container.getLocationOnScreen:()Ljava/awt/Point;
astore 10
start local 10 50: aload 4
aload 9
getfield java.awt.Point.x:I
aload 10
getfield java.awt.Point.x:I
isub
aload 9
getfield java.awt.Point.y:I
aload 10
getfield java.awt.Point.y:I
isub
invokevirtual java.awt.event.MouseEvent.translatePoint:(II)V
end local 10 end local 9 end local 8 end local 7 end local 6 51: aload 5
monitorexit
52: goto 55
end local 4 StackMap locals: java.awt.LightweightDispatcher java.awt.AWTEvent int java.awt.event.MouseEvent top java.lang.Object
StackMap stack: java.lang.Throwable
53: aload 5
monitorexit
54: athrow
start local 4 55: StackMap locals: java.awt.LightweightDispatcher java.awt.AWTEvent int java.awt.event.MouseEvent java.awt.event.MouseEvent
StackMap stack:
aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
aload 4
invokevirtual java.awt.event.MouseEvent.getX:()I
aload 4
invokevirtual java.awt.event.MouseEvent.getY:()I
56: iconst_1
57: invokevirtual java.awt.Container.getMouseEventTarget:(IIZ)Ljava/awt/Component;
58: astore 5
start local 5 59: aload 0
aload 5
aload 4
invokevirtual java.awt.LightweightDispatcher.trackMouseEnterExit:(Ljava/awt/Component;Ljava/awt/event/MouseEvent;)V
60: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 61 0 this Ljava/awt/LightweightDispatcher;
0 61 1 e Ljava/awt/AWTEvent;
7 61 2 isForeignDrag Z
10 61 3 srcEvent Ljava/awt/event/MouseEvent;
34 53 4 me Ljava/awt/event/MouseEvent;
55 61 4 me Ljava/awt/event/MouseEvent;
12 51 6 srcComponent Ljava/awt/Component;
16 51 7 c Ljava/awt/Component;
35 51 8 meAccessor Lsun/awt/AWTAccessor$MouseEventAccessor;
40 51 9 ptSrcOrigin Ljava/awt/Point;
42 46 10 mouseEvent Ljava/awt/event/MouseEvent;
43 46 11 r Ljava/lang/Runnable;
50 51 10 ptDstOrigin Ljava/awt/Point;
59 61 5 targetOver Ljava/awt/Component;
Exception table:
from to target type
11 14 53 any
15 21 53 any
22 45 53 any
46 48 53 any
49 52 53 any
53 54 53 any
MethodParameters:
Name Flags
e
void retargetMouseEvent(java.awt.Component, int, java.awt.event.MouseEvent);
descriptor: (Ljava/awt/Component;ILjava/awt/event/MouseEvent;)V
flags: (0x0000)
Code:
stack=18, locals=9, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
ifnonnull 2
1: return
2: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.awt.event.MouseEvent.getX:()I
istore 4
start local 4 3: aload 3
invokevirtual java.awt.event.MouseEvent.getY:()I
istore 5
start local 5 4: aload 1
astore 6
start local 6 5: goto 9
6: StackMap locals: int int java.awt.Component
StackMap stack:
iload 4
aload 6
getfield java.awt.Component.x:I
isub
istore 4
7: iload 5
aload 6
getfield java.awt.Component.y:I
isub
istore 5
8: aload 6
invokevirtual java.awt.Component.getParent:()Ljava/awt/Container;
astore 6
9: StackMap locals:
StackMap stack:
aload 6
ifnull 10
aload 6
aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
if_acmpne 6
10: StackMap locals:
StackMap stack:
aload 6
ifnull 66
11: aload 3
instanceof sun.awt.dnd.SunDropTargetEvent
ifeq 19
12: new sun.awt.dnd.SunDropTargetEvent
dup
aload 1
13: iload 2
14: iload 4
15: iload 5
16: aload 3
checkcast sun.awt.dnd.SunDropTargetEvent
invokevirtual sun.awt.dnd.SunDropTargetEvent.getDispatcher:()Lsun/awt/dnd/SunDropTargetContextPeer$EventDispatcher;
17: invokespecial sun.awt.dnd.SunDropTargetEvent.<init>:(Ljava/awt/Component;IIILsun/awt/dnd/SunDropTargetContextPeer$EventDispatcher;)V
astore 7
start local 7 18: goto 52
end local 7 StackMap locals:
StackMap stack:
19: iload 2
sipush 507
if_icmpne 36
20: new java.awt.event.MouseWheelEvent
dup
aload 1
21: iload 2
22: aload 3
invokevirtual java.awt.event.MouseEvent.getWhen:()J
23: aload 3
invokevirtual java.awt.event.MouseEvent.getModifiersEx:()I
aload 3
invokevirtual java.awt.event.MouseEvent.getModifiers:()I
ior
24: iload 4
25: iload 5
26: aload 3
invokevirtual java.awt.event.MouseEvent.getXOnScreen:()I
27: aload 3
invokevirtual java.awt.event.MouseEvent.getYOnScreen:()I
28: aload 3
invokevirtual java.awt.event.MouseEvent.getClickCount:()I
29: aload 3
invokevirtual java.awt.event.MouseEvent.isPopupTrigger:()Z
30: aload 3
checkcast java.awt.event.MouseWheelEvent
invokevirtual java.awt.event.MouseWheelEvent.getScrollType:()I
31: aload 3
checkcast java.awt.event.MouseWheelEvent
invokevirtual java.awt.event.MouseWheelEvent.getScrollAmount:()I
32: aload 3
checkcast java.awt.event.MouseWheelEvent
invokevirtual java.awt.event.MouseWheelEvent.getWheelRotation:()I
33: aload 3
checkcast java.awt.event.MouseWheelEvent
invokevirtual java.awt.event.MouseWheelEvent.getPreciseWheelRotation:()D
34: invokespecial java.awt.event.MouseWheelEvent.<init>:(Ljava/awt/Component;IJIIIIIIZIIID)V
astore 7
start local 7 35: goto 52
end local 7 36: StackMap locals:
StackMap stack:
new java.awt.event.MouseEvent
dup
aload 1
37: iload 2
38: aload 3
invokevirtual java.awt.event.MouseEvent.getWhen:()J
39: aload 3
invokevirtual java.awt.event.MouseEvent.getModifiersEx:()I
aload 3
invokevirtual java.awt.event.MouseEvent.getModifiers:()I
ior
40: iload 4
41: iload 5
42: aload 3
invokevirtual java.awt.event.MouseEvent.getXOnScreen:()I
43: aload 3
invokevirtual java.awt.event.MouseEvent.getYOnScreen:()I
44: aload 3
invokevirtual java.awt.event.MouseEvent.getClickCount:()I
45: aload 3
invokevirtual java.awt.event.MouseEvent.isPopupTrigger:()Z
46: aload 3
invokevirtual java.awt.event.MouseEvent.getButton:()I
47: invokespecial java.awt.event.MouseEvent.<init>:(Ljava/awt/Component;IJIIIIIIZI)V
astore 7
start local 7 48: invokestatic sun.awt.AWTAccessor.getMouseEventAccessor:()Lsun/awt/AWTAccessor$MouseEventAccessor;
astore 8
start local 8 49: aload 8
aload 7
50: aload 8
aload 3
invokeinterface sun.awt.AWTAccessor$MouseEventAccessor.isCausedByTouchEvent:(Ljava/awt/event/MouseEvent;)Z
51: invokeinterface sun.awt.AWTAccessor$MouseEventAccessor.setCausedByTouchEvent:(Ljava/awt/event/MouseEvent;Z)V
end local 8 52: StackMap locals: java.awt.event.MouseEvent
StackMap stack:
aload 3
aload 7
invokevirtual java.awt.AWTEvent.copyPrivateDataInto:(Ljava/awt/AWTEvent;)V
53: aload 1
aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
if_acmpne 56
54: aload 1
checkcast java.awt.Container
aload 7
invokevirtual java.awt.Container.dispatchEventToSelf:(Ljava/awt/AWTEvent;)V
55: goto 64
56: StackMap locals:
StackMap stack:
getstatic java.awt.LightweightDispatcher.$assertionsDisabled:Z
ifne 57
invokestatic sun.awt.AppContext.getAppContext:()Lsun/awt/AppContext;
aload 1
getfield java.awt.Component.appContext:Lsun/awt/AppContext;
if_acmpeq 57
new java.lang.AssertionError
dup
invokespecial java.lang.AssertionError.<init>:()V
athrow
57: StackMap locals:
StackMap stack:
aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
getfield java.awt.Container.modalComp:Ljava/awt/Component;
ifnull 63
58: aload 0
getfield java.awt.LightweightDispatcher.nativeContainer:Ljava/awt/Container;
getfield java.awt.Container.modalComp:Ljava/awt/Component;
checkcast java.awt.Container
aload 1
invokevirtual java.awt.Container.isAncestorOf:(Ljava/awt/Component;)Z
ifeq 61
59: aload 1
aload 7
invokevirtual java.awt.Component.dispatchEvent:(Ljava/awt/AWTEvent;)V
60: goto 64
61: StackMap locals:
StackMap stack:
aload 3
invokevirtual java.awt.event.MouseEvent.consume:()V
62: goto 64
63: StackMap locals:
StackMap stack:
aload 1
aload 7
invokevirtual java.awt.Component.dispatchEvent:(Ljava/awt/AWTEvent;)V
64: StackMap locals:
StackMap stack:
iload 2
sipush 507
if_icmpne 66
aload 7
invokevirtual java.awt.event.MouseEvent.isConsumed:()Z
ifeq 66
65: aload 3
invokevirtual java.awt.event.MouseEvent.consume:()V
end local 7 66: StackMap locals:
StackMap stack:
return
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 67 0 this Ljava/awt/LightweightDispatcher;
0 67 1 target Ljava/awt/Component;
0 67 2 id I
0 67 3 e Ljava/awt/event/MouseEvent;
3 67 4 x I
4 67 5 y I
5 67 6 component Ljava/awt/Component;
18 19 7 retargeted Ljava/awt/event/MouseEvent;
35 36 7 retargeted Ljava/awt/event/MouseEvent;
48 66 7 retargeted Ljava/awt/event/MouseEvent;
49 52 8 meAccessor Lsun/awt/AWTAccessor$MouseEventAccessor;
MethodParameters:
Name Flags
target
id
e
}
SourceFile: "Container.java"
NestMembers:
java.awt.LightweightDispatcher$1 java.awt.LightweightDispatcher$2 java.awt.LightweightDispatcher$3
InnerClasses:
java.awt.LightweightDispatcher$1
java.awt.LightweightDispatcher$2
java.awt.LightweightDispatcher$3
public abstract InputEventAccessor = sun.awt.AWTAccessor$InputEventAccessor of sun.awt.AWTAccessor
public abstract MouseEventAccessor = sun.awt.AWTAccessor$MouseEventAccessor of sun.awt.AWTAccessor
public final Level = sun.util.logging.PlatformLogger$Level of sun.util.logging.PlatformLogger
protected EventDispatcher = sun.awt.dnd.SunDropTargetContextPeer$EventDispatcher of sun.awt.dnd.SunDropTargetContextPeer