class com.sun.glass.ui.monocle.LinuxMouseProcessor implements com.sun.glass.ui.monocle.LinuxInputProcessor
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.glass.ui.monocle.LinuxMouseProcessor
super_class: java.lang.Object
{
private com.sun.glass.ui.monocle.MouseInput mouse;
descriptor: Lcom/sun/glass/ui/monocle/MouseInput;
flags: (0x0002) ACC_PRIVATE
private com.sun.glass.ui.monocle.MouseState previousState;
descriptor: Lcom/sun/glass/ui/monocle/MouseState;
flags: (0x0002) ACC_PRIVATE
private com.sun.glass.ui.monocle.MouseState state;
descriptor: Lcom/sun/glass/ui/monocle/MouseState;
flags: (0x0002) ACC_PRIVATE
private boolean hasPendingState;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 // com.sun.glass.ui.monocle.LinuxMouseProcessor this
0: .line 30
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
1: .line 32
aload 0 /* this */
invokestatic com.sun.glass.ui.monocle.MouseInput.getInstance:()Lcom/sun/glass/ui/monocle/MouseInput;
putfield com.sun.glass.ui.monocle.LinuxMouseProcessor.mouse:Lcom/sun/glass/ui/monocle/MouseInput;
2: .line 33
aload 0 /* this */
new com.sun.glass.ui.monocle.MouseState
dup
invokespecial com.sun.glass.ui.monocle.MouseState.<init>:()V
putfield com.sun.glass.ui.monocle.LinuxMouseProcessor.previousState:Lcom/sun/glass/ui/monocle/MouseState;
3: .line 34
aload 0 /* this */
new com.sun.glass.ui.monocle.MouseState
dup
invokespecial com.sun.glass.ui.monocle.MouseState.<init>:()V
putfield com.sun.glass.ui.monocle.LinuxMouseProcessor.state:Lcom/sun/glass/ui/monocle/MouseState;
4: .line 30
return
end local 0 // com.sun.glass.ui.monocle.LinuxMouseProcessor this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/glass/ui/monocle/LinuxMouseProcessor;
public void processEvents(com.sun.glass.ui.monocle.LinuxInputDevice);
descriptor: (Lcom/sun/glass/ui/monocle/LinuxInputDevice;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=2
start local 0 // com.sun.glass.ui.monocle.LinuxMouseProcessor this
start local 1 // com.sun.glass.ui.monocle.LinuxInputDevice device
0: .line 43
aload 1 /* device */
invokevirtual com.sun.glass.ui.monocle.LinuxInputDevice.getBuffer:()Lcom/sun/glass/ui/monocle/LinuxEventBuffer;
astore 2 /* buffer */
start local 2 // com.sun.glass.ui.monocle.LinuxEventBuffer buffer
1: .line 44
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.mouse:Lcom/sun/glass/ui/monocle/MouseInput;
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.previousState:Lcom/sun/glass/ui/monocle/MouseState;
invokevirtual com.sun.glass.ui.monocle.MouseInput.getState:(Lcom/sun/glass/ui/monocle/MouseState;)V
2: .line 45
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.mouse:Lcom/sun/glass/ui/monocle/MouseInput;
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.state:Lcom/sun/glass/ui/monocle/MouseState;
invokevirtual com.sun.glass.ui.monocle.MouseInput.getState:(Lcom/sun/glass/ui/monocle/MouseState;)V
3: .line 46
aload 0 /* this */
iconst_0
putfield com.sun.glass.ui.monocle.LinuxMouseProcessor.hasPendingState:Z
4: .line 47
goto 34
5: .line 48
StackMap locals: com.sun.glass.ui.monocle.LinuxEventBuffer
StackMap stack:
aload 2 /* buffer */
invokevirtual com.sun.glass.ui.monocle.LinuxEventBuffer.getEventType:()S
tableswitch { // 0 - 2
0: 24
1: 27
2: 6
default: 33
}
6: .line 50
StackMap locals:
StackMap stack:
aload 2 /* buffer */
invokevirtual com.sun.glass.ui.monocle.LinuxEventBuffer.getEventCode:()S
lookupswitch { // 3
0: 7
1: 11
8: 15
default: 23
}
7: .line 52
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.previousState:Lcom/sun/glass/ui/monocle/MouseState;
invokevirtual com.sun.glass.ui.monocle.MouseState.getX:()I
istore 3 /* x */
start local 3 // int x
8: .line 53
iload 3 /* x */
aload 2 /* buffer */
invokevirtual com.sun.glass.ui.monocle.LinuxEventBuffer.getEventValue:()I
iadd
istore 3 /* x */
9: .line 54
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.state:Lcom/sun/glass/ui/monocle/MouseState;
iload 3 /* x */
invokevirtual com.sun.glass.ui.monocle.MouseState.setX:(I)V
10: .line 55
goto 33
end local 3 // int x
11: .line 57
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.previousState:Lcom/sun/glass/ui/monocle/MouseState;
invokevirtual com.sun.glass.ui.monocle.MouseState.getY:()I
istore 4 /* y */
start local 4 // int y
12: .line 58
iload 4 /* y */
aload 2 /* buffer */
invokevirtual com.sun.glass.ui.monocle.LinuxEventBuffer.getEventValue:()I
iadd
istore 4 /* y */
13: .line 59
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.state:Lcom/sun/glass/ui/monocle/MouseState;
iload 4 /* y */
invokevirtual com.sun.glass.ui.monocle.MouseState.setY:(I)V
14: .line 60
goto 33
end local 4 // int y
15: .line 62
StackMap locals:
StackMap stack:
aload 2 /* buffer */
invokevirtual com.sun.glass.ui.monocle.LinuxEventBuffer.getEventValue:()I
istore 5 /* value */
start local 5 // int value
16: .line 63
iload 5 /* value */
ifge 19
17: .line 64
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.state:Lcom/sun/glass/ui/monocle/MouseState;
iconst_m1
invokevirtual com.sun.glass.ui.monocle.MouseState.setWheel:(I)V
18: .line 65
goto 33
StackMap locals: com.sun.glass.ui.monocle.LinuxMouseProcessor com.sun.glass.ui.monocle.LinuxInputDevice com.sun.glass.ui.monocle.LinuxEventBuffer top top int
StackMap stack:
19: iload 5 /* value */
ifle 22
20: .line 66
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.state:Lcom/sun/glass/ui/monocle/MouseState;
iconst_1
invokevirtual com.sun.glass.ui.monocle.MouseState.setWheel:(I)V
21: .line 67
goto 33
22: .line 68
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.state:Lcom/sun/glass/ui/monocle/MouseState;
iconst_0
invokevirtual com.sun.glass.ui.monocle.MouseState.setWheel:(I)V
end local 5 // int value
23: .line 75
StackMap locals: com.sun.glass.ui.monocle.LinuxMouseProcessor com.sun.glass.ui.monocle.LinuxInputDevice com.sun.glass.ui.monocle.LinuxEventBuffer
StackMap stack:
goto 33
24: .line 77
StackMap locals:
StackMap stack:
aload 2 /* buffer */
invokevirtual com.sun.glass.ui.monocle.LinuxEventBuffer.getEventCode:()S
tableswitch { // 0 - 0
0: 25
default: 26
}
25: .line 79
StackMap locals:
StackMap stack:
aload 0 /* this */
invokevirtual com.sun.glass.ui.monocle.LinuxMouseProcessor.sendEvent:()V
26: .line 83
StackMap locals:
StackMap stack:
goto 33
27: .line 85
StackMap locals:
StackMap stack:
aload 2 /* buffer */
invokevirtual com.sun.glass.ui.monocle.LinuxEventBuffer.getEventCode:()S
invokestatic com.sun.glass.ui.monocle.LinuxMouseProcessor.mouseButtonForKeyCode:(I)I
istore 3 /* button */
start local 3 // int button
28: .line 86
iload 3 /* button */
iflt 33
29: .line 87
aload 2 /* buffer */
invokevirtual com.sun.glass.ui.monocle.LinuxEventBuffer.getEventValue:()I
ifne 32
30: .line 88
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.state:Lcom/sun/glass/ui/monocle/MouseState;
iload 3 /* button */
invokevirtual com.sun.glass.ui.monocle.MouseState.releaseButton:(I)V
31: .line 89
goto 33
32: .line 90
StackMap locals: int
StackMap stack:
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.state:Lcom/sun/glass/ui/monocle/MouseState;
iload 3 /* button */
invokevirtual com.sun.glass.ui.monocle.MouseState.pressButton:(I)V
end local 3 // int button
33: .line 98
StackMap locals:
StackMap stack:
aload 2 /* buffer */
invokevirtual com.sun.glass.ui.monocle.LinuxEventBuffer.nextEvent:()V
34: .line 47
StackMap locals:
StackMap stack:
aload 2 /* buffer */
invokevirtual com.sun.glass.ui.monocle.LinuxEventBuffer.hasNextEvent:()Z
ifne 5
35: .line 100
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.hasPendingState:Z
ifeq 37
36: .line 101
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.mouse:Lcom/sun/glass/ui/monocle/MouseInput;
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.previousState:Lcom/sun/glass/ui/monocle/MouseState;
iconst_0
invokevirtual com.sun.glass.ui.monocle.MouseInput.setState:(Lcom/sun/glass/ui/monocle/MouseState;Z)V
37: .line 103
StackMap locals:
StackMap stack:
return
end local 2 // com.sun.glass.ui.monocle.LinuxEventBuffer buffer
end local 1 // com.sun.glass.ui.monocle.LinuxInputDevice device
end local 0 // com.sun.glass.ui.monocle.LinuxMouseProcessor this
LocalVariableTable:
Start End Slot Name Signature
0 38 0 this Lcom/sun/glass/ui/monocle/LinuxMouseProcessor;
0 38 1 device Lcom/sun/glass/ui/monocle/LinuxInputDevice;
1 38 2 buffer Lcom/sun/glass/ui/monocle/LinuxEventBuffer;
8 11 3 x I
12 15 4 y I
16 23 5 value I
28 33 3 button I
MethodParameters:
Name Flags
device
private void sendEvent();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=3, locals=1, args_size=1
start local 0 // com.sun.glass.ui.monocle.LinuxMouseProcessor this
0: .line 106
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.state:Lcom/sun/glass/ui/monocle/MouseState;
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.previousState:Lcom/sun/glass/ui/monocle/MouseState;
invokevirtual com.sun.glass.ui.monocle.MouseState.canBeFoldedWith:(Lcom/sun/glass/ui/monocle/MouseState;)Z
ifeq 3
1: .line 108
aload 0 /* this */
iconst_1
putfield com.sun.glass.ui.monocle.LinuxMouseProcessor.hasPendingState:Z
2: .line 109
goto 7
3: .line 111
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.hasPendingState:Z
ifeq 6
4: .line 113
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.mouse:Lcom/sun/glass/ui/monocle/MouseInput;
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.previousState:Lcom/sun/glass/ui/monocle/MouseState;
iconst_0
invokevirtual com.sun.glass.ui.monocle.MouseInput.setState:(Lcom/sun/glass/ui/monocle/MouseState;Z)V
5: .line 114
aload 0 /* this */
iconst_0
putfield com.sun.glass.ui.monocle.LinuxMouseProcessor.hasPendingState:Z
6: .line 117
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.mouse:Lcom/sun/glass/ui/monocle/MouseInput;
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.state:Lcom/sun/glass/ui/monocle/MouseState;
iconst_0
invokevirtual com.sun.glass.ui.monocle.MouseInput.setState:(Lcom/sun/glass/ui/monocle/MouseState;Z)V
7: .line 119
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.state:Lcom/sun/glass/ui/monocle/MouseState;
aload 0 /* this */
getfield com.sun.glass.ui.monocle.LinuxMouseProcessor.previousState:Lcom/sun/glass/ui/monocle/MouseState;
invokevirtual com.sun.glass.ui.monocle.MouseState.copyTo:(Lcom/sun/glass/ui/monocle/MouseState;)V
8: .line 120
return
end local 0 // com.sun.glass.ui.monocle.LinuxMouseProcessor this
LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Lcom/sun/glass/ui/monocle/LinuxMouseProcessor;
private static int mouseButtonForKeyCode(int);
descriptor: (I)I
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 // int keyCode
0: .line 123
iload 0 /* keyCode */
tableswitch { // 272 - 278
272: 1
273: 3
274: 2
275: 6
276: 6
277: 5
278: 4
default: 6
}
1: .line 125
StackMap locals:
StackMap stack:
sipush 212
ireturn
2: .line 127
StackMap locals:
StackMap stack:
sipush 214
ireturn
3: .line 129
StackMap locals:
StackMap stack:
sipush 213
ireturn
4: .line 131
StackMap locals:
StackMap stack:
sipush 215
ireturn
5: .line 133
StackMap locals:
StackMap stack:
sipush 216
ireturn
6: .line 135
StackMap locals:
StackMap stack:
iconst_m1
ireturn
end local 0 // int keyCode
LocalVariableTable:
Start End Slot Name Signature
0 7 0 keyCode I
MethodParameters:
Name Flags
keyCode
}
SourceFile: "LinuxMouseProcessor.java"