public class android.view.TouchDelegate
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: android.view.TouchDelegate
  super_class: java.lang.Object
{
  private android.view.View mDelegateView;
    descriptor: Landroid/view/View;
    flags: (0x0002) ACC_PRIVATE

  private android.graphics.Rect mBounds;
    descriptor: Landroid/graphics/Rect;
    flags: (0x0002) ACC_PRIVATE

  private android.graphics.Rect mSlopBounds;
    descriptor: Landroid/graphics/Rect;
    flags: (0x0002) ACC_PRIVATE

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

  public static final int ABOVE;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  public static final int BELOW;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 2

  public static final int TO_LEFT;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 4

  public static final int TO_RIGHT;
    descriptor: I
    flags: (0x0019) ACC_PUBLIC, ACC_STATIC, ACC_FINAL
    ConstantValue: 8

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

  public void <init>(android.graphics.Rect, android.view.View);
    descriptor: (Landroid/graphics/Rect;Landroid/view/View;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=3, args_size=3
        start local 0 // android.view.TouchDelegate this
        start local 1 // android.graphics.Rect bounds
        start local 2 // android.view.View delegateView
         0: .line 85
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 86
            aload 0 /* this */
            aload 1 /* bounds */
            putfield android.view.TouchDelegate.mBounds:Landroid/graphics/Rect;
         2: .line 88
            aload 0 /* this */
            aload 2 /* delegateView */
            invokevirtual android.view.View.getContext:()Landroid/content/Context;
            invokestatic android.view.ViewConfiguration.get:(Landroid/content/Context;)Landroid/view/ViewConfiguration;
            invokevirtual android.view.ViewConfiguration.getScaledTouchSlop:()I
            putfield android.view.TouchDelegate.mSlop:I
         3: .line 89
            aload 0 /* this */
            new android.graphics.Rect
            dup
            aload 1 /* bounds */
            invokespecial android.graphics.Rect.<init>:(Landroid/graphics/Rect;)V
            putfield android.view.TouchDelegate.mSlopBounds:Landroid/graphics/Rect;
         4: .line 90
            aload 0 /* this */
            getfield android.view.TouchDelegate.mSlopBounds:Landroid/graphics/Rect;
            aload 0 /* this */
            getfield android.view.TouchDelegate.mSlop:I
            ineg
            aload 0 /* this */
            getfield android.view.TouchDelegate.mSlop:I
            ineg
            invokevirtual android.graphics.Rect.inset:(II)V
         5: .line 91
            aload 0 /* this */
            aload 2 /* delegateView */
            putfield android.view.TouchDelegate.mDelegateView:Landroid/view/View;
         6: .line 92
            return
        end local 2 // android.view.View delegateView
        end local 1 // android.graphics.Rect bounds
        end local 0 // android.view.TouchDelegate this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0    7     0          this  Landroid/view/TouchDelegate;
            0    7     1        bounds  Landroid/graphics/Rect;
            0    7     2  delegateView  Landroid/view/View;
    MethodParameters:
              Name  Flags
      bounds        
      delegateView  

  public boolean onTouchEvent(android.view.MotionEvent);
    descriptor: (Landroid/view/MotionEvent;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=9, args_size=2
        start local 0 // android.view.TouchDelegate this
        start local 1 // android.view.MotionEvent event
         0: .line 102
            aload 1 /* event */
            invokevirtual android.view.MotionEvent.getX:()F
            f2i
            istore 2 /* x */
        start local 2 // int x
         1: .line 103
            aload 1 /* event */
            invokevirtual android.view.MotionEvent.getY:()F
            f2i
            istore 3 /* y */
        start local 3 // int y
         2: .line 104
            iconst_0
            istore 4 /* sendToDelegate */
        start local 4 // boolean sendToDelegate
         3: .line 105
            iconst_1
            istore 5 /* hit */
        start local 5 // boolean hit
         4: .line 106
            iconst_0
            istore 6 /* handled */
        start local 6 // boolean handled
         5: .line 108
            aload 1 /* event */
            invokevirtual android.view.MotionEvent.getActionMasked:()I
            tableswitch { // 0 - 6
                    0: 6
                    1: 9
                    2: 9
                    3: 15
                    4: 17
                    5: 9
                    6: 9
              default: 17
          }
         6: .line 110
      StackMap locals: android.view.TouchDelegate android.view.MotionEvent int int int int int
      StackMap stack:
            aload 0 /* this */
            aload 0 /* this */
            getfield android.view.TouchDelegate.mBounds:Landroid/graphics/Rect;
            iload 2 /* x */
            iload 3 /* y */
            invokevirtual android.graphics.Rect.contains:(II)Z
            putfield android.view.TouchDelegate.mDelegateTargeted:Z
         7: .line 111
            aload 0 /* this */
            getfield android.view.TouchDelegate.mDelegateTargeted:Z
            istore 4 /* sendToDelegate */
         8: .line 112
            goto 17
         9: .line 117
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.view.TouchDelegate.mDelegateTargeted:Z
            istore 4 /* sendToDelegate */
        10: .line 118
            iload 4 /* sendToDelegate */
            ifeq 17
        11: .line 119
            aload 0 /* this */
            getfield android.view.TouchDelegate.mSlopBounds:Landroid/graphics/Rect;
            astore 7 /* slopBounds */
        start local 7 // android.graphics.Rect slopBounds
        12: .line 120
            aload 7 /* slopBounds */
            iload 2 /* x */
            iload 3 /* y */
            invokevirtual android.graphics.Rect.contains:(II)Z
            ifne 17
        13: .line 121
            iconst_0
            istore 5 /* hit */
        end local 7 // android.graphics.Rect slopBounds
        14: .line 124
            goto 17
        15: .line 126
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield android.view.TouchDelegate.mDelegateTargeted:Z
            istore 4 /* sendToDelegate */
        16: .line 127
            aload 0 /* this */
            iconst_0
            putfield android.view.TouchDelegate.mDelegateTargeted:Z
        17: .line 130
      StackMap locals:
      StackMap stack:
            iload 4 /* sendToDelegate */
            ifeq 25
        18: .line 131
            aload 0 /* this */
            getfield android.view.TouchDelegate.mDelegateView:Landroid/view/View;
            astore 7 /* delegateView */
        start local 7 // android.view.View delegateView
        19: .line 133
            iload 5 /* hit */
            ifeq 22
        20: .line 135
            aload 1 /* event */
            aload 7 /* delegateView */
            invokevirtual android.view.View.getWidth:()I
            iconst_2
            idiv
            i2f
            aload 7 /* delegateView */
            invokevirtual android.view.View.getHeight:()I
            iconst_2
            idiv
            i2f
            invokevirtual android.view.MotionEvent.setLocation:(FF)V
        21: .line 136
            goto 24
        22: .line 139
      StackMap locals: android.view.View
      StackMap stack:
            aload 0 /* this */
            getfield android.view.TouchDelegate.mSlop:I
            istore 8 /* slop */
        start local 8 // int slop
        23: .line 140
            aload 1 /* event */
            iload 8 /* slop */
            iconst_2
            imul
            ineg
            i2f
            iload 8 /* slop */
            iconst_2
            imul
            ineg
            i2f
            invokevirtual android.view.MotionEvent.setLocation:(FF)V
        end local 8 // int slop
        24: .line 142
      StackMap locals:
      StackMap stack:
            aload 7 /* delegateView */
            aload 1 /* event */
            invokevirtual android.view.View.dispatchTouchEvent:(Landroid/view/MotionEvent;)Z
            istore 6 /* handled */
        end local 7 // android.view.View delegateView
        25: .line 144
      StackMap locals:
      StackMap stack:
            iload 6 /* handled */
            ireturn
        end local 6 // boolean handled
        end local 5 // boolean hit
        end local 4 // boolean sendToDelegate
        end local 3 // int y
        end local 2 // int x
        end local 1 // android.view.MotionEvent event
        end local 0 // android.view.TouchDelegate this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   26     0            this  Landroid/view/TouchDelegate;
            0   26     1           event  Landroid/view/MotionEvent;
            1   26     2               x  I
            2   26     3               y  I
            3   26     4  sendToDelegate  Z
            4   26     5             hit  Z
            5   26     6         handled  Z
           12   14     7      slopBounds  Landroid/graphics/Rect;
           19   25     7    delegateView  Landroid/view/View;
           23   24     8            slop  I
    MethodParameters:
       Name  Flags
      event  
}
SourceFile: "TouchDelegate.java"