class com.sun.javafx.tk.quantum.ZoomGestureRecognizer implements com.sun.javafx.tk.quantum.GestureRecognizer
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: com.sun.javafx.tk.quantum.ZoomGestureRecognizer
super_class: java.lang.Object
{
private static double ZOOM_FACTOR_THRESHOLD;
descriptor: D
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static boolean ZOOM_INERTIA_ENABLED;
descriptor: Z
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static double MAX_ZOOMIN_VELOCITY;
descriptor: D
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static double MAX_ZOOMOUT_VELOCITY;
descriptor: D
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static double ZOOM_INERTIA_MILLIS;
descriptor: D
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static double MAX_ZOOM_IN_FACTOR;
descriptor: D
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private static double MAX_ZOOM_OUT_FACTOR;
descriptor: D
flags: (0x000a) ACC_PRIVATE, ACC_STATIC
private com.sun.javafx.tk.quantum.ViewScene scene;
descriptor: Lcom/sun/javafx/tk/quantum/ViewScene;
flags: (0x0002) ACC_PRIVATE
private javafx.animation.Timeline inertiaTimeline;
descriptor: Ljavafx/animation/Timeline;
flags: (0x0002) ACC_PRIVATE
private javafx.beans.property.DoubleProperty inertiaZoomVelocity;
descriptor: Ljavafx/beans/property/DoubleProperty;
flags: (0x0002) ACC_PRIVATE
private double initialInertiaZoomVelocity;
descriptor: D
flags: (0x0002) ACC_PRIVATE
private double zoomStartTime;
descriptor: D
flags: (0x0002) ACC_PRIVATE
private double lastTouchEventTime;
descriptor: D
flags: (0x0002) ACC_PRIVATE
private com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState state;
descriptor: Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
flags: (0x0002) ACC_PRIVATE
private java.util.Map<java.lang.Long, com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker> trackers;
descriptor: Ljava/util/Map;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/Map<Ljava/lang/Long;Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$TouchPointTracker;>;
private int modifiers;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean direct;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private int currentTouchCount;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean touchPointsSetChanged;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean touchPointsPressed;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private double centerX;
descriptor: D
flags: (0x0002) ACC_PRIVATE
private double centerY;
descriptor: D
flags: (0x0002) ACC_PRIVATE
private double centerAbsX;
descriptor: D
flags: (0x0002) ACC_PRIVATE
private double centerAbsY;
descriptor: D
flags: (0x0002) ACC_PRIVATE
private double currentDistance;
descriptor: D
flags: (0x0002) ACC_PRIVATE
private double distanceReference;
descriptor: D
flags: (0x0002) ACC_PRIVATE
private double zoomFactor;
descriptor: D
flags: (0x0002) ACC_PRIVATE
private double totalZoomFactor;
descriptor: D
flags: (0x0002) ACC_PRIVATE
double inertiaLastTime;
descriptor: D
flags: (0x0000)
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: ldc 0.1
putstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer.ZOOM_FACTOR_THRESHOLD:D
1: iconst_1
putstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer.ZOOM_INERTIA_ENABLED:Z
2: ldc 3.0
putstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer.MAX_ZOOMIN_VELOCITY:D
3: ldc 0.3333
putstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer.MAX_ZOOMOUT_VELOCITY:D
4: ldc 500.0
putstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer.ZOOM_INERTIA_MILLIS:D
5: ldc 10.0
putstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer.MAX_ZOOM_IN_FACTOR:D
6: ldc 0.1
putstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer.MAX_ZOOM_OUT_FACTOR:D
7: invokedynamic run()Ljava/security/PrivilegedAction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
com/sun/javafx/tk/quantum/ZoomGestureRecognizer.lambda$0()Ljava/lang/Void; (6)
()Ljava/lang/Void;
invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
pop
8: return
LocalVariableTable:
Start End Slot Name Signature
void <init>(com.sun.javafx.tk.quantum.ViewScene);
descriptor: (Lcom/sun/javafx/tk/quantum/ViewScene;)V
flags: (0x0000)
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new javafx.animation.Timeline
dup
invokespecial javafx.animation.Timeline.<init>:()V
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.inertiaTimeline:Ljavafx/animation/Timeline;
2: aload 0
new javafx.beans.property.SimpleDoubleProperty
dup
invokespecial javafx.beans.property.SimpleDoubleProperty.<init>:()V
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.inertiaZoomVelocity:Ljavafx/beans/property/DoubleProperty;
3: aload 0
dconst_0
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.initialInertiaZoomVelocity:D
4: aload 0
dconst_0
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.zoomStartTime:D
5: aload 0
dconst_0
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.lastTouchEventTime:D
6: aload 0
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.IDLE:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
7: aload 0
8: new java.util.HashMap
dup
invokespecial java.util.HashMap.<init>:()V
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.trackers:Ljava/util/Map;
9: aload 0
iconst_0
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.currentTouchCount:I
10: aload 0
dconst_1
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.zoomFactor:D
11: aload 0
dconst_1
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
12: aload 0
dconst_0
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.inertiaLastTime:D
13: aload 0
aload 1
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.scene:Lcom/sun/javafx/tk/quantum/ViewScene;
14: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.inertiaZoomVelocity:Ljavafx/beans/property/DoubleProperty;
aload 0
invokedynamic invalidated(Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;)Ljavafx/beans/InvalidationListener;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljavafx/beans/Observable;)V
com/sun/javafx/tk/quantum/ZoomGestureRecognizer.lambda$1(Ljavafx/beans/Observable;)V (7)
(Ljavafx/beans/Observable;)V
invokevirtual javafx.beans.property.DoubleProperty.addListener:(Ljavafx/beans/InvalidationListener;)V
15: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
0 16 1 scene Lcom/sun/javafx/tk/quantum/ViewScene;
MethodParameters:
Name Flags
scene final
public void notifyBeginTouchEvent(long, int, boolean, int);
descriptor: (JIZI)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=6, args_size=5
start local 0 start local 1 start local 3 start local 4 start local 5 0: aload 0
iload 3
iload 4
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer.params:(IZ)V
1: aload 0
iconst_0
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.touchPointsSetChanged:Z
2: aload 0
iconst_0
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.touchPointsPressed:Z
3: return
end local 5 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
0 4 1 time J
0 4 3 modifiers I
0 4 4 isDirect Z
0 4 5 touchEventCount I
MethodParameters:
Name Flags
time
modifiers
isDirect
touchEventCount
public void notifyNextTouchEvent(long, int, long, int, int, int, int);
descriptor: (JIJIIII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=9, locals=10, args_size=8
start local 0 start local 1 start local 3 start local 4 start local 6 start local 7 start local 8 start local 9 0: iload 3
tableswitch { // 811 - 814
811: 1
812: 6
813: 8
814: 5
default: 11
}
1: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.touchPointsSetChanged:Z
2: aload 0
iconst_1
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.touchPointsPressed:Z
3: aload 0
lload 4
lload 1
iload 6
iload 7
iload 8
iload 9
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer.touchPressed:(JJIIII)V
4: goto 14
5: StackMap locals:
StackMap stack:
goto 14
6: StackMap locals:
StackMap stack:
aload 0
lload 4
lload 1
iload 6
iload 7
iload 8
iload 9
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer.touchMoved:(JJIIII)V
7: goto 14
8: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.touchPointsSetChanged:Z
9: aload 0
lload 4
lload 1
iload 6
iload 7
iload 8
iload 9
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer.touchReleased:(JJIIII)V
10: goto 14
11: StackMap locals:
StackMap stack:
new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "Error in Zoom gesture recognition: unknown touch state: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
12: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
13: invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
14: StackMap locals:
StackMap stack:
return
end local 9 end local 8 end local 7 end local 6 end local 4 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
0 15 1 time J
0 15 3 type I
0 15 4 touchId J
0 15 6 x I
0 15 7 y I
0 15 8 xAbs I
0 15 9 yAbs I
MethodParameters:
Name Flags
time
type
touchId
x
y
xAbs
yAbs
private void calculateCenter();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=11, args_size=1
start local 0 0: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.currentTouchCount:I
ifgt 2
1: new java.lang.RuntimeException
dup
ldc "Error in Zoom gesture recognition: touch count is zero!"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
2: StackMap locals:
StackMap stack:
dconst_0
dstore 1
start local 1 3: dconst_0
dstore 3
start local 3 4: dconst_0
dstore 5
start local 5 5: dconst_0
dstore 7
start local 7 6: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.trackers:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 10
goto 12
StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer double double double double top java.util.Iterator
StackMap stack:
7: aload 10
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker
astore 9
start local 9 8: dload 1
aload 9
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker.getX:()D
dadd
dstore 1
9: dload 3
aload 9
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker.getY:()D
dadd
dstore 3
10: dload 5
aload 9
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker.getAbsX:()D
dadd
dstore 5
11: dload 7
aload 9
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker.getAbsY:()D
dadd
dstore 7
end local 9 12: StackMap locals:
StackMap stack:
aload 10
invokeinterface java.util.Iterator.hasNext:()Z
ifne 7
13: aload 0
dload 1
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.currentTouchCount:I
i2d
ddiv
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerX:D
14: aload 0
dload 3
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.currentTouchCount:I
i2d
ddiv
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerY:D
15: aload 0
dload 5
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.currentTouchCount:I
i2d
ddiv
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerAbsX:D
16: aload 0
dload 7
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.currentTouchCount:I
i2d
ddiv
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerAbsY:D
17: return
end local 7 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 18 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
3 18 1 totalX D
4 18 3 totalY D
5 18 5 totalAbsX D
6 18 7 totalAbsY D
8 12 9 tracker Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$TouchPointTracker;
private double calculateMaxDistance();
descriptor: ()D
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=11, args_size=1
start local 0 0: dconst_0
dstore 1
start local 1 1: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.trackers:Ljava/util/Map;
invokeinterface java.util.Map.values:()Ljava/util/Collection;
invokeinterface java.util.Collection.iterator:()Ljava/util/Iterator;
astore 4
goto 8
StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer double top java.util.Iterator
StackMap stack:
2: aload 4
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker
astore 3
start local 3 3: aload 3
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker.getAbsX:()D
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerAbsX:D
dsub
dstore 5
start local 5 4: aload 3
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker.getAbsY:()D
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerAbsY:D
dsub
dstore 7
start local 7 5: dload 5
dload 5
dmul
dload 7
dload 7
dmul
dadd
dstore 9
start local 9 6: dload 9
dload 1
dcmpl
ifle 8
7: dload 9
dstore 1
end local 9 end local 7 end local 5 end local 3 8: StackMap locals:
StackMap stack:
aload 4
invokeinterface java.util.Iterator.hasNext:()Z
ifne 2
9: dload 1
invokestatic java.lang.Math.sqrt:(D)D
dreturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
1 10 1 maxSquareDist D
3 8 3 tracker Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$TouchPointTracker;
4 8 5 deltaX D
5 8 7 deltaY D
6 8 9 squareDist D
public void notifyEndTouchEvent(long);
descriptor: (J)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=16, locals=9, args_size=2
start local 0 start local 1 0: aload 0
lload 1
l2d
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.lastTouchEventTime:D
1: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.currentTouchCount:I
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.trackers:Ljava/util/Map;
invokeinterface java.util.Map.size:()I
if_icmpeq 5
2: new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "Error in Zoom gesture recognition: touch count is wrong: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
3: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.currentTouchCount:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.currentTouchCount:I
ifne 40
6: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.ACTIVE:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
if_acmpne 8
7: aload 0
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer.sendZoomFinishedEvent:()V
8: StackMap locals:
StackMap stack:
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer.ZOOM_INERTIA_ENABLED:Z
ifeq 38
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.PRE_INERTIA:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
if_acmpeq 9
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.ACTIVE:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
if_acmpne 38
9: StackMap locals:
StackMap stack:
lload 1
l2d
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.zoomStartTime:D
dsub
ldc 1000000.0
ddiv
dstore 3
start local 3 10: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.initialInertiaZoomVelocity:D
dconst_0
dcmpl
ifeq 36
dload 3
ldc 200.0
dcmpg
ifge 36
11: aload 0
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.INERTIA:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
12: aload 0
dconst_0
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.inertiaLastTime:D
13: getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer.ZOOM_INERTIA_MILLIS:D
ldc 1000.0
ddiv
dstore 5
start local 5 14: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.initialInertiaZoomVelocity:D
dload 5
dmul
dadd
dstore 7
start local 7 15: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.initialInertiaZoomVelocity:D
dconst_0
dcmpl
ifle 20
16: dload 7
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
ddiv
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer.MAX_ZOOM_IN_FACTOR:D
dcmpl
ifle 23
17: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer.MAX_ZOOM_IN_FACTOR:D
dmul
dstore 7
18: dload 7
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
dsub
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.initialInertiaZoomVelocity:D
ddiv
dstore 5
19: goto 23
20: StackMap locals: double double double
StackMap stack:
dload 7
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
ddiv
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer.MAX_ZOOM_OUT_FACTOR:D
dcmpg
ifge 23
21: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer.MAX_ZOOM_OUT_FACTOR:D
dmul
dstore 7
22: dload 7
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
dsub
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.initialInertiaZoomVelocity:D
ddiv
dstore 5
23: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.inertiaTimeline:Ljavafx/animation/Timeline;
invokevirtual javafx.animation.Timeline.getKeyFrames:()Ljavafx/collections/ObservableList;
iconst_2
anewarray javafx.animation.KeyFrame
dup
iconst_0
24: new javafx.animation.KeyFrame
dup
25: dconst_0
invokestatic javafx.util.Duration.millis:(D)Ljavafx/util/Duration;
iconst_1
anewarray javafx.animation.KeyValue
dup
iconst_0
26: new javafx.animation.KeyValue
dup
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.inertiaZoomVelocity:Ljavafx/beans/property/DoubleProperty;
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.initialInertiaZoomVelocity:D
invokestatic java.lang.Double.valueOf:(D)Ljava/lang/Double;
getstatic javafx.animation.Interpolator.LINEAR:Ljavafx/animation/Interpolator;
invokespecial javafx.animation.KeyValue.<init>:(Ljavafx/beans/value/WritableValue;Ljava/lang/Object;Ljavafx/animation/Interpolator;)V
27: aastore
invokespecial javafx.animation.KeyFrame.<init>:(Ljavafx/util/Duration;[Ljavafx/animation/KeyValue;)V
aastore
dup
iconst_1
28: new javafx.animation.KeyFrame
dup
29: dload 5
invokestatic javafx.util.Duration.seconds:(D)Ljavafx/util/Duration;
30: aload 0
invokedynamic handle(Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;)Ljavafx/event/EventHandler;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljavafx/event/Event;)V
com/sun/javafx/tk/quantum/ZoomGestureRecognizer.lambda$2(Ljavafx/event/ActionEvent;)V (7)
(Ljavafx/event/ActionEvent;)V
iconst_1
anewarray javafx.animation.KeyValue
dup
iconst_0
31: new javafx.animation.KeyValue
dup
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.inertiaZoomVelocity:Ljavafx/beans/property/DoubleProperty;
iconst_0
invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
getstatic javafx.animation.Interpolator.LINEAR:Ljavafx/animation/Interpolator;
invokespecial javafx.animation.KeyValue.<init>:(Ljavafx/beans/value/WritableValue;Ljava/lang/Object;Ljavafx/animation/Interpolator;)V
32: aastore
invokespecial javafx.animation.KeyFrame.<init>:(Ljavafx/util/Duration;Ljavafx/event/EventHandler;[Ljavafx/animation/KeyValue;)V
aastore
33: invokeinterface javafx.collections.ObservableList.setAll:([Ljava/lang/Object;)Z
pop
34: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.inertiaTimeline:Ljavafx/animation/Timeline;
invokevirtual javafx.animation.Timeline.playFromStart:()V
end local 7 end local 5 35: goto 75
36: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer.reset:()V
end local 3 37: goto 75
38: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer.reset:()V
39: goto 75
40: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.touchPointsPressed:Z
ifeq 43
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.INERTIA:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
if_acmpne 43
41: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.inertiaTimeline:Ljavafx/animation/Timeline;
invokevirtual javafx.animation.Timeline.stop:()V
42: aload 0
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer.reset:()V
43: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.currentTouchCount:I
iconst_1
if_icmpne 51
44: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.ACTIVE:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
if_acmpne 75
45: aload 0
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer.sendZoomFinishedEvent:()V
46: getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer.ZOOM_INERTIA_ENABLED:Z
ifeq 49
47: aload 0
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.PRE_INERTIA:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
48: goto 75
49: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer.reset:()V
50: goto 75
51: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.IDLE:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
if_acmpne 54
52: aload 0
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.TRACKING:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
53: aload 0
lload 1
l2d
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.zoomStartTime:D
54: StackMap locals:
StackMap stack:
aload 0
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer.calculateCenter:()V
55: aload 0
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer.calculateMaxDistance:()D
dstore 3
start local 3 56: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.touchPointsSetChanged:Z
ifeq 59
57: aload 0
dload 3
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.distanceReference:D
58: goto 75
59: StackMap locals: double
StackMap stack:
aload 0
dload 3
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.distanceReference:D
ddiv
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.zoomFactor:D
60: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.TRACKING:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
if_acmpne 64
61: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.zoomFactor:D
dconst_1
dsub
invokestatic java.lang.Math.abs:(D)D
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer.ZOOM_FACTOR_THRESHOLD:D
dcmpl
ifle 64
62: aload 0
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.ACTIVE:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
63: aload 0
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer.sendZoomStartedEvent:()V
64: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.ACTIVE:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
if_acmpne 75
65: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
dstore 5
start local 5 66: aload 0
dup
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.zoomFactor:D
dmul
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
67: aload 0
iconst_0
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer.sendZoomEvent:(Z)V
68: aload 0
dload 3
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.distanceReference:D
69: lload 1
l2d
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.zoomStartTime:D
dsub
ldc 1.0E9
ddiv
dstore 7
start local 7 70: dload 7
ldc 1.0E-4
dcmpl
ifle 74
71: aload 0
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
dload 5
dsub
dload 7
ddiv
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.initialInertiaZoomVelocity:D
72: aload 0
lload 1
l2d
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.zoomStartTime:D
73: goto 75
74: StackMap locals: double double
StackMap stack:
aload 0
dconst_0
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.initialInertiaZoomVelocity:D
end local 7 end local 5 end local 3 75: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 76 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
0 76 1 time J
10 37 3 timeFromLastZoom D
14 35 5 duration D
15 35 7 newZoom D
56 75 3 currentDistance D
66 75 5 prevTotalZoomFactor D
70 75 7 timePassed D
MethodParameters:
Name Flags
time
private void sendZoomStartedEvent();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokedynamic run(Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;)Ljava/security/PrivilegedAction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
com/sun/javafx/tk/quantum/ZoomGestureRecognizer.lambda$3()Ljava/lang/Void; (7)
()Ljava/lang/Void;
1: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.scene:Lcom/sun/javafx/tk/quantum/ViewScene;
invokevirtual com.sun.javafx.tk.quantum.ViewScene.getAccessControlContext:()Ljava/security/AccessControlContext;
2: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)Ljava/lang/Object;
pop
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
private void sendZoomEvent(boolean);
descriptor: (Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
invokedynamic run(Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;Z)Ljava/security/PrivilegedAction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
com/sun/javafx/tk/quantum/ZoomGestureRecognizer.lambda$4(Z)Ljava/lang/Void; (7)
()Ljava/lang/Void;
1: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.scene:Lcom/sun/javafx/tk/quantum/ViewScene;
invokevirtual com.sun.javafx.tk.quantum.ViewScene.getAccessControlContext:()Ljava/security/AccessControlContext;
2: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)Ljava/lang/Object;
pop
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
0 4 1 isInertia Z
MethodParameters:
Name Flags
isInertia
private void sendZoomFinishedEvent();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
invokedynamic run(Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;)Ljava/security/PrivilegedAction;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
()Ljava/lang/Object;
com/sun/javafx/tk/quantum/ZoomGestureRecognizer.lambda$5()Ljava/lang/Void; (7)
()Ljava/lang/Void;
1: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.scene:Lcom/sun/javafx/tk/quantum/ViewScene;
invokevirtual com.sun.javafx.tk.quantum.ViewScene.getAccessControlContext:()Ljava/security/AccessControlContext;
2: invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;Ljava/security/AccessControlContext;)Ljava/lang/Object;
pop
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
public void params(int, boolean);
descriptor: (IZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.modifiers:I
1: aload 0
iload 2
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.direct:Z
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
0 3 1 modifiers I
0 3 2 direct Z
MethodParameters:
Name Flags
modifiers
direct
public void touchPressed(long, long, int, int, int, int);
descriptor: (JJIIII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=11, locals=10, args_size=7
start local 0 start local 1 start local 3 start local 5 start local 6 start local 7 start local 8 0: aload 0
dup
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.currentTouchCount:I
iconst_1
iadd
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.currentTouchCount:I
1: new com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker
dup
invokespecial com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker.<init>:()V
astore 9
start local 9 2: aload 9
lload 3
iload 5
i2d
iload 6
i2d
iload 7
i2d
iload 8
i2d
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker.update:(JDDDD)V
3: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.trackers:Ljava/util/Map;
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
aload 9
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
4: return
end local 9 end local 8 end local 7 end local 6 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
0 5 1 id J
0 5 3 nanos J
0 5 5 x I
0 5 6 y I
0 5 7 xAbs I
0 5 8 yAbs I
2 5 9 tracker Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$TouchPointTracker;
MethodParameters:
Name Flags
id
nanos
x
y
xAbs
yAbs
public void touchReleased(long, long, int, int, int, int);
descriptor: (JJIIII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=10, args_size=7
start local 0 start local 1 start local 3 start local 5 start local 6 start local 7 start local 8 0: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.FAILURE:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
if_acmpeq 6
1: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.trackers:Ljava/util/Map;
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker
astore 9
start local 9 2: aload 9
ifnonnull 5
3: aload 0
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.FAILURE:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
4: new java.lang.RuntimeException
dup
ldc "Error in Zoom gesture recognition: released unknown touch point"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker
StackMap stack:
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.trackers:Ljava/util/Map;
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokeinterface java.util.Map.remove:(Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 9 6: StackMap locals:
StackMap stack:
aload 0
dup
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.currentTouchCount:I
iconst_1
isub
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.currentTouchCount:I
7: return
end local 8 end local 7 end local 6 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
0 8 1 id J
0 8 3 nanos J
0 8 5 x I
0 8 6 y I
0 8 7 xAbs I
0 8 8 yAbs I
2 6 9 tracker Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$TouchPointTracker;
MethodParameters:
Name Flags
id
nanos
x
y
xAbs
yAbs
public void touchMoved(long, long, int, int, int, int);
descriptor: (JJIIII)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=11, locals=10, args_size=7
start local 0 start local 1 start local 3 start local 5 start local 6 start local 7 start local 8 0: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.FAILURE:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
if_acmpne 2
1: return
2: StackMap locals:
StackMap stack:
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.trackers:Ljava/util/Map;
lload 1
invokestatic java.lang.Long.valueOf:(J)Ljava/lang/Long;
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker
astore 9
start local 9 3: aload 9
ifnonnull 6
4: aload 0
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.FAILURE:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
5: new java.lang.RuntimeException
dup
ldc "Error in zoom gesture recognition: reported unknown touch point"
invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
6: StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker
StackMap stack:
aload 9
lload 3
iload 5
i2d
iload 6
i2d
iload 7
i2d
iload 8
i2d
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker.update:(JDDDD)V
7: return
end local 9 end local 8 end local 7 end local 6 end local 5 end local 3 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
0 8 1 id J
0 8 3 nanos J
0 8 5 x I
0 8 6 y I
0 8 7 xAbs I
0 8 8 yAbs I
3 8 9 tracker Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$TouchPointTracker;
MethodParameters:
Name Flags
id
nanos
x
y
xAbs
yAbs
void reset();
descriptor: ()V
flags: (0x0000)
Code:
stack=3, locals=1, args_size=1
start local 0 0: aload 0
getstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState.IDLE:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.state:Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer$ZoomRecognitionState;
1: aload 0
dconst_1
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.zoomFactor:D
2: aload 0
dconst_1
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
private static java.lang.Void lambda$0();
descriptor: ()Ljava/lang/Void;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=0
0: ldc "com.sun.javafx.gestures.zoom.threshold"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 0
start local 0 1: aload 0
ifnull 3
2: aload 0
invokestatic java.lang.Double.valueOf:(Ljava/lang/String;)Ljava/lang/Double;
invokevirtual java.lang.Double.doubleValue:()D
putstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer.ZOOM_FACTOR_THRESHOLD:D
3: StackMap locals: java.lang.String
StackMap stack:
ldc "com.sun.javafx.gestures.zoom.inertia"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 0
4: aload 0
ifnull 6
5: aload 0
invokestatic java.lang.Boolean.valueOf:(Ljava/lang/String;)Ljava/lang/Boolean;
invokevirtual java.lang.Boolean.booleanValue:()Z
putstatic com.sun.javafx.tk.quantum.ZoomGestureRecognizer.ZOOM_INERTIA_ENABLED:Z
6: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
1 7 0 s Ljava/lang/String;
private void lambda$1(javafx.beans.Observable);
descriptor: (Ljavafx/beans/Observable;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=7, locals=8, args_size=2
start local 0 start local 1 0: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.inertiaTimeline:Ljavafx/animation/Timeline;
invokevirtual javafx.animation.Timeline.getCurrentTime:()Ljavafx/util/Duration;
invokevirtual javafx.util.Duration.toSeconds:()D
dstore 2
start local 2 1: dload 2
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.inertiaLastTime:D
dsub
dstore 4
start local 4 2: aload 0
dload 2
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.inertiaLastTime:D
3: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
dstore 6
start local 6 4: aload 0
dup
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
dload 4
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.inertiaZoomVelocity:Ljavafx/beans/property/DoubleProperty;
invokevirtual javafx.beans.property.DoubleProperty.get:()D
dmul
dadd
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
5: aload 0
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
dload 6
ddiv
putfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.zoomFactor:D
6: aload 0
iconst_1
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer.sendZoomEvent:(Z)V
end local 6 end local 4 end local 2 7: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
0 8 1 valueModel Ljavafx/beans/Observable;
1 7 2 currentTime D
2 7 4 timePassed D
4 7 6 prevTotalZoomFactor D
private void lambda$2(javafx.event.ActionEvent);
descriptor: (Ljavafx/event/ActionEvent;)V
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokevirtual com.sun.javafx.tk.quantum.ZoomGestureRecognizer.reset:()V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
0 2 1 event Ljavafx/event/ActionEvent;
private java.lang.Void lambda$3();
descriptor: ()Ljava/lang/Void;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=20, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.scene:Lcom/sun/javafx/tk/quantum/ViewScene;
getfield com.sun.javafx.tk.quantum.ViewScene.sceneListener:Lcom/sun/javafx/tk/TKSceneListener;
ifnull 16
1: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.scene:Lcom/sun/javafx/tk/quantum/ViewScene;
getfield com.sun.javafx.tk.quantum.ViewScene.sceneListener:Lcom/sun/javafx/tk/TKSceneListener;
getstatic javafx.scene.input.ZoomEvent.ZOOM_STARTED:Ljavafx/event/EventType;
2: dconst_1
dconst_1
3: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerX:D
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerY:D
4: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerAbsX:D
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerAbsY:D
5: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.modifiers:I
iconst_1
iand
ifeq 6
iconst_1
goto 7
StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double
6: iconst_0
7: StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.modifiers:I
iconst_4
iand
ifeq 8
iconst_1
goto 9
StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int
8: iconst_0
9: StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int int
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.modifiers:I
bipush 8
iand
ifeq 10
iconst_1
goto 11
StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int int
10: iconst_0
11: StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int int int
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.modifiers:I
bipush 16
iand
ifeq 12
iconst_1
goto 13
StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int int int
12: iconst_0
13: StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int int int int
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.direct:Z
14: iconst_0
15: invokeinterface com.sun.javafx.tk.TKSceneListener.zoomEvent:(Ljavafx/event/EventType;DDDDDDZZZZZZ)V
16: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
private java.lang.Void lambda$4(boolean);
descriptor: (Z)Ljava/lang/Void;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=20, locals=2, args_size=2
start local 0 0: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.scene:Lcom/sun/javafx/tk/quantum/ViewScene;
getfield com.sun.javafx.tk.quantum.ViewScene.sceneListener:Lcom/sun/javafx/tk/TKSceneListener;
ifnull 15
1: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.scene:Lcom/sun/javafx/tk/quantum/ViewScene;
getfield com.sun.javafx.tk.quantum.ViewScene.sceneListener:Lcom/sun/javafx/tk/TKSceneListener;
getstatic javafx.scene.input.ZoomEvent.ZOOM:Ljavafx/event/EventType;
2: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.zoomFactor:D
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
3: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerX:D
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerY:D
4: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerAbsX:D
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerAbsY:D
5: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.modifiers:I
iconst_1
iand
ifeq 6
iconst_1
goto 7
StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer int
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double
6: iconst_0
7: StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer int
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.modifiers:I
iconst_4
iand
ifeq 8
iconst_1
goto 9
StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer int
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int
8: iconst_0
9: StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer int
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int int
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.modifiers:I
bipush 8
iand
ifeq 10
iconst_1
goto 11
StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer int
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int int
10: iconst_0
11: StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer int
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int int int
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.modifiers:I
bipush 16
iand
ifeq 12
iconst_1
goto 13
StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer int
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int int int
12: iconst_0
13: StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer int
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int int int int
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.direct:Z
iload 1
14: invokeinterface com.sun.javafx.tk.TKSceneListener.zoomEvent:(Ljavafx/event/EventType;DDDDDDZZZZZZ)V
15: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 16 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
private java.lang.Void lambda$5();
descriptor: ()Ljava/lang/Void;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=20, locals=1, args_size=1
start local 0 0: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.scene:Lcom/sun/javafx/tk/quantum/ViewScene;
getfield com.sun.javafx.tk.quantum.ViewScene.sceneListener:Lcom/sun/javafx/tk/TKSceneListener;
ifnull 16
1: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.scene:Lcom/sun/javafx/tk/quantum/ViewScene;
getfield com.sun.javafx.tk.quantum.ViewScene.sceneListener:Lcom/sun/javafx/tk/TKSceneListener;
getstatic javafx.scene.input.ZoomEvent.ZOOM_FINISHED:Ljavafx/event/EventType;
2: dconst_1
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.totalZoomFactor:D
3: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerX:D
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerY:D
4: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerAbsX:D
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.centerAbsY:D
5: aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.modifiers:I
iconst_1
iand
ifeq 6
iconst_1
goto 7
StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double
6: iconst_0
7: StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.modifiers:I
iconst_4
iand
ifeq 8
iconst_1
goto 9
StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int
8: iconst_0
9: StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int int
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.modifiers:I
bipush 8
iand
ifeq 10
iconst_1
goto 11
StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int int
10: iconst_0
11: StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int int int
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.modifiers:I
bipush 16
iand
ifeq 12
iconst_1
goto 13
StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int int int
12: iconst_0
13: StackMap locals: com.sun.javafx.tk.quantum.ZoomGestureRecognizer
StackMap stack: com.sun.javafx.tk.TKSceneListener javafx.event.EventType double double double double double double int int int int
aload 0
getfield com.sun.javafx.tk.quantum.ZoomGestureRecognizer.direct:Z
14: iconst_0
15: invokeinterface com.sun.javafx.tk.TKSceneListener.zoomEvent:(Ljavafx/event/EventType;DDDDDDZZZZZZ)V
16: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 17 0 this Lcom/sun/javafx/tk/quantum/ZoomGestureRecognizer;
}
SourceFile: "ZoomGestureRecognizer.java"
NestMembers:
com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState
InnerClasses:
private TouchPointTracker = com.sun.javafx.tk.quantum.ZoomGestureRecognizer$TouchPointTracker of com.sun.javafx.tk.quantum.ZoomGestureRecognizer
private final ZoomRecognitionState = com.sun.javafx.tk.quantum.ZoomGestureRecognizer$ZoomRecognitionState of com.sun.javafx.tk.quantum.ZoomGestureRecognizer
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles