public class com.android.internal.view.menu.MenuPopupHelper implements com.android.internal.view.menu.MenuHelper
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: com.android.internal.view.menu.MenuPopupHelper
  super_class: java.lang.Object
{
  private static final int TOUCH_EPICENTER_SIZE_DP;
    descriptor: I
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 48

  private final android.content.Context mContext;
    descriptor: Landroid/content/Context;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final com.android.internal.view.menu.MenuBuilder mMenu;
    descriptor: Lcom/android/internal/view/menu/MenuBuilder;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final boolean mOverflowOnly;
    descriptor: Z
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int mPopupStyleAttr;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final int mPopupStyleRes;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private android.view.View mAnchorView;
    descriptor: Landroid/view/View;
    flags: (0x0002) ACC_PRIVATE

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

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

  private com.android.internal.view.menu.MenuPresenter$Callback mPresenterCallback;
    descriptor: Lcom/android/internal/view/menu/MenuPresenter$Callback;
    flags: (0x0002) ACC_PRIVATE

  private com.android.internal.view.menu.MenuPopup mPopup;
    descriptor: Lcom/android/internal/view/menu/MenuPopup;
    flags: (0x0002) ACC_PRIVATE

  private android.widget.PopupWindow$OnDismissListener mOnDismissListener;
    descriptor: Landroid/widget/PopupWindow$OnDismissListener;
    flags: (0x0002) ACC_PRIVATE

  private final android.widget.PopupWindow$OnDismissListener mInternalOnDismissListener;
    descriptor: Landroid/widget/PopupWindow$OnDismissListener;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(android.content.Context, com.android.internal.view.menu.MenuBuilder);
    descriptor: (Landroid/content/Context;Lcom/android/internal/view/menu/MenuBuilder;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
         0: .line 59
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tcom.android.internal.R.attr cannot be resolved to a variable\n\tcom.android.internal.R.attr cannot be resolved to a variable\n\tcom.android.internal.R.dimen cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/android/internal/view/menu/MenuPopupHelper;
    MethodParameters:
         Name  Flags
      context  
      menu     

  public void <init>(android.content.Context, com.android.internal.view.menu.MenuBuilder, android.view.View);
    descriptor: (Landroid/content/Context;Lcom/android/internal/view/menu/MenuBuilder;Landroid/view/View;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=4, args_size=4
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
         0: .line 59
            new java.lang.Error
            dup
            ldc "Unresolved compilation problems: \n\tcom.android.internal.R.attr cannot be resolved to a variable\n\tcom.android.internal.R.attr cannot be resolved to a variable\n\tcom.android.internal.R.dimen cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/android/internal/view/menu/MenuPopupHelper;
    MethodParameters:
            Name  Flags
      context     
      menu        
      anchorView  

  public void <init>(android.content.Context, com.android.internal.view.menu.MenuBuilder, android.view.View, boolean, int);
    descriptor: (Landroid/content/Context;Lcom/android/internal/view/menu/MenuBuilder;Landroid/view/View;ZI)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=7, locals=6, args_size=6
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
        start local 1 // android.content.Context context
        start local 2 // com.android.internal.view.menu.MenuBuilder menu
        start local 3 // android.view.View anchorView
        start local 4 // boolean overflowOnly
        start local 5 // int popupStyleAttr
         0: .line 70
            aload 0 /* this */
            aload 1 /* context */
            aload 2 /* menu */
            aload 3 /* anchorView */
            iload 4 /* overflowOnly */
            iload 5 /* popupStyleAttr */
            iconst_0
            invokespecial com.android.internal.view.menu.MenuPopupHelper.<init>:(Landroid/content/Context;Lcom/android/internal/view/menu/MenuBuilder;Landroid/view/View;ZII)V
         1: .line 71
            return
        end local 5 // int popupStyleAttr
        end local 4 // boolean overflowOnly
        end local 3 // android.view.View anchorView
        end local 2 // com.android.internal.view.menu.MenuBuilder menu
        end local 1 // android.content.Context context
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    2     0            this  Lcom/android/internal/view/menu/MenuPopupHelper;
            0    2     1         context  Landroid/content/Context;
            0    2     2            menu  Lcom/android/internal/view/menu/MenuBuilder;
            0    2     3      anchorView  Landroid/view/View;
            0    2     4    overflowOnly  Z
            0    2     5  popupStyleAttr  I
    MethodParameters:
                Name  Flags
      context         
      menu            
      anchorView      
      overflowOnly    
      popupStyleAttr  

  public void <init>(android.content.Context, com.android.internal.view.menu.MenuBuilder, android.view.View, boolean, int, int);
    descriptor: (Landroid/content/Context;Lcom/android/internal/view/menu/MenuBuilder;Landroid/view/View;ZII)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=7, args_size=7
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
        start local 1 // android.content.Context context
        start local 2 // com.android.internal.view.menu.MenuBuilder menu
        start local 3 // android.view.View anchorView
        start local 4 // boolean overflowOnly
        start local 5 // int popupStyleAttr
        start local 6 // int popupStyleRes
         0: .line 73
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 51
            aload 0 /* this */
            ldc 8388611
            putfield com.android.internal.view.menu.MenuPopupHelper.mDropDownGravity:I
         2: .line 320
            aload 0 /* this */
            new com.android.internal.view.menu.MenuPopupHelper$1
            dup
            aload 0 /* this */
            invokespecial com.android.internal.view.menu.MenuPopupHelper$1.<init>:(Lcom/android/internal/view/menu/MenuPopupHelper;)V
            putfield com.android.internal.view.menu.MenuPopupHelper.mInternalOnDismissListener:Landroid/widget/PopupWindow$OnDismissListener;
         3: .line 76
            aload 0 /* this */
            aload 1 /* context */
            putfield com.android.internal.view.menu.MenuPopupHelper.mContext:Landroid/content/Context;
         4: .line 77
            aload 0 /* this */
            aload 2 /* menu */
            putfield com.android.internal.view.menu.MenuPopupHelper.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
         5: .line 78
            aload 0 /* this */
            aload 3 /* anchorView */
            putfield com.android.internal.view.menu.MenuPopupHelper.mAnchorView:Landroid/view/View;
         6: .line 79
            aload 0 /* this */
            iload 4 /* overflowOnly */
            putfield com.android.internal.view.menu.MenuPopupHelper.mOverflowOnly:Z
         7: .line 80
            aload 0 /* this */
            iload 5 /* popupStyleAttr */
            putfield com.android.internal.view.menu.MenuPopupHelper.mPopupStyleAttr:I
         8: .line 81
            aload 0 /* this */
            iload 6 /* popupStyleRes */
            putfield com.android.internal.view.menu.MenuPopupHelper.mPopupStyleRes:I
         9: .line 82
            return
        end local 6 // int popupStyleRes
        end local 5 // int popupStyleAttr
        end local 4 // boolean overflowOnly
        end local 3 // android.view.View anchorView
        end local 2 // com.android.internal.view.menu.MenuBuilder menu
        end local 1 // android.content.Context context
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0   10     0            this  Lcom/android/internal/view/menu/MenuPopupHelper;
            0   10     1         context  Landroid/content/Context;
            0   10     2            menu  Lcom/android/internal/view/menu/MenuBuilder;
            0   10     3      anchorView  Landroid/view/View;
            0   10     4    overflowOnly  Z
            0   10     5  popupStyleAttr  I
            0   10     6   popupStyleRes  I
    MethodParameters:
                Name  Flags
      context         
      menu            
      anchorView      
      overflowOnly    
      popupStyleAttr  
      popupStyleRes   

  public void setOnDismissListener(android.widget.PopupWindow$OnDismissListener);
    descriptor: (Landroid/widget/PopupWindow$OnDismissListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
        start local 1 // android.widget.PopupWindow$OnDismissListener listener
         0: .line 85
            aload 0 /* this */
            aload 1 /* listener */
            putfield com.android.internal.view.menu.MenuPopupHelper.mOnDismissListener:Landroid/widget/PopupWindow$OnDismissListener;
         1: .line 86
            return
        end local 1 // android.widget.PopupWindow$OnDismissListener listener
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    2     0      this  Lcom/android/internal/view/menu/MenuPopupHelper;
            0    2     1  listener  Landroid/widget/PopupWindow$OnDismissListener;
    MethodParameters:
          Name  Flags
      listener  

  public void setAnchorView(android.view.View);
    descriptor: (Landroid/view/View;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
        start local 1 // android.view.View anchor
         0: .line 96
            aload 0 /* this */
            aload 1 /* anchor */
            putfield com.android.internal.view.menu.MenuPopupHelper.mAnchorView:Landroid/view/View;
         1: .line 97
            return
        end local 1 // android.view.View anchor
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    2     0    this  Lcom/android/internal/view/menu/MenuPopupHelper;
            0    2     1  anchor  Landroid/view/View;
    MethodParameters:
        Name  Flags
      anchor  

  public void setForceShowIcon(boolean);
    descriptor: (Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
        start local 1 // boolean forceShowIcon
         0: .line 109
            aload 0 /* this */
            iload 1 /* forceShowIcon */
            putfield com.android.internal.view.menu.MenuPopupHelper.mForceShowIcon:Z
         1: .line 110
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mPopup:Lcom/android/internal/view/menu/MenuPopup;
            ifnull 3
         2: .line 111
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mPopup:Lcom/android/internal/view/menu/MenuPopup;
            iload 1 /* forceShowIcon */
            invokevirtual com.android.internal.view.menu.MenuPopup.setForceShowIcon:(Z)V
         3: .line 113
      StackMap locals:
      StackMap stack:
            return
        end local 1 // boolean forceShowIcon
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    4     0           this  Lcom/android/internal/view/menu/MenuPopupHelper;
            0    4     1  forceShowIcon  Z
    MethodParameters:
               Name  Flags
      forceShowIcon  

  public void setGravity(int);
    descriptor: (I)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
        start local 1 // int gravity
         0: .line 123
            aload 0 /* this */
            iload 1 /* gravity */
            putfield com.android.internal.view.menu.MenuPopupHelper.mDropDownGravity:I
         1: .line 124
            return
        end local 1 // int gravity
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot     Name  Signature
            0    2     0     this  Lcom/android/internal/view/menu/MenuPopupHelper;
            0    2     1  gravity  I
    MethodParameters:
         Name  Flags
      gravity  

  public int getGravity();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
         0: .line 130
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mDropDownGravity:I
            ireturn
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/android/internal/view/menu/MenuPopupHelper;

  public void show();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
         0: .line 134
            aload 0 /* this */
            invokevirtual com.android.internal.view.menu.MenuPopupHelper.tryShow:()Z
            ifne 2
         1: .line 135
            new java.lang.IllegalStateException
            dup
            ldc "MenuPopupHelper cannot be used without an anchor"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 137
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/android/internal/view/menu/MenuPopupHelper;

  public void show(int, int);
    descriptor: (II)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=3, args_size=3
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
        start local 1 // int x
        start local 2 // int y
         0: .line 140
            aload 0 /* this */
            iload 1 /* x */
            iload 2 /* y */
            invokevirtual com.android.internal.view.menu.MenuPopupHelper.tryShow:(II)Z
            ifne 2
         1: .line 141
            new java.lang.IllegalStateException
            dup
            ldc "MenuPopupHelper cannot be used without an anchor"
            invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
            athrow
         2: .line 143
      StackMap locals:
      StackMap stack:
            return
        end local 2 // int y
        end local 1 // int x
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/android/internal/view/menu/MenuPopupHelper;
            0    3     1     x  I
            0    3     2     y  I
    MethodParameters:
      Name  Flags
      x     
      y     

  public com.android.internal.view.menu.MenuPopup getPopup();
    descriptor: ()Lcom/android/internal/view/menu/MenuPopup;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
         0: .line 147
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mPopup:Lcom/android/internal/view/menu/MenuPopup;
            ifnonnull 2
         1: .line 148
            aload 0 /* this */
            aload 0 /* this */
            invokevirtual com.android.internal.view.menu.MenuPopupHelper.createPopup:()Lcom/android/internal/view/menu/MenuPopup;
            putfield com.android.internal.view.menu.MenuPopupHelper.mPopup:Lcom/android/internal/view/menu/MenuPopup;
         2: .line 150
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mPopup:Lcom/android/internal/view/menu/MenuPopup;
            areturn
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/android/internal/view/menu/MenuPopupHelper;

  public boolean tryShow();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
         0: .line 160
            aload 0 /* this */
            invokevirtual com.android.internal.view.menu.MenuPopupHelper.isShowing:()Z
            ifeq 2
         1: .line 161
            iconst_1
            ireturn
         2: .line 164
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mAnchorView:Landroid/view/View;
            ifnonnull 4
         3: .line 165
            iconst_0
            ireturn
         4: .line 168
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iconst_0
            iconst_0
            iconst_0
            iconst_0
            invokevirtual com.android.internal.view.menu.MenuPopupHelper.showPopup:(IIZZ)V
         5: .line 169
            iconst_1
            ireturn
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/android/internal/view/menu/MenuPopupHelper;

  public boolean tryShow(int, int);
    descriptor: (II)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=3, args_size=3
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
        start local 1 // int x
        start local 2 // int y
         0: .line 196
            aload 0 /* this */
            invokevirtual com.android.internal.view.menu.MenuPopupHelper.isShowing:()Z
            ifeq 2
         1: .line 197
            iconst_1
            ireturn
         2: .line 200
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mAnchorView:Landroid/view/View;
            ifnonnull 4
         3: .line 201
            iconst_0
            ireturn
         4: .line 204
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* x */
            iload 2 /* y */
            iconst_1
            iconst_1
            invokevirtual com.android.internal.view.menu.MenuPopupHelper.showPopup:(IIZZ)V
         5: .line 205
            iconst_1
            ireturn
        end local 2 // int y
        end local 1 // int x
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    6     0  this  Lcom/android/internal/view/menu/MenuPopupHelper;
            0    6     1     x  I
            0    6     2     y  I
    MethodParameters:
      Name  Flags
      x     
      y     

  private com.android.internal.view.menu.MenuPopup createPopup();
    descriptor: ()Lcom/android/internal/view/menu/MenuPopup;
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=3, locals=1, args_size=1
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
         0: .line 223
            new java.lang.Error
            dup
            ldc "Unresolved compilation problem: \n\tcom.android.internal.R.dimen cannot be resolved to a variable\n"
            invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
            athrow
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lcom/android/internal/view/menu/MenuPopupHelper;

  private void showPopup(int, int, boolean, boolean);
    descriptor: (IIZZ)V
    flags: (0x0002) ACC_PRIVATE
    Code:
      stack=7, locals=10, args_size=5
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
        start local 1 // int xOffset
        start local 2 // int yOffset
        start local 3 // boolean useOffsets
        start local 4 // boolean showTitle
         0: .line 249
            aload 0 /* this */
            invokevirtual com.android.internal.view.menu.MenuPopupHelper.getPopup:()Lcom/android/internal/view/menu/MenuPopup;
            astore 5 /* popup */
        start local 5 // com.android.internal.view.menu.MenuPopup popup
         1: .line 250
            aload 5 /* popup */
            iload 4 /* showTitle */
            invokevirtual com.android.internal.view.menu.MenuPopup.setShowTitle:(Z)V
         2: .line 252
            iload 3 /* useOffsets */
            ifeq 18
         3: .line 256
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mDropDownGravity:I
         4: .line 257
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mAnchorView:Landroid/view/View;
            invokevirtual android.view.View.getLayoutDirection:()I
         5: .line 256
            invokestatic android.view.Gravity.getAbsoluteGravity:(II)I
         6: .line 257
            bipush 7
         7: .line 256
            iand
            istore 6 /* hgrav */
        start local 6 // int hgrav
         8: .line 258
            iload 6 /* hgrav */
            iconst_5
            if_icmpne 10
         9: .line 259
            iload 1 /* xOffset */
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mAnchorView:Landroid/view/View;
            invokevirtual android.view.View.getWidth:()I
            isub
            istore 1 /* xOffset */
        10: .line 262
      StackMap locals: com.android.internal.view.menu.MenuPopup int
      StackMap stack:
            aload 5 /* popup */
            iload 1 /* xOffset */
            invokevirtual com.android.internal.view.menu.MenuPopup.setHorizontalOffset:(I)V
        11: .line 263
            aload 5 /* popup */
            iload 2 /* yOffset */
            invokevirtual com.android.internal.view.menu.MenuPopup.setVerticalOffset:(I)V
        12: .line 269
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mContext:Landroid/content/Context;
            invokevirtual android.content.Context.getResources:()Landroid/content/res/Resources;
            invokevirtual android.content.res.Resources.getDisplayMetrics:()Landroid/util/DisplayMetrics;
            getfield android.util.DisplayMetrics.density:F
            fstore 7 /* density */
        start local 7 // float density
        13: .line 270
            ldc 48.0
            fload 7 /* density */
            fmul
            fconst_2
            fdiv
            f2i
            istore 8 /* halfSize */
        start local 8 // int halfSize
        14: .line 271
            new android.graphics.Rect
            dup
            iload 1 /* xOffset */
            iload 8 /* halfSize */
            isub
            iload 2 /* yOffset */
            iload 8 /* halfSize */
            isub
        15: .line 272
            iload 1 /* xOffset */
            iload 8 /* halfSize */
            iadd
            iload 2 /* yOffset */
            iload 8 /* halfSize */
            iadd
        16: .line 271
            invokespecial android.graphics.Rect.<init>:(IIII)V
            astore 9 /* epicenter */
        start local 9 // android.graphics.Rect epicenter
        17: .line 273
            aload 5 /* popup */
            aload 9 /* epicenter */
            invokevirtual com.android.internal.view.menu.MenuPopup.setEpicenterBounds:(Landroid/graphics/Rect;)V
        end local 9 // android.graphics.Rect epicenter
        end local 8 // int halfSize
        end local 7 // float density
        end local 6 // int hgrav
        18: .line 276
      StackMap locals:
      StackMap stack:
            aload 5 /* popup */
            invokevirtual com.android.internal.view.menu.MenuPopup.show:()V
        19: .line 277
            return
        end local 5 // com.android.internal.view.menu.MenuPopup popup
        end local 4 // boolean showTitle
        end local 3 // boolean useOffsets
        end local 2 // int yOffset
        end local 1 // int xOffset
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot        Name  Signature
            0   20     0        this  Lcom/android/internal/view/menu/MenuPopupHelper;
            0   20     1     xOffset  I
            0   20     2     yOffset  I
            0   20     3  useOffsets  Z
            0   20     4   showTitle  Z
            1   20     5       popup  Lcom/android/internal/view/menu/MenuPopup;
            8   18     6       hgrav  I
           13   18     7     density  F
           14   18     8    halfSize  I
           17   18     9   epicenter  Landroid/graphics/Rect;
    MethodParameters:
            Name  Flags
      xOffset     
      yOffset     
      useOffsets  
      showTitle   

  public void dismiss();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
         0: .line 284
            aload 0 /* this */
            invokevirtual com.android.internal.view.menu.MenuPopupHelper.isShowing:()Z
            ifeq 2
         1: .line 285
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mPopup:Lcom/android/internal/view/menu/MenuPopup;
            invokevirtual com.android.internal.view.menu.MenuPopup.dismiss:()V
         2: .line 287
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Lcom/android/internal/view/menu/MenuPopupHelper;

  protected void onDismiss();
    descriptor: ()V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
         0: .line 298
            aload 0 /* this */
            aconst_null
            putfield com.android.internal.view.menu.MenuPopupHelper.mPopup:Lcom/android/internal/view/menu/MenuPopup;
         1: .line 300
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mOnDismissListener:Landroid/widget/PopupWindow$OnDismissListener;
            ifnull 3
         2: .line 301
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mOnDismissListener:Landroid/widget/PopupWindow$OnDismissListener;
            invokeinterface android.widget.PopupWindow$OnDismissListener.onDismiss:()V
         3: .line 303
      StackMap locals:
      StackMap stack:
            return
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/android/internal/view/menu/MenuPopupHelper;

  public boolean isShowing();
    descriptor: ()Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
         0: .line 306
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mPopup:Lcom/android/internal/view/menu/MenuPopup;
            ifnull 1
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mPopup:Lcom/android/internal/view/menu/MenuPopup;
            invokevirtual com.android.internal.view.menu.MenuPopup.isShowing:()Z
            ifeq 1
            iconst_1
            ireturn
      StackMap locals:
      StackMap stack:
         1: iconst_0
            ireturn
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    2     0  this  Lcom/android/internal/view/menu/MenuPopupHelper;

  public void setPresenterCallback(com.android.internal.view.menu.MenuPresenter$Callback);
    descriptor: (Lcom/android/internal/view/menu/MenuPresenter$Callback;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.android.internal.view.menu.MenuPopupHelper this
        start local 1 // com.android.internal.view.menu.MenuPresenter$Callback cb
         0: .line 311
            aload 0 /* this */
            aload 1 /* cb */
            putfield com.android.internal.view.menu.MenuPopupHelper.mPresenterCallback:Lcom/android/internal/view/menu/MenuPresenter$Callback;
         1: .line 312
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mPopup:Lcom/android/internal/view/menu/MenuPopup;
            ifnull 3
         2: .line 313
            aload 0 /* this */
            getfield com.android.internal.view.menu.MenuPopupHelper.mPopup:Lcom/android/internal/view/menu/MenuPopup;
            aload 1 /* cb */
            invokevirtual com.android.internal.view.menu.MenuPopup.setCallback:(Lcom/android/internal/view/menu/MenuPresenter$Callback;)V
         3: .line 315
      StackMap locals:
      StackMap stack:
            return
        end local 1 // com.android.internal.view.menu.MenuPresenter$Callback cb
        end local 0 // com.android.internal.view.menu.MenuPopupHelper this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    4     0  this  Lcom/android/internal/view/menu/MenuPopupHelper;
            0    4     1    cb  Lcom/android/internal/view/menu/MenuPresenter$Callback;
    MethodParameters:
      Name  Flags
      cb    
}
SourceFile: "MenuPopupHelper.java"
NestMembers:
  com.android.internal.view.menu.MenuPopupHelper$1
InnerClasses:
  public abstract OnDismissListener = android.widget.PopupWindow$OnDismissListener of android.widget.PopupWindow
  com.android.internal.view.menu.MenuPopupHelper$1
  public abstract Callback = com.android.internal.view.menu.MenuPresenter$Callback of com.android.internal.view.menu.MenuPresenter