public final class sun.awt.X11.XDragSourceContextPeer extends sun.awt.dnd.SunDragSourceContextPeer implements sun.awt.X11.XDragSourceProtocolListener
  minor version: 0
  major version: 59
  flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
  this_class: sun.awt.X11.XDragSourceContextPeer
  super_class: sun.awt.dnd.SunDragSourceContextPeer
{
  private static final sun.util.logging.PlatformLogger logger;
    descriptor: Lsun/util/logging/PlatformLogger;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  private static final int ROOT_EVENT_MASK;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 8195

  private static final int GRAB_EVENT_MASK;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 8204

  private long rootEventMask;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private boolean dndInProgress;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private boolean dragInProgress;
    descriptor: Z
    flags: (0x0002) ACC_PRIVATE

  private long dragRootWindow;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private sun.awt.X11.XDragSourceProtocol dragProtocol;
    descriptor: Lsun/awt/X11/XDragSourceProtocol;
    flags: (0x0002) ACC_PRIVATE

  private int targetAction;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int sourceActions;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int sourceAction;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private long[] sourceFormats;
    descriptor: [J
    flags: (0x0002) ACC_PRIVATE

  private long targetRootSubwindow;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  int windowScale;
    descriptor: I
    flags: (0x0000) 

  private int xRoot;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int yRoot;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int eventState;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private long proxyModeSourceWindow;
    descriptor: J
    flags: (0x0002) ACC_PRIVATE

  private static final sun.awt.X11.XDragSourceContextPeer theInstance;
    descriptor: Lsun/awt/X11/XDragSourceContextPeer;
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL

  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=3, locals=0, args_size=0
         0: .line 55
            ldc Lsun/awt/X11/XDragSourceContextPeer;
            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 sun.awt.X11.XDragSourceContextPeer.$assertionsDisabled:Z
         3: .line 58
            ldc "sun.awt.X11.xembed.xdnd.XDragSourceContextPeer"
            invokestatic sun.util.logging.PlatformLogger.getLogger:(Ljava/lang/String;)Lsun/util/logging/PlatformLogger;
         4: .line 57
            putstatic sun.awt.X11.XDragSourceContextPeer.logger:Lsun/util/logging/PlatformLogger;
         5: .line 100
            new sun.awt.X11.XDragSourceContextPeer
            dup
            aconst_null
            invokespecial sun.awt.X11.XDragSourceContextPeer.<init>:(Ljava/awt/dnd/DragGestureEvent;)V
         6: .line 99
            putstatic sun.awt.X11.XDragSourceContextPeer.theInstance:Lsun/awt/X11/XDragSourceContextPeer;
         7: .line 100
            return
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  private void <init>(java.awt.dnd.DragGestureEvent);
    descriptor: (Ljava/awt/dnd/DragGestureEvent;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // java.awt.dnd.DragGestureEvent dge
         0: .line 103
            aload 0 /* this */
            aload 1 /* dge */
            invokespecial sun.awt.dnd.SunDragSourceContextPeer.<init>:(Ljava/awt/dnd/DragGestureEvent;)V
         1: .line 68
            aload 0 /* this */
            lconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.rootEventMask:J
         2: .line 69
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.dndInProgress:Z
         3: .line 70
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.dragInProgress:Z
         4: .line 71
            aload 0 /* this */
            lconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.dragRootWindow:J
         5: .line 74
            aload 0 /* this */
            aconst_null
            putfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
         6: .line 76
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.targetAction:I
         7: .line 78
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.sourceActions:I
         8: .line 81
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.sourceAction:I
         9: .line 84
            aload 0 /* this */
            aconst_null
            putfield sun.awt.X11.XDragSourceContextPeer.sourceFormats:[J
        10: .line 86
            aload 0 /* this */
            lconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.targetRootSubwindow:J
        11: .line 88
            aload 0 /* this */
            iconst_1
            putfield sun.awt.X11.XDragSourceContextPeer.windowScale:I
        12: .line 90
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.xRoot:I
        13: .line 91
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.yRoot:I
        14: .line 93
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.eventState:I
        15: .line 96
            aload 0 /* this */
            lconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.proxyModeSourceWindow:J
        16: .line 104
            return
        end local 1 // java.awt.dnd.DragGestureEvent dge
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   17     0  this  Lsun/awt/X11/XDragSourceContextPeer;
            0   17     1   dge  Ljava/awt/dnd/DragGestureEvent;
    MethodParameters:
      Name  Flags
      dge   

  static sun.awt.X11.XDragSourceProtocolListener getXDragSourceProtocolListener();
    descriptor: ()Lsun/awt/X11/XDragSourceProtocolListener;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=1, locals=0, args_size=0
         0: .line 107
            getstatic sun.awt.X11.XDragSourceContextPeer.theInstance:Lsun/awt/X11/XDragSourceContextPeer;
            areturn
      LocalVariableTable:
        Start  End  Slot  Name  Signature

  static sun.awt.X11.XDragSourceContextPeer createDragSourceContextPeer(java.awt.dnd.DragGestureEvent);
    descriptor: (Ljava/awt/dnd/DragGestureEvent;)Lsun/awt/X11/XDragSourceContextPeer;
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // java.awt.dnd.DragGestureEvent dge
         0: .line 112
            getstatic sun.awt.X11.XDragSourceContextPeer.theInstance:Lsun/awt/X11/XDragSourceContextPeer;
            aload 0 /* dge */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.setTrigger:(Ljava/awt/dnd/DragGestureEvent;)V
         1: .line 113
            getstatic sun.awt.X11.XDragSourceContextPeer.theInstance:Lsun/awt/X11/XDragSourceContextPeer;
            areturn
        end local 0 // java.awt.dnd.DragGestureEvent dge
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0   dge  Ljava/awt/dnd/DragGestureEvent;
    Exceptions:
      throws java.awt.dnd.InvalidDnDOperationException
    MethodParameters:
      Name  Flags
      dge   

  protected void startDrag(java.awt.datatransfer.Transferable, long[], java.util.Map<java.lang.Long, java.awt.datatransfer.DataFlavor>);
    descriptor: (Ljava/awt/datatransfer/Transferable;[JLjava/util/Map;)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=14, locals=19, args_size=4
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // java.awt.datatransfer.Transferable transferable
        start local 2 // long[] formats
        start local 3 // java.util.Map formatMap
         0: .line 118
            aload 0 /* this */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.getTrigger:()Ljava/awt/dnd/DragGestureEvent;
            invokevirtual java.awt.dnd.DragGestureEvent.getComponent:()Ljava/awt/Component;
            astore 4 /* component */
        start local 4 // java.awt.Component component
         1: .line 119
            aconst_null
            astore 5 /* c */
        start local 5 // java.awt.Component c
         2: .line 120
            aconst_null
            astore 6 /* wpeer */
        start local 6 // sun.awt.X11.XWindowPeer wpeer
         3: .line 122
            aload 4 /* component */
            astore 5 /* c */
            goto 5
         4: .line 123
      StackMap locals: java.awt.Component java.awt.Component sun.awt.X11.XWindowPeer
      StackMap stack:
            invokestatic sun.awt.AWTAccessor.getComponentAccessor:()Lsun/awt/AWTAccessor$ComponentAccessor;
            aload 5 /* c */
            invokeinterface sun.awt.AWTAccessor$ComponentAccessor.getParent:(Ljava/awt/Component;)Ljava/awt/Container;
            astore 5 /* c */
         5: .line 122
      StackMap locals:
      StackMap stack:
            aload 5 /* c */
            ifnull 6
            aload 5 /* c */
            instanceof java.awt.Window
            ifeq 4
         6: .line 125
      StackMap locals:
      StackMap stack:
            aload 5 /* c */
            instanceof java.awt.Window
            ifeq 8
         7: .line 126
            invokestatic sun.awt.AWTAccessor.getComponentAccessor:()Lsun/awt/AWTAccessor$ComponentAccessor;
            aload 5 /* c */
            invokeinterface sun.awt.AWTAccessor$ComponentAccessor.getPeer:(Ljava/awt/Component;)Ljava/awt/peer/ComponentPeer;
            checkcast sun.awt.X11.XWindowPeer
            astore 6 /* wpeer */
         8: .line 129
      StackMap locals:
      StackMap stack:
            aload 6 /* wpeer */
            ifnonnull 12
         9: .line 130
            new java.awt.dnd.InvalidDnDOperationException
            dup
        10: .line 131
            ldc "Cannot find top-level for the drag source component"
        11: .line 130
            invokespecial java.awt.dnd.InvalidDnDOperationException.<init>:(Ljava/lang/String;)V
            athrow
        12: .line 134
      StackMap locals:
      StackMap stack:
            lconst_0
            lstore 7 /* xcursor */
        start local 7 // long xcursor
        13: .line 135
            lconst_0
            lstore 9 /* rootWindow */
        start local 9 // long rootWindow
        14: .line 136
            lconst_0
            lstore 11 /* timeStamp */
        start local 11 // long timeStamp
        15: .line 137
            aload 0 /* this */
            aload 6 /* wpeer */
            invokevirtual sun.awt.X11.XWindowPeer.getScale:()I
            putfield sun.awt.X11.XDragSourceContextPeer.windowScale:I
        16: .line 141
            aload 0 /* this */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.getCursor:()Ljava/awt/Cursor;
            astore 13 /* cursor */
        start local 13 // java.awt.Cursor cursor
        17: .line 142
            aload 13 /* cursor */
            ifnull 19
        18: .line 143
            aload 13 /* cursor */
            invokestatic sun.awt.X11.XGlobalCursorManager.getCursor:(Ljava/awt/Cursor;)J
            lstore 7 /* xcursor */
        end local 13 // java.awt.Cursor cursor
        19: .line 147
      StackMap locals: long long long
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
        20: .line 149
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.proxyModeSourceWindow:J
            lconst_0
            lcmp
            ifeq 22
        21: .line 150
            new java.awt.dnd.InvalidDnDOperationException
            dup
            ldc "Proxy drag in progress"
            invokespecial java.awt.dnd.InvalidDnDOperationException.<init>:(Ljava/lang/String;)V
            athrow
        22: .line 152
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dndInProgress:Z
            ifeq 24
        23: .line 153
            new java.awt.dnd.InvalidDnDOperationException
            dup
            ldc "Drag in progress"
            invokespecial java.awt.dnd.InvalidDnDOperationException.<init>:(Ljava/lang/String;)V
            athrow
        24: .line 158
      StackMap locals:
      StackMap stack:
            aload 6 /* wpeer */
            invokevirtual sun.awt.X11.XWindowPeer.getScreen:()J
            invokestatic sun.awt.X11.XlibWrapper.XScreenNumberOfScreen:(J)J
            lstore 13 /* screen */
        start local 13 // long screen
        25: .line 159
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
            lload 13 /* screen */
            invokestatic sun.awt.X11.XlibWrapper.RootWindow:(JJ)J
            lstore 9 /* rootWindow */
        end local 13 // long screen
        26: .line 162
            invokestatic sun.awt.X11.XToolkit.getCurrentServerTime:()J
            lstore 11 /* timeStamp */
        27: .line 164
            aload 0 /* this */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.getDragSourceContext:()Ljava/awt/dnd/DragSourceContext;
            invokevirtual java.awt.dnd.DragSourceContext.getSourceActions:()I
            istore 13 /* dropActions */
        start local 13 // int dropActions
        28: .line 167
            invokestatic sun.awt.X11.XDragAndDropProtocols.getDragSourceProtocols:()Ljava/util/Iterator;
        29: .line 166
            astore 14 /* dragProtocols */
        start local 14 // java.util.Iterator dragProtocols
        30: .line 168
            goto 39
        31: .line 169
      StackMap locals: int java.util.Iterator
      StackMap stack:
            aload 14 /* dragProtocols */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.awt.X11.XDragSourceProtocol
            astore 15 /* dragProtocol */
        start local 15 // sun.awt.X11.XDragSourceProtocol dragProtocol
        32: .line 171
            aload 15 /* dragProtocol */
            iload 13 /* dropActions */
            aload 1 /* transferable */
        33: .line 172
            aload 3 /* formatMap */
            aload 2 /* formats */
        34: .line 171
            invokevirtual sun.awt.X11.XDragSourceProtocol.initializeDrag:(ILjava/awt/datatransfer/Transferable;Ljava/util/Map;[J)V
        35: .line 173
            goto 39
      StackMap locals: sun.awt.X11.XDragSourceContextPeer java.awt.datatransfer.Transferable long[] java.util.Map java.awt.Component java.awt.Component sun.awt.X11.XWindowPeer long long long int java.util.Iterator sun.awt.X11.XDragSourceProtocol
      StackMap stack: sun.awt.X11.XException
        36: astore 16 /* xe */
        start local 16 // sun.awt.X11.XException xe
        37: .line 175
            new java.awt.dnd.InvalidDnDOperationException
            dup
            invokespecial java.awt.dnd.InvalidDnDOperationException.<init>:()V
            aload 16 /* xe */
            invokevirtual java.awt.dnd.InvalidDnDOperationException.initCause:(Ljava/lang/Throwable;)Ljava/lang/Throwable;
        38: .line 174
            checkcast java.awt.dnd.InvalidDnDOperationException
            athrow
        end local 16 // sun.awt.X11.XException xe
        end local 15 // sun.awt.X11.XDragSourceProtocol dragProtocol
        39: .line 168
      StackMap locals:
      StackMap stack:
            aload 14 /* dragProtocols */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 31
        40: .line 182
            new sun.awt.X11.XWindowAttributes
            dup
            invokespecial sun.awt.X11.XWindowAttributes.<init>:()V
            astore 16 /* wattr */
        start local 16 // sun.awt.X11.XWindowAttributes wattr
        41: .line 184
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
        42: .line 185
            lload 9 /* rootWindow */
            aload 16 /* wattr */
            getfield sun.awt.X11.XWindowAttributes.pData:J
        43: .line 184
            invokestatic sun.awt.X11.XlibWrapper.XGetWindowAttributes:(JJJ)I
            istore 15 /* status */
        start local 15 // int status
        44: .line 187
            iload 15 /* status */
            ifne 46
        45: .line 188
            new java.awt.dnd.InvalidDnDOperationException
            dup
            ldc "XGetWindowAttributes failed"
            invokespecial java.awt.dnd.InvalidDnDOperationException.<init>:(Ljava/lang/String;)V
            athrow
        46: .line 191
      StackMap locals: int sun.awt.X11.XWindowAttributes
      StackMap stack:
            aload 0 /* this */
            aload 16 /* wattr */
            invokevirtual sun.awt.X11.XWindowAttributes.get_your_event_mask:()J
            putfield sun.awt.X11.XDragSourceContextPeer.rootEventMask:J
        47: .line 193
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
            lload 9 /* rootWindow */
        48: .line 194
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.rootEventMask:J
            ldc 8195
            lor
        49: .line 193
            invokestatic sun.awt.X11.XlibWrapper.XSelectInput:(JJJ)V
        50: .line 195
            goto 54
        end local 15 // int status
      StackMap locals: sun.awt.X11.XDragSourceContextPeer java.awt.datatransfer.Transferable long[] java.util.Map java.awt.Component java.awt.Component sun.awt.X11.XWindowPeer long long long int java.util.Iterator top sun.awt.X11.XWindowAttributes
      StackMap stack: java.lang.Throwable
        51: astore 17
        52: .line 196
            aload 16 /* wattr */
            invokevirtual sun.awt.X11.XWindowAttributes.dispose:()V
        53: .line 197
            aload 17
            athrow
        start local 15 // int status
        54: .line 196
      StackMap locals: sun.awt.X11.XDragSourceContextPeer java.awt.datatransfer.Transferable long[] java.util.Map java.awt.Component java.awt.Component sun.awt.X11.XWindowPeer long long long int java.util.Iterator int sun.awt.X11.XWindowAttributes
      StackMap stack:
            aload 16 /* wattr */
            invokevirtual sun.awt.X11.XWindowAttributes.dispose:()V
        55: .line 199
            invokestatic sun.awt.X11.XBaseWindow.ungrabInput:()V
        56: .line 201
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
            lload 9 /* rootWindow */
        57: .line 202
            iconst_0
            sipush 8204
        58: .line 203
            iconst_1
        59: .line 204
            iconst_1
        60: .line 205
            lconst_0
            lload 7 /* xcursor */
            lload 11 /* timeStamp */
        61: .line 201
            invokestatic sun.awt.X11.XlibWrapper.XGrabPointer:(JJIIIIJJJ)I
            istore 15 /* status */
        62: .line 207
            iload 15 /* status */
            ifeq 67
        63: .line 208
            aload 0 /* this */
            lload 11 /* timeStamp */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.cleanup:(J)V
        64: .line 209
            aload 0 /* this */
            ldc "Cannot grab pointer"
            iload 15 /* status */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.throwGrabFailureException:(Ljava/lang/String;I)V
        65: .line 233
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        66: .line 210
            return
        67: .line 213
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
            lload 9 /* rootWindow */
        68: .line 214
            iconst_0
        69: .line 215
            iconst_1
        70: .line 216
            iconst_1
        71: .line 217
            lload 11 /* timeStamp */
        72: .line 213
            invokestatic sun.awt.X11.XlibWrapper.XGrabKeyboard:(JJIIIJ)I
            istore 15 /* status */
        73: .line 219
            iload 15 /* status */
            ifeq 78
        74: .line 220
            aload 0 /* this */
            lload 11 /* timeStamp */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.cleanup:(J)V
        75: .line 221
            aload 0 /* this */
            ldc "Cannot grab keyboard"
            iload 15 /* status */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.throwGrabFailureException:(Ljava/lang/String;I)V
        76: .line 233
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        77: .line 222
            return
        end local 16 // sun.awt.X11.XWindowAttributes wattr
        end local 15 // int status
        78: .line 227
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_1
            putfield sun.awt.X11.XDragSourceContextPeer.dndInProgress:Z
        79: .line 228
            aload 0 /* this */
            iconst_1
            putfield sun.awt.X11.XDragSourceContextPeer.dragInProgress:Z
        80: .line 229
            aload 0 /* this */
            lload 9 /* rootWindow */
            putfield sun.awt.X11.XDragSourceContextPeer.dragRootWindow:J
        81: .line 230
            aload 0 /* this */
            iload 13 /* dropActions */
            putfield sun.awt.X11.XDragSourceContextPeer.sourceActions:I
        82: .line 231
            aload 0 /* this */
            aload 2 /* formats */
            putfield sun.awt.X11.XDragSourceContextPeer.sourceFormats:[J
        end local 14 // java.util.Iterator dragProtocols
        end local 13 // int dropActions
        83: .line 232
            goto 87
      StackMap locals: sun.awt.X11.XDragSourceContextPeer java.awt.datatransfer.Transferable long[] java.util.Map java.awt.Component java.awt.Component sun.awt.X11.XWindowPeer long long long
      StackMap stack: java.lang.Throwable
        84: astore 18
        85: .line 233
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        86: .line 234
            aload 18
            athrow
        87: .line 233
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        88: .line 237
            aload 0 /* this */
            lconst_0
            invokevirtual sun.awt.X11.XDragSourceContextPeer.setNativeContext:(J)V
        89: .line 239
            aload 1 /* transferable */
            invokestatic sun.awt.dnd.SunDropTargetContextPeer.setCurrentJVMLocalSourceTransferable:(Ljava/awt/datatransfer/Transferable;)V
        90: .line 240
            return
        end local 11 // long timeStamp
        end local 9 // long rootWindow
        end local 7 // long xcursor
        end local 6 // sun.awt.X11.XWindowPeer wpeer
        end local 5 // java.awt.Component c
        end local 4 // java.awt.Component component
        end local 3 // java.util.Map formatMap
        end local 2 // long[] formats
        end local 1 // java.awt.datatransfer.Transferable transferable
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   91     0           this  Lsun/awt/X11/XDragSourceContextPeer;
            0   91     1   transferable  Ljava/awt/datatransfer/Transferable;
            0   91     2        formats  [J
            0   91     3      formatMap  Ljava/util/Map<Ljava/lang/Long;Ljava/awt/datatransfer/DataFlavor;>;
            1   91     4      component  Ljava/awt/Component;
            2   91     5              c  Ljava/awt/Component;
            3   91     6          wpeer  Lsun/awt/X11/XWindowPeer;
           13   91     7        xcursor  J
           14   91     9     rootWindow  J
           15   91    11      timeStamp  J
           17   19    13         cursor  Ljava/awt/Cursor;
           25   26    13         screen  J
           28   83    13    dropActions  I
           30   83    14  dragProtocols  Ljava/util/Iterator<Lsun/awt/X11/XDragSourceProtocol;>;
           32   39    15   dragProtocol  Lsun/awt/X11/XDragSourceProtocol;
           37   39    16             xe  Lsun/awt/X11/XException;
           44   51    15         status  I
           54   78    15         status  I
           41   78    16          wattr  Lsun/awt/X11/XWindowAttributes;
      Exception table:
        from    to  target  type
          32    35      36  Class sun.awt.X11.XException
          41    51      51  any
          20    65      84  any
          67    76      84  any
          78    84      84  any
    Signature: (Ljava/awt/datatransfer/Transferable;[JLjava/util/Map<Ljava/lang/Long;Ljava/awt/datatransfer/DataFlavor;>;)V
    MethodParameters:
              Name  Flags
      transferable  
      formats       
      formatMap     

  public long getProxyModeSourceWindow();
    descriptor: ()J
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
         0: .line 243
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.proxyModeSourceWindow:J
            lreturn
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/awt/X11/XDragSourceContextPeer;

  private void setProxyModeSourceWindowImpl(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // long window
         0: .line 247
            aload 0 /* this */
            lload 1 /* window */
            putfield sun.awt.X11.XDragSourceContextPeer.proxyModeSourceWindow:J
         1: .line 248
            return
        end local 1 // long window
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lsun/awt/X11/XDragSourceContextPeer;
            0    2     1  window  J
    MethodParameters:
        Name  Flags
      window  

  public static void setProxyModeSourceWindow(long);
    descriptor: (J)V
    flags: (0x0009) ACC_PUBLIC, ACC_STATIC
    Code:
      stack=3, locals=2, args_size=1
        start local 0 // long window
         0: .line 251
            getstatic sun.awt.X11.XDragSourceContextPeer.theInstance:Lsun/awt/X11/XDragSourceContextPeer;
            lload 0 /* window */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.setProxyModeSourceWindowImpl:(J)V
         1: .line 252
            return
        end local 0 // long window
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0  window  J
    MethodParameters:
        Name  Flags
      window  

  public void setCursor(java.awt.Cursor);
    descriptor: (Ljava/awt/Cursor;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // java.awt.Cursor c
         0: .line 259
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
         1: .line 261
            aload 0 /* this */
            aload 1 /* c */
            invokespecial sun.awt.dnd.SunDragSourceContextPeer.setCursor:(Ljava/awt/Cursor;)V
         2: .line 262
            goto 6
      StackMap locals:
      StackMap stack: java.lang.Throwable
         3: astore 2
         4: .line 263
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
         5: .line 264
            aload 2
            athrow
         6: .line 263
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
         7: .line 265
            return
        end local 1 // java.awt.Cursor c
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    8     0  this  Lsun/awt/X11/XDragSourceContextPeer;
            0    8     1     c  Ljava/awt/Cursor;
      Exception table:
        from    to  target  type
           1     3       3  any
    Exceptions:
      throws java.awt.dnd.InvalidDnDOperationException
    MethodParameters:
      Name  Flags
      c     

  protected void setNativeCursor(long, java.awt.Cursor, int);
    descriptor: (JLjava/awt/Cursor;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=7, locals=7, args_size=4
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // long nativeCtxt
        start local 3 // java.awt.Cursor c
        start local 4 // int cType
         0: .line 268
            getstatic sun.awt.X11.XDragSourceContextPeer.$assertionsDisabled:Z
            ifne 1
            invokestatic sun.awt.X11.XToolkit.isAWTLockHeldByCurrentThread:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 270
      StackMap locals:
      StackMap stack:
            aload 3 /* c */
            ifnonnull 3
         2: .line 271
            return
         3: .line 274
      StackMap locals:
      StackMap stack:
            aload 3 /* c */
            invokestatic sun.awt.X11.XGlobalCursorManager.getCursor:(Ljava/awt/Cursor;)J
            lstore 5 /* xcursor */
        start local 5 // long xcursor
         4: .line 276
            lload 5 /* xcursor */
            lconst_0
            lcmp
            ifne 6
         5: .line 277
            return
         6: .line 280
      StackMap locals: long
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
         7: .line 281
            sipush 8204
         8: .line 282
            lload 5 /* xcursor */
         9: .line 283
            lconst_0
        10: .line 280
            invokestatic sun.awt.X11.XlibWrapper.XChangeActivePointerGrab:(JIJJ)V
        11: .line 284
            return
        end local 5 // long xcursor
        end local 4 // int cType
        end local 3 // java.awt.Cursor c
        end local 1 // long nativeCtxt
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   12     0        this  Lsun/awt/X11/XDragSourceContextPeer;
            0   12     1  nativeCtxt  J
            0   12     3           c  Ljava/awt/Cursor;
            0   12     4       cType  I
            4   12     5     xcursor  J
    MethodParameters:
            Name  Flags
      nativeCtxt  
      c           
      cType       

  protected boolean needsBogusExitBeforeDrop();
    descriptor: ()Z
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
         0: .line 287
            iconst_0
            ireturn
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/awt/X11/XDragSourceContextPeer;

  private void throwGrabFailureException(java.lang.String, int);
    descriptor: (Ljava/lang/String;I)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // java.lang.String msg
        start local 2 // int grabStatus
         0: .line 292
            ldc ""
            astore 3 /* msgCause */
        start local 3 // java.lang.String msgCause
         1: .line 293
            iload 2 /* grabStatus */
            tableswitch { // 1 - 4
                    1: 3
                    2: 4
                    3: 2
                    4: 5
              default: 6
          }
         2: .line 294
      StackMap locals: java.lang.String
      StackMap stack:
            ldc "not viewable"
            astore 3 /* msgCause */
            goto 7
         3: .line 295
      StackMap locals:
      StackMap stack:
            ldc "already grabbed"
            astore 3 /* msgCause */
            goto 7
         4: .line 296
      StackMap locals:
      StackMap stack:
            ldc "invalid time"
            astore 3 /* msgCause */
            goto 7
         5: .line 297
      StackMap locals:
      StackMap stack:
            ldc "grab frozen"
            astore 3 /* msgCause */
            goto 7
         6: .line 298
      StackMap locals:
      StackMap stack:
            ldc "unknown failure"
            astore 3 /* msgCause */
         7: .line 300
      StackMap locals:
      StackMap stack:
            new java.awt.dnd.InvalidDnDOperationException
            dup
            new java.lang.StringBuilder
            dup
            aload 1 /* msg */
            invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
            ldc ": "
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 3 /* msgCause */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
            invokespecial java.awt.dnd.InvalidDnDOperationException.<init>:(Ljava/lang/String;)V
            athrow
        end local 3 // java.lang.String msgCause
        end local 2 // int grabStatus
        end local 1 // java.lang.String msg
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0    8     0        this  Lsun/awt/X11/XDragSourceContextPeer;
            0    8     1         msg  Ljava/lang/String;
            0    8     2  grabStatus  I
            1    8     3    msgCause  Ljava/lang/String;
    Exceptions:
      throws java.awt.dnd.InvalidDnDOperationException
    MethodParameters:
            Name  Flags
      msg         
      grabStatus  

  public void cleanup(long);
    descriptor: (J)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=2
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // long time
         0: .line 307
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dndInProgress:Z
            ifeq 6
         1: .line 308
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
            ifnull 3
         2: .line 309
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
            lload 1 /* time */
            invokevirtual sun.awt.X11.XDragSourceProtocol.sendLeaveMessage:(J)V
         3: .line 312
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.targetAction:I
            ifeq 5
         4: .line 313
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.xRoot:I
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.yRoot:I
            invokevirtual sun.awt.X11.XDragSourceContextPeer.dragExit:(II)V
         5: .line 316
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            iconst_0
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.xRoot:I
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.yRoot:I
            invokevirtual sun.awt.X11.XDragSourceContextPeer.dragDropFinished:(ZIII)V
         6: .line 320
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XDragAndDropProtocols.getDragSourceProtocols:()Ljava/util/Iterator;
         7: .line 319
            astore 3 /* dragProtocols */
        start local 3 // java.util.Iterator dragProtocols
         8: .line 321
            goto 13
         9: .line 322
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 3 /* dragProtocols */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.awt.X11.XDragSourceProtocol
            astore 4 /* dragProtocol */
        start local 4 // sun.awt.X11.XDragSourceProtocol dragProtocol
        10: .line 324
            aload 4 /* dragProtocol */
            invokevirtual sun.awt.X11.XDragSourceProtocol.cleanup:()V
        11: .line 325
            goto 13
      StackMap locals: sun.awt.X11.XDragSourceContextPeer long java.util.Iterator sun.awt.X11.XDragSourceProtocol
      StackMap stack: sun.awt.X11.XException
        12: pop
        end local 4 // sun.awt.X11.XDragSourceProtocol dragProtocol
        13: .line 321
      StackMap locals:
      StackMap stack:
            aload 3 /* dragProtocols */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 9
        14: .line 330
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.dndInProgress:Z
        15: .line 331
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.dragInProgress:Z
        16: .line 332
            aload 0 /* this */
            lconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.dragRootWindow:J
        17: .line 333
            aload 0 /* this */
            aconst_null
            putfield sun.awt.X11.XDragSourceContextPeer.sourceFormats:[J
        18: .line 334
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.sourceActions:I
        19: .line 335
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.sourceAction:I
        20: .line 336
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.eventState:I
        21: .line 337
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.xRoot:I
        22: .line 338
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.yRoot:I
        23: .line 340
            aload 0 /* this */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.cleanupTargetInfo:()V
        24: .line 342
            aload 0 /* this */
            lload 1 /* time */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.removeDnDGrab:(J)V
        25: .line 343
            return
        end local 3 // java.util.Iterator dragProtocols
        end local 1 // long time
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   26     0           this  Lsun/awt/X11/XDragSourceContextPeer;
            0   26     1           time  J
            8   26     3  dragProtocols  Ljava/util/Iterator<Lsun/awt/X11/XDragSourceProtocol;>;
           10   13     4   dragProtocol  Lsun/awt/X11/XDragSourceProtocol;
      Exception table:
        from    to  target  type
          10    11      12  Class sun.awt.X11.XException
    MethodParameters:
      Name  Flags
      time  

  private void cleanupTargetInfo();
    descriptor: ()V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
         0: .line 349
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.targetAction:I
         1: .line 350
            aload 0 /* this */
            aconst_null
            putfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
         2: .line 351
            aload 0 /* this */
            lconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.targetRootSubwindow:J
         3: .line 352
            return
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lsun/awt/X11/XDragSourceContextPeer;

  private void removeDnDGrab(long);
    descriptor: (J)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=6, locals=3, args_size=2
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // long time
         0: .line 355
            getstatic sun.awt.X11.XDragSourceContextPeer.$assertionsDisabled:Z
            ifne 1
            invokestatic sun.awt.X11.XToolkit.isAWTLockHeldByCurrentThread:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 357
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
            lload 1 /* time */
            invokestatic sun.awt.X11.XlibWrapper.XUngrabPointer:(JJ)V
         2: .line 358
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
            lload 1 /* time */
            invokestatic sun.awt.X11.XlibWrapper.XUngrabKeyboard:(JJ)V
         3: .line 361
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.rootEventMask:J
            ldc 8195
            lor
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.rootEventMask:J
            lcmp
            ifeq 9
         4: .line 362
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragRootWindow:J
            lconst_0
            lcmp
            ifeq 9
         5: .line 364
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
         6: .line 365
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragRootWindow:J
         7: .line 366
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.rootEventMask:J
         8: .line 364
            invokestatic sun.awt.X11.XlibWrapper.XSelectInput:(JJJ)V
         9: .line 369
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.rootEventMask:J
        10: .line 370
            aload 0 /* this */
            lconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.dragRootWindow:J
        11: .line 371
            return
        end local 1 // long time
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   12     0  this  Lsun/awt/X11/XDragSourceContextPeer;
            0   12     1  time  J
    MethodParameters:
      Name  Flags
      time  

  private boolean processClientMessage(sun.awt.X11.XClientMessageEvent);
    descriptor: (Lsun/awt/X11/XClientMessageEvent;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // sun.awt.X11.XClientMessageEvent xclient
         0: .line 374
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
            ifnull 2
         1: .line 375
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
            aload 1 /* xclient */
            invokevirtual sun.awt.X11.XDragSourceProtocol.processClientMessage:(Lsun/awt/X11/XClientMessageEvent;)Z
            ireturn
         2: .line 377
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // sun.awt.X11.XClientMessageEvent xclient
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    3     0     this  Lsun/awt/X11/XDragSourceContextPeer;
            0    3     1  xclient  Lsun/awt/X11/XClientMessageEvent;
    MethodParameters:
         Name  Flags
      xclient  

  private boolean updateSourceAction(int);
    descriptor: (I)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=3, args_size=2
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // int state
         0: .line 386
            iload 1 /* state */
            iconst_0
            iconst_0
            invokestatic sun.awt.X11.XWindow.getModifiers:(III)I
         1: .line 387
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.sourceActions:I
         2: .line 386
            invokestatic sun.awt.dnd.SunDragSourceContextPeer.convertModifiersToDropAction:(II)I
            istore 2 /* action */
        start local 2 // int action
         3: .line 388
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.sourceAction:I
            iload 2 /* action */
            if_icmpne 5
         4: .line 389
            iconst_0
            ireturn
         5: .line 391
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            iload 2 /* action */
            putfield sun.awt.X11.XDragSourceContextPeer.sourceAction:I
         6: .line 392
            iconst_1
            ireturn
        end local 2 // int action
        end local 1 // int state
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    7     0    this  Lsun/awt/X11/XDragSourceContextPeer;
            0    7     1   state  I
            3    7     2  action  I
    MethodParameters:
       Name  Flags
      state  

  private static long findClientWindow(long);
    descriptor: (J)J
    flags: (0x000a) ACC_PRIVATE, ACC_STATIC
    Code:
      stack=4, locals=7, args_size=1
        start local 0 // long window
         0: .line 399
            lload 0 /* window */
            invokestatic sun.awt.X11.XlibUtil.isTrueToplevelWindow:(J)Z
            ifeq 2
         1: .line 400
            lload 0 /* window */
            lreturn
         2: .line 403
      StackMap locals:
      StackMap stack:
            lload 0 /* window */
            invokestatic sun.awt.X11.XlibUtil.getChildWindows:(J)Ljava/util/Set;
            astore 2 /* children */
        start local 2 // java.util.Set children
         3: .line 404
            aload 2 /* children */
            invokeinterface java.util.Set.iterator:()Ljava/util/Iterator;
            astore 4
            goto 8
      StackMap locals: long java.util.Set top java.util.Iterator
      StackMap stack:
         4: aload 4
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast java.lang.Long
            astore 3 /* child */
        start local 3 // java.lang.Long child
         5: .line 405
            aload 3 /* child */
            invokevirtual java.lang.Long.longValue:()J
            invokestatic sun.awt.X11.XDragSourceContextPeer.findClientWindow:(J)J
            lstore 5 /* win */
        start local 5 // long win
         6: .line 406
            lload 5 /* win */
            lconst_0
            lcmp
            ifeq 8
         7: .line 407
            lload 5 /* win */
            lreturn
        end local 5 // long win
        end local 3 // java.lang.Long child
         8: .line 404
      StackMap locals:
      StackMap stack:
            aload 4
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 4
         9: .line 411
            lconst_0
            lreturn
        end local 2 // java.util.Set children
        end local 0 // long window
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0   10     0    window  J
            3   10     2  children  Ljava/util/Set<Ljava/lang/Long;>;
            5    8     3     child  Ljava/lang/Long;
            6    8     5       win  J
    MethodParameters:
        Name  Flags
      window  

  private void doUpdateTargetWindow(long, long);
    descriptor: (JJ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=5, locals=10, args_size=3
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // long subwindow
        start local 3 // long time
         0: .line 415
            lconst_0
            lstore 5 /* clientWindow */
        start local 5 // long clientWindow
         1: .line 417
            aconst_null
            astore 7 /* protocol */
        start local 7 // sun.awt.X11.XDragSourceProtocol protocol
         2: .line 420
            lload 1 /* subwindow */
            lconst_0
            lcmp
            ifeq 4
         3: .line 421
            lload 1 /* subwindow */
            invokestatic sun.awt.X11.XDragSourceContextPeer.findClientWindow:(J)J
            lstore 5 /* clientWindow */
         4: .line 424
      StackMap locals: long sun.awt.X11.XDragSourceProtocol
      StackMap stack:
            lload 5 /* clientWindow */
            lconst_0
            lcmp
            ifeq 13
         5: .line 426
            invokestatic sun.awt.X11.XDragAndDropProtocols.getDragSourceProtocols:()Ljava/util/Iterator;
         6: .line 425
            astore 8 /* dragProtocols */
        start local 8 // java.util.Iterator dragProtocols
         7: .line 427
            goto 12
         8: .line 428
      StackMap locals: java.util.Iterator
      StackMap stack:
            aload 8 /* dragProtocols */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.awt.X11.XDragSourceProtocol
            astore 9 /* dragProtocol */
        start local 9 // sun.awt.X11.XDragSourceProtocol dragProtocol
         9: .line 429
            aload 9 /* dragProtocol */
            lload 5 /* clientWindow */
            lload 3 /* time */
            invokevirtual sun.awt.X11.XDragSourceProtocol.attachTargetWindow:(JJ)Z
            ifeq 12
        10: .line 430
            aload 9 /* dragProtocol */
            astore 7 /* protocol */
        11: .line 431
            goto 13
        end local 9 // sun.awt.X11.XDragSourceProtocol dragProtocol
        12: .line 427
      StackMap locals:
      StackMap stack:
            aload 8 /* dragProtocols */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 8
        end local 8 // java.util.Iterator dragProtocols
        13: .line 437
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 7 /* protocol */
            putfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
        14: .line 438
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.targetAction:I
        15: .line 439
            aload 0 /* this */
            lload 1 /* subwindow */
            putfield sun.awt.X11.XDragSourceContextPeer.targetRootSubwindow:J
        16: .line 440
            return
        end local 7 // sun.awt.X11.XDragSourceProtocol protocol
        end local 5 // long clientWindow
        end local 3 // long time
        end local 1 // long subwindow
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   17     0           this  Lsun/awt/X11/XDragSourceContextPeer;
            0   17     1      subwindow  J
            0   17     3           time  J
            1   17     5   clientWindow  J
            2   17     7       protocol  Lsun/awt/X11/XDragSourceProtocol;
            7   13     8  dragProtocols  Ljava/util/Iterator<Lsun/awt/X11/XDragSourceProtocol;>;
            9   12     9   dragProtocol  Lsun/awt/X11/XDragSourceProtocol;
    MethodParameters:
           Name  Flags
      subwindow  
      time       

  private void updateTargetWindow(sun.awt.X11.XMotionEvent);
    descriptor: (Lsun/awt/X11/XMotionEvent;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=18, locals=8, args_size=2
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // sun.awt.X11.XMotionEvent xmotion
         0: .line 443
            getstatic sun.awt.X11.XDragSourceContextPeer.$assertionsDisabled:Z
            ifne 1
            invokestatic sun.awt.X11.XToolkit.isAWTLockHeldByCurrentThread:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 445
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.get_x_root:()I
            invokevirtual sun.awt.X11.XDragSourceContextPeer.scaleDown:(I)I
            istore 2 /* x */
        start local 2 // int x
         2: .line 446
            aload 0 /* this */
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.get_y_root:()I
            invokevirtual sun.awt.X11.XDragSourceContextPeer.scaleDown:(I)I
            istore 3 /* y */
        start local 3 // int y
         3: .line 447
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.get_time:()J
            lstore 4 /* time */
        start local 4 // long time
         4: .line 448
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.get_subwindow:()J
            lstore 6 /* subwindow */
        start local 6 // long subwindow
         5: .line 454
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.get_window:()J
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.get_root:()J
            lcmp
            ifeq 17
         6: .line 455
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
         7: .line 456
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.get_root:()J
         8: .line 457
            getstatic sun.awt.X11.XlibWrapper.larg1:J
         9: .line 458
            getstatic sun.awt.X11.XlibWrapper.larg2:J
        10: .line 459
            getstatic sun.awt.X11.XlibWrapper.larg3:J
        11: .line 460
            getstatic sun.awt.X11.XlibWrapper.larg4:J
        12: .line 461
            getstatic sun.awt.X11.XlibWrapper.larg5:J
        13: .line 462
            getstatic sun.awt.X11.XlibWrapper.larg6:J
        14: .line 463
            getstatic sun.awt.X11.XlibWrapper.larg7:J
        15: .line 455
            invokestatic sun.awt.X11.XlibWrapper.XQueryPointer:(JJJJJJJJJ)Z
            pop
        16: .line 464
            getstatic sun.awt.X11.XlibWrapper.larg2:J
            invokestatic sun.awt.X11.Native.getLong:(J)J
            lstore 6 /* subwindow */
        17: .line 467
      StackMap locals: sun.awt.X11.XDragSourceContextPeer sun.awt.X11.XMotionEvent int int long long
      StackMap stack:
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.targetRootSubwindow:J
            lload 6 /* subwindow */
            lcmp
            ifeq 29
        18: .line 468
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
            ifnull 22
        19: .line 469
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
            lload 4 /* time */
            invokevirtual sun.awt.X11.XDragSourceProtocol.sendLeaveMessage:(J)V
        20: .line 477
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.targetAction:I
            ifeq 22
        21: .line 478
            aload 0 /* this */
            iload 2 /* x */
            iload 3 /* y */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.dragExit:(II)V
        22: .line 483
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            lload 6 /* subwindow */
            lload 4 /* time */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.doUpdateTargetWindow:(JJ)V
        23: .line 485
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
            ifnull 29
        24: .line 486
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.sourceFormats:[J
        25: .line 487
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.sourceAction:I
        26: .line 488
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.sourceActions:I
        27: .line 489
            lload 4 /* time */
        28: .line 486
            invokevirtual sun.awt.X11.XDragSourceProtocol.sendEnterMessage:([JIIJ)V
        29: .line 492
      StackMap locals:
      StackMap stack:
            return
        end local 6 // long subwindow
        end local 4 // long time
        end local 3 // int y
        end local 2 // int x
        end local 1 // sun.awt.X11.XMotionEvent xmotion
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   30     0       this  Lsun/awt/X11/XDragSourceContextPeer;
            0   30     1    xmotion  Lsun/awt/X11/XMotionEvent;
            2   30     2          x  I
            3   30     3          y  I
            4   30     4       time  J
            5   30     6  subwindow  J
    MethodParameters:
         Name  Flags
      xmotion  

  private void processMouseMove(sun.awt.X11.XMotionEvent);
    descriptor: (Lsun/awt/X11/XMotionEvent;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=4, args_size=2
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // sun.awt.X11.XMotionEvent xmotion
         0: .line 499
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragInProgress:Z
            ifne 2
         1: .line 500
            return
         2: .line 503
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.get_x_root:()I
            invokevirtual sun.awt.X11.XDragSourceContextPeer.scaleDown:(I)I
            istore 2 /* motionXRoot */
        start local 2 // int motionXRoot
         3: .line 504
            aload 0 /* this */
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.get_y_root:()I
            invokevirtual sun.awt.X11.XDragSourceContextPeer.scaleDown:(I)I
            istore 3 /* motionYRoot */
        start local 3 // int motionYRoot
         4: .line 506
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.xRoot:I
            iload 2 /* motionXRoot */
            if_icmpne 5
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.yRoot:I
            iload 3 /* motionYRoot */
            if_icmpeq 11
         5: .line 507
      StackMap locals: int int
      StackMap stack:
            aload 0 /* this */
            iload 2 /* motionXRoot */
            putfield sun.awt.X11.XDragSourceContextPeer.xRoot:I
         6: .line 508
            aload 0 /* this */
            iload 3 /* motionYRoot */
            putfield sun.awt.X11.XDragSourceContextPeer.yRoot:I
         7: .line 510
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.targetAction:I
         8: .line 511
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.get_state:()I
            iconst_0
            iconst_0
            invokestatic sun.awt.X11.XWindow.getModifiers:(III)I
         9: .line 512
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.xRoot:I
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.yRoot:I
            bipush 6
        10: .line 510
            invokevirtual sun.awt.X11.XDragSourceContextPeer.postDragSourceDragEvent:(IIIII)V
        11: .line 515
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.eventState:I
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.get_state:()I
            if_icmpeq 18
        12: .line 516
            aload 0 /* this */
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.get_state:()I
            invokevirtual sun.awt.X11.XDragSourceContextPeer.updateSourceAction:(I)Z
            ifeq 17
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
            ifnull 17
        13: .line 517
            aload 0 /* this */
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.targetAction:I
        14: .line 518
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.get_state:()I
            iconst_0
            iconst_0
            invokestatic sun.awt.X11.XWindow.getModifiers:(III)I
        15: .line 519
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.xRoot:I
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.yRoot:I
            iconst_3
        16: .line 517
            invokevirtual sun.awt.X11.XDragSourceContextPeer.postDragSourceDragEvent:(IIIII)V
        17: .line 521
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.get_state:()I
            putfield sun.awt.X11.XDragSourceContextPeer.eventState:I
        18: .line 524
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.updateTargetWindow:(Lsun/awt/X11/XMotionEvent;)V
        19: .line 526
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
            ifnull 25
        20: .line 527
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
            aload 0 /* this */
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.get_x_root:()I
            invokevirtual sun.awt.X11.XDragSourceContextPeer.scaleDown:(I)I
        21: .line 528
            aload 0 /* this */
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.get_y_root:()I
            invokevirtual sun.awt.X11.XDragSourceContextPeer.scaleDown:(I)I
        22: .line 529
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.sourceAction:I
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.sourceActions:I
        23: .line 530
            aload 1 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.get_time:()J
        24: .line 527
            invokevirtual sun.awt.X11.XDragSourceProtocol.sendMoveMessage:(IIIIJ)V
        25: .line 532
      StackMap locals:
      StackMap stack:
            return
        end local 3 // int motionYRoot
        end local 2 // int motionXRoot
        end local 1 // sun.awt.X11.XMotionEvent xmotion
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   26     0         this  Lsun/awt/X11/XDragSourceContextPeer;
            0   26     1      xmotion  Lsun/awt/X11/XMotionEvent;
            3   26     2  motionXRoot  I
            4   26     3  motionYRoot  I
    MethodParameters:
         Name  Flags
      xmotion  

  private void processDrop(sun.awt.X11.XButtonEvent);
    descriptor: (Lsun/awt/X11/XButtonEvent;)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=2, args_size=2
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // sun.awt.X11.XButtonEvent xbutton
         0: .line 536
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
            aload 0 /* this */
            aload 1 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_x_root:()I
            invokevirtual sun.awt.X11.XDragSourceContextPeer.scaleDown:(I)I
         1: .line 537
            aload 0 /* this */
            aload 1 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_y_root:()I
            invokevirtual sun.awt.X11.XDragSourceContextPeer.scaleDown:(I)I
         2: .line 538
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.sourceAction:I
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.sourceActions:I
         3: .line 539
            aload 1 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_time:()J
         4: .line 536
            invokevirtual sun.awt.X11.XDragSourceProtocol.initiateDrop:(IIIIJ)V
         5: .line 540
            goto 8
      StackMap locals:
      StackMap stack: sun.awt.X11.XException
         6: pop
         7: .line 541
            aload 0 /* this */
            aload 1 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_time:()J
            invokevirtual sun.awt.X11.XDragSourceContextPeer.cleanup:(J)V
         8: .line 543
      StackMap locals:
      StackMap stack:
            return
        end local 1 // sun.awt.X11.XButtonEvent xbutton
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    9     0     this  Lsun/awt/X11/XDragSourceContextPeer;
            0    9     1  xbutton  Lsun/awt/X11/XButtonEvent;
      Exception table:
        from    to  target  type
           0     5       6  Class sun.awt.X11.XException
    MethodParameters:
         Name  Flags
      xbutton  

  private boolean processProxyModeEvent(sun.awt.X11.XEvent);
    descriptor: (Lsun/awt/X11/XEvent;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=4, locals=5, args_size=2
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // sun.awt.X11.XEvent ev
         0: .line 546
            aload 0 /* this */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.getProxyModeSourceWindow:()J
            lconst_0
            lcmp
            ifne 2
         1: .line 547
            iconst_0
            ireturn
         2: .line 550
      StackMap locals:
      StackMap stack:
            aload 1 /* ev */
            invokevirtual sun.awt.X11.XEvent.get_type:()I
            bipush 33
            if_icmpeq 4
         3: .line 551
            iconst_0
            ireturn
         4: .line 554
      StackMap locals:
      StackMap stack:
            getstatic sun.awt.X11.XDragSourceContextPeer.logger: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 9
         5: .line 555
            getstatic sun.awt.X11.XDragSourceContextPeer.logger:Lsun/util/logging/PlatformLogger;
            new java.lang.StringBuilder
            dup
            ldc "        proxyModeSourceWindow="
            invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
         6: .line 556
            aload 0 /* this */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.getProxyModeSourceWindow:()J
            invokevirtual java.lang.StringBuilder.append:(J)Ljava/lang/StringBuilder;
         7: .line 557
            ldc " ev="
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
            aload 1 /* ev */
            invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
            invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
         8: .line 555
            invokevirtual sun.util.logging.PlatformLogger.finest:(Ljava/lang/String;)V
         9: .line 560
      StackMap locals:
      StackMap stack:
            aload 1 /* ev */
            invokevirtual sun.awt.X11.XEvent.get_xclient:()Lsun/awt/X11/XClientMessageEvent;
            astore 2 /* xclient */
        start local 2 // sun.awt.X11.XClientMessageEvent xclient
        10: .line 563
            invokestatic sun.awt.X11.XDragAndDropProtocols.getDragSourceProtocols:()Ljava/util/Iterator;
        11: .line 562
            astore 3 /* dragProtocols */
        start local 3 // java.util.Iterator dragProtocols
        12: .line 564
            goto 19
        13: .line 565
      StackMap locals: sun.awt.X11.XClientMessageEvent java.util.Iterator
      StackMap stack:
            aload 3 /* dragProtocols */
            invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
            checkcast sun.awt.X11.XDragSourceProtocol
            astore 4 /* dragProtocol */
        start local 4 // sun.awt.X11.XDragSourceProtocol dragProtocol
        14: .line 566
            aload 4 /* dragProtocol */
            aload 2 /* xclient */
        15: .line 567
            aload 0 /* this */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.getProxyModeSourceWindow:()J
        16: .line 566
            invokevirtual sun.awt.X11.XDragSourceProtocol.processProxyModeEvent:(Lsun/awt/X11/XClientMessageEvent;J)Z
        17: .line 567
            ifeq 19
        18: .line 568
            iconst_1
            ireturn
        end local 4 // sun.awt.X11.XDragSourceProtocol dragProtocol
        19: .line 564
      StackMap locals:
      StackMap stack:
            aload 3 /* dragProtocols */
            invokeinterface java.util.Iterator.hasNext:()Z
            ifne 13
        20: .line 572
            iconst_0
            ireturn
        end local 3 // java.util.Iterator dragProtocols
        end local 2 // sun.awt.X11.XClientMessageEvent xclient
        end local 1 // sun.awt.X11.XEvent ev
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   21     0           this  Lsun/awt/X11/XDragSourceContextPeer;
            0   21     1             ev  Lsun/awt/X11/XEvent;
           10   21     2        xclient  Lsun/awt/X11/XClientMessageEvent;
           12   21     3  dragProtocols  Ljava/util/Iterator<Lsun/awt/X11/XDragSourceProtocol;>;
           14   19     4   dragProtocol  Lsun/awt/X11/XDragSourceProtocol;
    MethodParameters:
      Name  Flags
      ev    

  private boolean doProcessEvent(sun.awt.X11.XEvent);
    descriptor: (Lsun/awt/X11/XEvent;)Z
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=18, locals=7, args_size=2
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // sun.awt.X11.XEvent ev
         0: .line 581
            getstatic sun.awt.X11.XDragSourceContextPeer.$assertionsDisabled:Z
            ifne 1
            invokestatic sun.awt.X11.XToolkit.isAWTLockHeldByCurrentThread:()Z
            ifne 1
            new java.lang.AssertionError
            dup
            invokespecial java.lang.AssertionError.<init>:()V
            athrow
         1: .line 583
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* ev */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.processProxyModeEvent:(Lsun/awt/X11/XEvent;)Z
            ifeq 3
         2: .line 584
            iconst_1
            ireturn
         3: .line 587
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dndInProgress:Z
            ifne 5
         4: .line 588
            iconst_0
            ireturn
         5: .line 591
      StackMap locals:
      StackMap stack:
            aload 1 /* ev */
            invokevirtual sun.awt.X11.XEvent.get_type:()I
            lookupswitch { // 2
                   17: 8
                   33: 6
              default: 15
          }
         6: .line 593
      StackMap locals:
      StackMap stack:
            aload 1 /* ev */
            invokevirtual sun.awt.X11.XEvent.get_xclient:()Lsun/awt/X11/XClientMessageEvent;
            astore 2 /* xclient */
        start local 2 // sun.awt.X11.XClientMessageEvent xclient
         7: .line 594
            aload 0 /* this */
            aload 2 /* xclient */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.processClientMessage:(Lsun/awt/X11/XClientMessageEvent;)Z
            ireturn
        end local 2 // sun.awt.X11.XClientMessageEvent xclient
         8: .line 597
      StackMap locals:
      StackMap stack:
            aload 1 /* ev */
            invokevirtual sun.awt.X11.XEvent.get_xdestroywindow:()Lsun/awt/X11/XDestroyWindowEvent;
            astore 2 /* xde */
        start local 2 // sun.awt.X11.XDestroyWindowEvent xde
         9: .line 600
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragInProgress:Z
            ifne 14
        10: .line 601
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
            ifnull 14
        11: .line 602
            aload 2 /* xde */
            invokevirtual sun.awt.X11.XDestroyWindowEvent.get_window:()J
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
            invokevirtual sun.awt.X11.XDragSourceProtocol.getTargetWindow:()J
            lcmp
            ifne 14
        12: .line 603
            aload 0 /* this */
            lconst_0
            invokevirtual sun.awt.X11.XDragSourceContextPeer.cleanup:(J)V
        13: .line 604
            iconst_1
            ireturn
        14: .line 607
      StackMap locals: sun.awt.X11.XDestroyWindowEvent
      StackMap stack:
            iconst_0
            ireturn
        end local 2 // sun.awt.X11.XDestroyWindowEvent xde
        15: .line 611
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragInProgress:Z
            ifne 17
        16: .line 612
            iconst_0
            ireturn
        17: .line 616
      StackMap locals:
      StackMap stack:
            aload 1 /* ev */
            invokevirtual sun.awt.X11.XEvent.get_type:()I
            tableswitch { // 2 - 6
                    2: 18
                    3: 18
                    4: 58
                    5: 61
                    6: 59
              default: 94
          }
        18: .line 619
      StackMap locals:
      StackMap stack:
            aload 1 /* ev */
            invokevirtual sun.awt.X11.XEvent.get_xkey:()Lsun/awt/X11/XKeyEvent;
            astore 2 /* xkey */
        start local 2 // sun.awt.X11.XKeyEvent xkey
        19: .line 620
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
        20: .line 621
            aload 2 /* xkey */
            invokevirtual sun.awt.X11.XKeyEvent.get_keycode:()I
            iconst_0
        21: .line 620
            invokestatic sun.awt.X11.XlibWrapper.XKeycodeToKeysym:(JII)J
            lstore 3 /* keysym */
        start local 3 // long keysym
        22: .line 622
            lload 3 /* keysym */
            l2i
            lookupswitch { // 5
                65307: 23
                65505: 26
                65506: 26
                65507: 26
                65508: 26
              default: 57
          }
        23: .line 624
      StackMap locals: sun.awt.X11.XKeyEvent long
      StackMap stack:
            aload 1 /* ev */
            invokevirtual sun.awt.X11.XEvent.get_type:()I
            iconst_3
            if_icmpne 57
        24: .line 625
            aload 0 /* this */
            aload 2 /* xkey */
            invokevirtual sun.awt.X11.XKeyEvent.get_time:()J
            invokevirtual sun.awt.X11.XDragSourceContextPeer.cleanup:(J)V
        25: .line 627
            goto 57
        26: .line 633
      StackMap locals:
      StackMap stack:
            invokestatic sun.awt.X11.XToolkit.getDisplay:()J
        27: .line 634
            aload 2 /* xkey */
            invokevirtual sun.awt.X11.XKeyEvent.get_root:()J
        28: .line 635
            getstatic sun.awt.X11.XlibWrapper.larg1:J
        29: .line 636
            getstatic sun.awt.X11.XlibWrapper.larg2:J
        30: .line 637
            getstatic sun.awt.X11.XlibWrapper.larg3:J
        31: .line 638
            getstatic sun.awt.X11.XlibWrapper.larg4:J
        32: .line 639
            getstatic sun.awt.X11.XlibWrapper.larg5:J
        33: .line 640
            getstatic sun.awt.X11.XlibWrapper.larg6:J
        34: .line 641
            getstatic sun.awt.X11.XlibWrapper.larg7:J
        35: .line 633
            invokestatic sun.awt.X11.XlibWrapper.XQueryPointer:(JJJJJJJJJ)Z
            pop
        36: .line 642
            new sun.awt.X11.XMotionEvent
            dup
            invokespecial sun.awt.X11.XMotionEvent.<init>:()V
            astore 5 /* xmotion */
        start local 5 // sun.awt.X11.XMotionEvent xmotion
        37: .line 644
            aload 5 /* xmotion */
            bipush 6
            invokevirtual sun.awt.X11.XMotionEvent.set_type:(I)V
        38: .line 645
            aload 5 /* xmotion */
            aload 2 /* xkey */
            invokevirtual sun.awt.X11.XKeyEvent.get_serial:()J
            invokevirtual sun.awt.X11.XMotionEvent.set_serial:(J)V
        39: .line 646
            aload 5 /* xmotion */
            aload 2 /* xkey */
            invokevirtual sun.awt.X11.XKeyEvent.get_send_event:()Z
            invokevirtual sun.awt.X11.XMotionEvent.set_send_event:(Z)V
        40: .line 647
            aload 5 /* xmotion */
            aload 2 /* xkey */
            invokevirtual sun.awt.X11.XKeyEvent.get_display:()J
            invokevirtual sun.awt.X11.XMotionEvent.set_display:(J)V
        41: .line 648
            aload 5 /* xmotion */
            aload 2 /* xkey */
            invokevirtual sun.awt.X11.XKeyEvent.get_window:()J
            invokevirtual sun.awt.X11.XMotionEvent.set_window:(J)V
        42: .line 649
            aload 5 /* xmotion */
            aload 2 /* xkey */
            invokevirtual sun.awt.X11.XKeyEvent.get_root:()J
            invokevirtual sun.awt.X11.XMotionEvent.set_root:(J)V
        43: .line 650
            aload 5 /* xmotion */
            aload 2 /* xkey */
            invokevirtual sun.awt.X11.XKeyEvent.get_subwindow:()J
            invokevirtual sun.awt.X11.XMotionEvent.set_subwindow:(J)V
        44: .line 651
            aload 5 /* xmotion */
            aload 2 /* xkey */
            invokevirtual sun.awt.X11.XKeyEvent.get_time:()J
            invokevirtual sun.awt.X11.XMotionEvent.set_time:(J)V
        45: .line 652
            aload 5 /* xmotion */
            aload 2 /* xkey */
            invokevirtual sun.awt.X11.XKeyEvent.get_x:()I
            invokevirtual sun.awt.X11.XMotionEvent.set_x:(I)V
        46: .line 653
            aload 5 /* xmotion */
            aload 2 /* xkey */
            invokevirtual sun.awt.X11.XKeyEvent.get_y:()I
            invokevirtual sun.awt.X11.XMotionEvent.set_y:(I)V
        47: .line 654
            aload 5 /* xmotion */
            aload 2 /* xkey */
            invokevirtual sun.awt.X11.XKeyEvent.get_x_root:()I
            invokevirtual sun.awt.X11.XMotionEvent.set_x_root:(I)V
        48: .line 655
            aload 5 /* xmotion */
            aload 2 /* xkey */
            invokevirtual sun.awt.X11.XKeyEvent.get_y_root:()I
            invokevirtual sun.awt.X11.XMotionEvent.set_y_root:(I)V
        49: .line 656
            aload 5 /* xmotion */
            getstatic sun.awt.X11.XlibWrapper.larg7:J
            invokestatic sun.awt.X11.Native.getInt:(J)I
            invokevirtual sun.awt.X11.XMotionEvent.set_state:(I)V
        50: .line 659
            aload 5 /* xmotion */
            aload 2 /* xkey */
            invokevirtual sun.awt.X11.XKeyEvent.get_same_screen:()Z
            invokevirtual sun.awt.X11.XMotionEvent.set_same_screen:(Z)V
        51: .line 662
            aload 0 /* this */
            aload 5 /* xmotion */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.processMouseMove:(Lsun/awt/X11/XMotionEvent;)V
        52: .line 663
            goto 56
      StackMap locals: sun.awt.X11.XDragSourceContextPeer sun.awt.X11.XEvent sun.awt.X11.XKeyEvent long sun.awt.X11.XMotionEvent
      StackMap stack: java.lang.Throwable
        53: astore 6
        54: .line 664
            aload 5 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.dispose:()V
        55: .line 665
            aload 6
            athrow
        56: .line 664
      StackMap locals:
      StackMap stack:
            aload 5 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.dispose:()V
        end local 5 // sun.awt.X11.XMotionEvent xmotion
        57: .line 669
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 3 // long keysym
        end local 2 // sun.awt.X11.XKeyEvent xkey
        58: .line 672
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        59: .line 674
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 1 /* ev */
            invokevirtual sun.awt.X11.XEvent.get_xmotion:()Lsun/awt/X11/XMotionEvent;
            invokevirtual sun.awt.X11.XDragSourceContextPeer.processMouseMove:(Lsun/awt/X11/XMotionEvent;)V
        60: .line 675
            iconst_1
            ireturn
        61: .line 677
      StackMap locals:
      StackMap stack:
            aload 1 /* ev */
            invokevirtual sun.awt.X11.XEvent.get_xbutton:()Lsun/awt/X11/XButtonEvent;
            astore 2 /* xbutton */
        start local 2 // sun.awt.X11.XButtonEvent xbutton
        62: .line 683
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_button:()I
            bipush 20
            if_icmple 64
        63: .line 684
            iconst_1
            ireturn
        64: .line 692
      StackMap locals: sun.awt.X11.XButtonEvent
      StackMap stack:
            new sun.awt.X11.XMotionEvent
            dup
            invokespecial sun.awt.X11.XMotionEvent.<init>:()V
            astore 3 /* xmotion */
        start local 3 // sun.awt.X11.XMotionEvent xmotion
        65: .line 694
            aload 3 /* xmotion */
            bipush 6
            invokevirtual sun.awt.X11.XMotionEvent.set_type:(I)V
        66: .line 695
            aload 3 /* xmotion */
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_serial:()J
            invokevirtual sun.awt.X11.XMotionEvent.set_serial:(J)V
        67: .line 696
            aload 3 /* xmotion */
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_send_event:()Z
            invokevirtual sun.awt.X11.XMotionEvent.set_send_event:(Z)V
        68: .line 697
            aload 3 /* xmotion */
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_display:()J
            invokevirtual sun.awt.X11.XMotionEvent.set_display:(J)V
        69: .line 698
            aload 3 /* xmotion */
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_window:()J
            invokevirtual sun.awt.X11.XMotionEvent.set_window:(J)V
        70: .line 699
            aload 3 /* xmotion */
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_root:()J
            invokevirtual sun.awt.X11.XMotionEvent.set_root:(J)V
        71: .line 700
            aload 3 /* xmotion */
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_subwindow:()J
            invokevirtual sun.awt.X11.XMotionEvent.set_subwindow:(J)V
        72: .line 701
            aload 3 /* xmotion */
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_time:()J
            invokevirtual sun.awt.X11.XMotionEvent.set_time:(J)V
        73: .line 702
            aload 3 /* xmotion */
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_x:()I
            invokevirtual sun.awt.X11.XMotionEvent.set_x:(I)V
        74: .line 703
            aload 3 /* xmotion */
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_y:()I
            invokevirtual sun.awt.X11.XMotionEvent.set_y:(I)V
        75: .line 704
            aload 3 /* xmotion */
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_x_root:()I
            invokevirtual sun.awt.X11.XMotionEvent.set_x_root:(I)V
        76: .line 705
            aload 3 /* xmotion */
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_y_root:()I
            invokevirtual sun.awt.X11.XMotionEvent.set_y_root:(I)V
        77: .line 706
            aload 3 /* xmotion */
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_state:()I
            invokevirtual sun.awt.X11.XMotionEvent.set_state:(I)V
        78: .line 709
            aload 3 /* xmotion */
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_same_screen:()Z
            invokevirtual sun.awt.X11.XMotionEvent.set_same_screen:(Z)V
        79: .line 712
            aload 0 /* this */
            aload 3 /* xmotion */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.processMouseMove:(Lsun/awt/X11/XMotionEvent;)V
        80: .line 713
            goto 84
      StackMap locals: sun.awt.X11.XDragSourceContextPeer sun.awt.X11.XEvent sun.awt.X11.XButtonEvent sun.awt.X11.XMotionEvent
      StackMap stack: java.lang.Throwable
        81: astore 4
        82: .line 714
            aload 3 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.dispose:()V
        83: .line 715
            aload 4
            athrow
        84: .line 714
      StackMap locals:
      StackMap stack:
            aload 3 /* xmotion */
            invokevirtual sun.awt.X11.XMotionEvent.dispose:()V
        85: .line 716
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_button:()I
            getstatic sun.awt.X11.XConstants.buttons:[I
            iconst_0
            iaload
            if_icmpeq 87
        86: .line 717
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_button:()I
            getstatic sun.awt.X11.XConstants.buttons:[I
            iconst_1
            iaload
            if_icmpne 93
        87: .line 721
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_time:()J
            invokevirtual sun.awt.X11.XDragSourceContextPeer.removeDnDGrab:(J)V
        88: .line 722
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.dragInProgress:Z
        89: .line 723
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.dragProtocol:Lsun/awt/X11/XDragSourceProtocol;
            ifnull 92
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.targetAction:I
            ifeq 92
        90: .line 730
            aload 0 /* this */
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.processDrop:(Lsun/awt/X11/XButtonEvent;)V
        91: .line 731
            goto 93
        92: .line 732
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            aload 2 /* xbutton */
            invokevirtual sun.awt.X11.XButtonEvent.get_time:()J
            invokevirtual sun.awt.X11.XDragSourceContextPeer.cleanup:(J)V
        93: .line 735
      StackMap locals:
      StackMap stack:
            iconst_1
            ireturn
        end local 3 // sun.awt.X11.XMotionEvent xmotion
        end local 2 // sun.awt.X11.XButtonEvent xbutton
        94: .line 739
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        end local 1 // sun.awt.X11.XEvent ev
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0   95     0     this  Lsun/awt/X11/XDragSourceContextPeer;
            0   95     1       ev  Lsun/awt/X11/XEvent;
            7    8     2  xclient  Lsun/awt/X11/XClientMessageEvent;
            9   15     2      xde  Lsun/awt/X11/XDestroyWindowEvent;
           19   58     2     xkey  Lsun/awt/X11/XKeyEvent;
           22   58     3   keysym  J
           37   57     5  xmotion  Lsun/awt/X11/XMotionEvent;
           62   94     2  xbutton  Lsun/awt/X11/XButtonEvent;
           65   94     3  xmotion  Lsun/awt/X11/XMotionEvent;
      Exception table:
        from    to  target  type
          37    53      53  any
          65    81      81  any
    MethodParameters:
      Name  Flags
      ev    

  static boolean processEvent(sun.awt.X11.XEvent);
    descriptor: (Lsun/awt/X11/XEvent;)Z
    flags: (0x0008) ACC_STATIC
    Code:
      stack=2, locals=4, args_size=1
        start local 0 // sun.awt.X11.XEvent ev
         0: .line 743
            invokestatic sun.awt.X11.XToolkit.awtLock:()V
         1: .line 746
            getstatic sun.awt.X11.XDragSourceContextPeer.theInstance:Lsun/awt/X11/XDragSourceContextPeer;
            aload 0 /* ev */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.doProcessEvent:(Lsun/awt/X11/XEvent;)Z
            istore 3
         2: .line 752
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
         3: .line 746
            iload 3
            ireturn
         4: .line 747
      StackMap locals:
      StackMap stack: sun.awt.X11.XException
            astore 1 /* e */
        start local 1 // sun.awt.X11.XException e
         5: .line 748
            aload 1 /* e */
            invokevirtual sun.awt.X11.XException.printStackTrace:()V
         6: .line 752
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
         7: .line 749
            iconst_0
            ireturn
        end local 1 // sun.awt.X11.XException e
         8: .line 751
      StackMap locals:
      StackMap stack: java.lang.Throwable
            astore 2
         9: .line 752
            invokestatic sun.awt.X11.XToolkit.awtUnlock:()V
        10: .line 753
            aload 2
            athrow
        end local 0 // sun.awt.X11.XEvent ev
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   11     0    ev  Lsun/awt/X11/XEvent;
            5    8     1     e  Lsun/awt/X11/XException;
      Exception table:
        from    to  target  type
           1     2       4  Class sun.awt.X11.XException
           1     2       8  any
           4     6       8  any
    MethodParameters:
      Name  Flags
      ev    

  public void handleDragReply(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // int action
         0: .line 761
            aload 0 /* this */
            iload 1 /* action */
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.xRoot:I
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.yRoot:I
            invokevirtual sun.awt.X11.XDragSourceContextPeer.handleDragReply:(III)V
         1: .line 762
            return
        end local 1 // int action
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lsun/awt/X11/XDragSourceContextPeer;
            0    2     1  action  I
    MethodParameters:
        Name  Flags
      action  

  public void handleDragReply(int, int, int);
    descriptor: (III)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=4, args_size=4
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // int action
        start local 2 // int x
        start local 3 // int y
         0: .line 767
            aload 0 /* this */
            iload 1 /* action */
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.xRoot:I
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.yRoot:I
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.eventState:I
            iconst_0
            iconst_0
            invokestatic sun.awt.X11.XWindow.getModifiers:(III)I
            invokevirtual sun.awt.X11.XDragSourceContextPeer.handleDragReply:(IIII)V
         1: .line 768
            return
        end local 3 // int y
        end local 2 // int x
        end local 1 // int action
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lsun/awt/X11/XDragSourceContextPeer;
            0    2     1  action  I
            0    2     2       x  I
            0    2     3       y  I
    MethodParameters:
        Name  Flags
      action  
      x       
      y       

  public void handleDragReply(int, int, int, int);
    descriptor: (IIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=6, locals=6, args_size=5
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // int action
        start local 2 // int x
        start local 3 // int y
        start local 4 // int modifiers
         0: .line 771
            iload 1 /* action */
            ifne 4
         1: .line 772
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.targetAction:I
            ifeq 4
         2: .line 773
            aload 0 /* this */
            iload 2 /* x */
            iload 3 /* y */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.dragExit:(II)V
         3: .line 774
            goto 11
      StackMap locals:
      StackMap stack:
         4: iload 1 /* action */
            ifeq 11
         5: .line 775
            iconst_0
            istore 5 /* type */
        start local 5 // int type
         6: .line 777
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.targetAction:I
            ifne 9
         7: .line 778
            iconst_1
            istore 5 /* type */
         8: .line 779
            goto 10
         9: .line 780
      StackMap locals: int
      StackMap stack:
            iconst_2
            istore 5 /* type */
        10: .line 784
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* action */
            iload 4 /* modifiers */
            iload 2 /* x */
            iload 3 /* y */
            iload 5 /* type */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.postDragSourceDragEvent:(IIIII)V
        end local 5 // int type
        11: .line 787
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* action */
            putfield sun.awt.X11.XDragSourceContextPeer.targetAction:I
        12: .line 788
            return
        end local 4 // int modifiers
        end local 3 // int y
        end local 2 // int x
        end local 1 // int action
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   13     0       this  Lsun/awt/X11/XDragSourceContextPeer;
            0   13     1     action  I
            0   13     2          x  I
            0   13     3          y  I
            0   13     4  modifiers  I
            6   11     5       type  I
    MethodParameters:
           Name  Flags
      action     
      x          
      y          
      modifiers  

  public void handleDragFinished();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
         0: .line 792
            aload 0 /* this */
            iconst_1
            invokevirtual sun.awt.X11.XDragSourceContextPeer.handleDragFinished:(Z)V
         1: .line 793
            return
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lsun/awt/X11/XDragSourceContextPeer;

  public void handleDragFinished(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=2, args_size=2
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // boolean success
         0: .line 798
            aload 0 /* this */
            iconst_1
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.targetAction:I
            invokevirtual sun.awt.X11.XDragSourceContextPeer.handleDragFinished:(ZI)V
         1: .line 799
            return
        end local 1 // boolean success
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lsun/awt/X11/XDragSourceContextPeer;
            0    2     1  success  Z
    MethodParameters:
         Name  Flags
      success  

  public void handleDragFinished(boolean, int);
    descriptor: (ZI)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // boolean success
        start local 2 // int action
         0: .line 804
            aload 0 /* this */
            iload 1 /* success */
            iload 2 /* action */
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.xRoot:I
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.yRoot:I
            invokevirtual sun.awt.X11.XDragSourceContextPeer.handleDragFinished:(ZIII)V
         1: .line 805
            return
        end local 2 // int action
        end local 1 // boolean success
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lsun/awt/X11/XDragSourceContextPeer;
            0    2     1  success  Z
            0    2     2   action  I
    MethodParameters:
         Name  Flags
      success  
      action   

  public void handleDragFinished(boolean, int, int, int);
    descriptor: (ZIII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=5, args_size=5
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // boolean success
        start local 2 // int action
        start local 3 // int x
        start local 4 // int y
         0: .line 808
            aload 0 /* this */
            iload 1 /* success */
            iload 2 /* action */
            iload 3 /* x */
            iload 4 /* y */
            invokevirtual sun.awt.X11.XDragSourceContextPeer.dragDropFinished:(ZIII)V
         1: .line 810
            aload 0 /* this */
            iconst_0
            putfield sun.awt.X11.XDragSourceContextPeer.dndInProgress:Z
         2: .line 811
            aload 0 /* this */
            lconst_0
            invokevirtual sun.awt.X11.XDragSourceContextPeer.cleanup:(J)V
         3: .line 812
            return
        end local 4 // int y
        end local 3 // int x
        end local 2 // int action
        end local 1 // boolean success
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    4     0     this  Lsun/awt/X11/XDragSourceContextPeer;
            0    4     1  success  Z
            0    4     2   action  I
            0    4     3        x  I
            0    4     4        y  I
    MethodParameters:
         Name  Flags
      success  
      action   
      x        
      y        

  public int scaleUp(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // int x
         0: .line 815
            iload 1 /* x */
            i2d
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.windowScale:I
            i2d
            dmul
            invokestatic sun.java2d.pipe.Region.clipRound:(D)I
            ireturn
        end local 1 // int x
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/awt/X11/XDragSourceContextPeer;
            0    1     1     x  I
    MethodParameters:
      Name  Flags
      x     

  public int scaleDown(int);
    descriptor: (I)I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=2, args_size=2
        start local 0 // sun.awt.X11.XDragSourceContextPeer this
        start local 1 // int x
         0: .line 819
            iload 1 /* x */
            i2d
            aload 0 /* this */
            getfield sun.awt.X11.XDragSourceContextPeer.windowScale:I
            i2d
            ddiv
            invokestatic sun.java2d.pipe.Region.clipRound:(D)I
            ireturn
        end local 1 // int x
        end local 0 // sun.awt.X11.XDragSourceContextPeer this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lsun/awt/X11/XDragSourceContextPeer;
            0    1     1     x  I
    MethodParameters:
      Name  Flags
      x     
}
SourceFile: "XDragSourceContextPeer.java"
InnerClasses:
  public abstract ComponentAccessor = sun.awt.AWTAccessor$ComponentAccessor of sun.awt.AWTAccessor
  public final Level = sun.util.logging.PlatformLogger$Level of sun.util.logging.PlatformLogger