public class android.widget.MenuPopupWindow$MenuDropDownListView extends android.widget.DropDownListView
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: android.widget.MenuPopupWindow$MenuDropDownListView
  super_class: android.widget.DropDownListView
{
  final int mAdvanceKey;
    descriptor: I
    flags: (0x0010) ACC_FINAL

  final int mRetreatKey;
    descriptor: I
    flags: (0x0010) ACC_FINAL

  private android.widget.MenuItemHoverListener mHoverListener;
    descriptor: Landroid/widget/MenuItemHoverListener;
    flags: (0x0002) ACC_PRIVATE

  private android.view.MenuItem mHoveredMenuItem;
    descriptor: Landroid/view/MenuItem;
    flags: (0x0002) ACC_PRIVATE

  public void <init>(android.content.Context, boolean);
    descriptor: (Landroid/content/Context;Z)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=5, args_size=3
        start local 0 // android.widget.MenuPopupWindow$MenuDropDownListView this
        start local 1 // android.content.Context context
        start local 2 // boolean hijackFocus
         0: .line 103
            aload 0 /* this */
            aload 1 /* context */
            iload 2 /* hijackFocus */
            invokespecial android.widget.DropDownListView.<init>:(Landroid/content/Context;Z)V
         1: .line 105
            aload 1 /* context */
            invokevirtual android.content.Context.getResources:()Landroid/content/res/Resources;
            astore 3 /* res */
        start local 3 // android.content.res.Resources res
         2: .line 106
            aload 3 /* res */
            invokevirtual android.content.res.Resources.getConfiguration:()Landroid/content/res/Configuration;
            astore 4 /* config */
        start local 4 // android.content.res.Configuration config
         3: .line 107
            aload 4 /* config */
            invokevirtual android.content.res.Configuration.getLayoutDirection:()I
            iconst_1
            if_icmpne 7
         4: .line 108
            aload 0 /* this */
            bipush 21
            putfield android.widget.MenuPopupWindow$MenuDropDownListView.mAdvanceKey:I
         5: .line 109
            aload 0 /* this */
            bipush 22
            putfield android.widget.MenuPopupWindow$MenuDropDownListView.mRetreatKey:I
         6: .line 110
            goto 9
         7: .line 111
      StackMap locals: android.widget.MenuPopupWindow$MenuDropDownListView android.content.Context int android.content.res.Resources android.content.res.Configuration
      StackMap stack:
            aload 0 /* this */
            bipush 22
            putfield android.widget.MenuPopupWindow$MenuDropDownListView.mAdvanceKey:I
         8: .line 112
            aload 0 /* this */
            bipush 21
            putfield android.widget.MenuPopupWindow$MenuDropDownListView.mRetreatKey:I
         9: .line 114
      StackMap locals:
      StackMap stack:
            return
        end local 4 // android.content.res.Configuration config
        end local 3 // android.content.res.Resources res
        end local 2 // boolean hijackFocus
        end local 1 // android.content.Context context
        end local 0 // android.widget.MenuPopupWindow$MenuDropDownListView this
      LocalVariableTable:
        Start  End  Slot         Name  Signature
            0   10     0         this  Landroid/widget/MenuPopupWindow$MenuDropDownListView;
            0   10     1      context  Landroid/content/Context;
            0   10     2  hijackFocus  Z
            2   10     3          res  Landroid/content/res/Resources;
            3   10     4       config  Landroid/content/res/Configuration;
    MethodParameters:
             Name  Flags
      context      
      hijackFocus  

  public void setHoverListener(android.widget.MenuItemHoverListener);
    descriptor: (Landroid/widget/MenuItemHoverListener;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // android.widget.MenuPopupWindow$MenuDropDownListView this
        start local 1 // android.widget.MenuItemHoverListener hoverListener
         0: .line 117
            aload 0 /* this */
            aload 1 /* hoverListener */
            putfield android.widget.MenuPopupWindow$MenuDropDownListView.mHoverListener:Landroid/widget/MenuItemHoverListener;
         1: .line 118
            return
        end local 1 // android.widget.MenuItemHoverListener hoverListener
        end local 0 // android.widget.MenuPopupWindow$MenuDropDownListView this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0    2     0           this  Landroid/widget/MenuPopupWindow$MenuDropDownListView;
            0    2     1  hoverListener  Landroid/widget/MenuItemHoverListener;
    MethodParameters:
               Name  Flags
      hoverListener  

  public void clearSelection();
    descriptor: ()V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=1, args_size=1
        start local 0 // android.widget.MenuPopupWindow$MenuDropDownListView this
         0: .line 121
            aload 0 /* this */
            iconst_m1
            invokevirtual android.widget.MenuPopupWindow$MenuDropDownListView.setSelectedPositionInt:(I)V
         1: .line 122
            aload 0 /* this */
            iconst_m1
            invokevirtual android.widget.MenuPopupWindow$MenuDropDownListView.setNextSelectedPositionInt:(I)V
         2: .line 123
            return
        end local 0 // android.widget.MenuPopupWindow$MenuDropDownListView this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    3     0  this  Landroid/widget/MenuPopupWindow$MenuDropDownListView;

  public boolean onKeyDown(int, android.view.KeyEvent);
    descriptor: (ILandroid/view/KeyEvent;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=4, args_size=3
        start local 0 // android.widget.MenuPopupWindow$MenuDropDownListView this
        start local 1 // int keyCode
        start local 2 // android.view.KeyEvent event
         0: .line 127
            aload 0 /* this */
            invokevirtual android.widget.MenuPopupWindow$MenuDropDownListView.getSelectedView:()Landroid/view/View;
            checkcast com.android.internal.view.menu.ListMenuItemView
            astore 3 /* selectedItem */
        start local 3 // com.android.internal.view.menu.ListMenuItemView selectedItem
         1: .line 128
            aload 3 /* selectedItem */
            ifnull 9
            iload 1 /* keyCode */
            aload 0 /* this */
            getfield android.widget.MenuPopupWindow$MenuDropDownListView.mAdvanceKey:I
            if_icmpne 9
         2: .line 129
            aload 3 /* selectedItem */
            invokevirtual com.android.internal.view.menu.ListMenuItemView.isEnabled:()Z
            ifeq 8
            aload 3 /* selectedItem */
            invokevirtual com.android.internal.view.menu.ListMenuItemView.getItemData:()Lcom/android/internal/view/menu/MenuItemImpl;
            invokevirtual com.android.internal.view.menu.MenuItemImpl.hasSubMenu:()Z
            ifeq 8
         3: .line 130
            aload 0 /* this */
         4: .line 131
            aload 3 /* selectedItem */
         5: .line 132
            aload 0 /* this */
            invokevirtual android.widget.MenuPopupWindow$MenuDropDownListView.getSelectedItemPosition:()I
         6: .line 133
            aload 0 /* this */
            invokevirtual android.widget.MenuPopupWindow$MenuDropDownListView.getSelectedItemId:()J
         7: .line 130
            invokevirtual android.widget.MenuPopupWindow$MenuDropDownListView.performItemClick:(Landroid/view/View;IJ)Z
            pop
         8: .line 135
      StackMap locals: com.android.internal.view.menu.ListMenuItemView
      StackMap stack:
            iconst_1
            ireturn
         9: .line 136
      StackMap locals:
      StackMap stack:
            aload 3 /* selectedItem */
            ifnull 14
            iload 1 /* keyCode */
            aload 0 /* this */
            getfield android.widget.MenuPopupWindow$MenuDropDownListView.mRetreatKey:I
            if_icmpne 14
        10: .line 137
            aload 0 /* this */
            iconst_m1
            invokevirtual android.widget.MenuPopupWindow$MenuDropDownListView.setSelectedPositionInt:(I)V
        11: .line 138
            aload 0 /* this */
            iconst_m1
            invokevirtual android.widget.MenuPopupWindow$MenuDropDownListView.setNextSelectedPositionInt:(I)V
        12: .line 141
            aload 0 /* this */
            invokevirtual android.widget.MenuPopupWindow$MenuDropDownListView.getAdapter:()Landroid/widget/ListAdapter;
            checkcast com.android.internal.view.menu.MenuAdapter
            invokevirtual com.android.internal.view.menu.MenuAdapter.getAdapterMenu:()Lcom/android/internal/view/menu/MenuBuilder;
            iconst_0
            invokevirtual com.android.internal.view.menu.MenuBuilder.close:(Z)V
        13: .line 142
            iconst_1
            ireturn
        14: .line 144
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            iload 1 /* keyCode */
            aload 2 /* event */
            invokespecial android.widget.DropDownListView.onKeyDown:(ILandroid/view/KeyEvent;)Z
            ireturn
        end local 3 // com.android.internal.view.menu.ListMenuItemView selectedItem
        end local 2 // android.view.KeyEvent event
        end local 1 // int keyCode
        end local 0 // android.widget.MenuPopupWindow$MenuDropDownListView this
      LocalVariableTable:
        Start  End  Slot          Name  Signature
            0   15     0          this  Landroid/widget/MenuPopupWindow$MenuDropDownListView;
            0   15     1       keyCode  I
            0   15     2         event  Landroid/view/KeyEvent;
            1   15     3  selectedItem  Lcom/android/internal/view/menu/ListMenuItemView;
    MethodParameters:
         Name  Flags
      keyCode  
      event    

  public boolean onHoverEvent(android.view.MotionEvent);
    descriptor: (Landroid/view/MotionEvent;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=3, locals=8, args_size=2
        start local 0 // android.widget.MenuPopupWindow$MenuDropDownListView this
        start local 1 // android.view.MotionEvent ev
         0: .line 150
            aload 0 /* this */
            getfield android.widget.MenuPopupWindow$MenuDropDownListView.mHoverListener:Landroid/widget/MenuItemHoverListener;
            ifnull 24
         1: .line 154
            aload 0 /* this */
            invokevirtual android.widget.MenuPopupWindow$MenuDropDownListView.getAdapter:()Landroid/widget/ListAdapter;
            astore 4 /* adapter */
        start local 4 // android.widget.ListAdapter adapter
         2: .line 155
            aload 4 /* adapter */
            instanceof android.widget.HeaderViewListAdapter
            ifeq 7
         3: .line 156
            aload 4 /* adapter */
            checkcast android.widget.HeaderViewListAdapter
            astore 5 /* headerAdapter */
        start local 5 // android.widget.HeaderViewListAdapter headerAdapter
         4: .line 157
            aload 5 /* headerAdapter */
            invokevirtual android.widget.HeaderViewListAdapter.getHeadersCount:()I
            istore 2 /* headersCount */
        start local 2 // int headersCount
         5: .line 158
            aload 5 /* headerAdapter */
            invokevirtual android.widget.HeaderViewListAdapter.getWrappedAdapter:()Landroid/widget/ListAdapter;
            checkcast com.android.internal.view.menu.MenuAdapter
            astore 3 /* menuAdapter */
        end local 5 // android.widget.HeaderViewListAdapter headerAdapter
        start local 3 // com.android.internal.view.menu.MenuAdapter menuAdapter
         6: .line 159
            goto 9
        end local 3 // com.android.internal.view.menu.MenuAdapter menuAdapter
        end local 2 // int headersCount
         7: .line 160
      StackMap locals: android.widget.MenuPopupWindow$MenuDropDownListView android.view.MotionEvent top top android.widget.ListAdapter
      StackMap stack:
            iconst_0
            istore 2 /* headersCount */
        start local 2 // int headersCount
         8: .line 161
            aload 4 /* adapter */
            checkcast com.android.internal.view.menu.MenuAdapter
            astore 3 /* menuAdapter */
        start local 3 // com.android.internal.view.menu.MenuAdapter menuAdapter
         9: .line 165
      StackMap locals: android.widget.MenuPopupWindow$MenuDropDownListView android.view.MotionEvent int com.android.internal.view.menu.MenuAdapter android.widget.ListAdapter
      StackMap stack:
            aconst_null
            astore 5 /* menuItem */
        start local 5 // android.view.MenuItem menuItem
        10: .line 166
            aload 1 /* ev */
            invokevirtual android.view.MotionEvent.getAction:()I
            bipush 10
            if_icmpeq 16
        11: .line 167
            aload 0 /* this */
            aload 1 /* ev */
            invokevirtual android.view.MotionEvent.getX:()F
            f2i
            aload 1 /* ev */
            invokevirtual android.view.MotionEvent.getY:()F
            f2i
            invokevirtual android.widget.MenuPopupWindow$MenuDropDownListView.pointToPosition:(II)I
            istore 6 /* position */
        start local 6 // int position
        12: .line 168
            iload 6 /* position */
            iconst_m1
            if_icmpeq 16
        13: .line 169
            iload 6 /* position */
            iload 2 /* headersCount */
            isub
            istore 7 /* itemPosition */
        start local 7 // int itemPosition
        14: .line 170
            iload 7 /* itemPosition */
            iflt 16
            iload 7 /* itemPosition */
            aload 3 /* menuAdapter */
            invokevirtual com.android.internal.view.menu.MenuAdapter.getCount:()I
            if_icmpge 16
        15: .line 171
            aload 3 /* menuAdapter */
            iload 7 /* itemPosition */
            invokevirtual com.android.internal.view.menu.MenuAdapter.getItem:(I)Lcom/android/internal/view/menu/MenuItemImpl;
            astore 5 /* menuItem */
        end local 7 // int itemPosition
        end local 6 // int position
        16: .line 176
      StackMap locals: android.view.MenuItem
      StackMap stack:
            aload 0 /* this */
            getfield android.widget.MenuPopupWindow$MenuDropDownListView.mHoveredMenuItem:Landroid/view/MenuItem;
            astore 6 /* oldMenuItem */
        start local 6 // android.view.MenuItem oldMenuItem
        17: .line 177
            aload 6 /* oldMenuItem */
            aload 5 /* menuItem */
            if_acmpeq 24
        18: .line 178
            aload 3 /* menuAdapter */
            invokevirtual com.android.internal.view.menu.MenuAdapter.getAdapterMenu:()Lcom/android/internal/view/menu/MenuBuilder;
            astore 7 /* menu */
        start local 7 // com.android.internal.view.menu.MenuBuilder menu
        19: .line 179
            aload 6 /* oldMenuItem */
            ifnull 21
        20: .line 180
            aload 0 /* this */
            getfield android.widget.MenuPopupWindow$MenuDropDownListView.mHoverListener:Landroid/widget/MenuItemHoverListener;
            aload 7 /* menu */
            aload 6 /* oldMenuItem */
            invokeinterface android.widget.MenuItemHoverListener.onItemHoverExit:(Lcom/android/internal/view/menu/MenuBuilder;Landroid/view/MenuItem;)V
        21: .line 183
      StackMap locals: android.view.MenuItem com.android.internal.view.menu.MenuBuilder
      StackMap stack:
            aload 0 /* this */
            aload 5 /* menuItem */
            putfield android.widget.MenuPopupWindow$MenuDropDownListView.mHoveredMenuItem:Landroid/view/MenuItem;
        22: .line 185
            aload 5 /* menuItem */
            ifnull 24
        23: .line 186
            aload 0 /* this */
            getfield android.widget.MenuPopupWindow$MenuDropDownListView.mHoverListener:Landroid/widget/MenuItemHoverListener;
            aload 7 /* menu */
            aload 5 /* menuItem */
            invokeinterface android.widget.MenuItemHoverListener.onItemHoverEnter:(Lcom/android/internal/view/menu/MenuBuilder;Landroid/view/MenuItem;)V
        end local 7 // com.android.internal.view.menu.MenuBuilder menu
        end local 6 // android.view.MenuItem oldMenuItem
        end local 5 // android.view.MenuItem menuItem
        end local 4 // android.widget.ListAdapter adapter
        end local 3 // com.android.internal.view.menu.MenuAdapter menuAdapter
        end local 2 // int headersCount
        24: .line 191
      StackMap locals: android.widget.MenuPopupWindow$MenuDropDownListView android.view.MotionEvent
      StackMap stack:
            aload 0 /* this */
            aload 1 /* ev */
            invokespecial android.widget.DropDownListView.onHoverEvent:(Landroid/view/MotionEvent;)Z
            ireturn
        end local 1 // android.view.MotionEvent ev
        end local 0 // android.widget.MenuPopupWindow$MenuDropDownListView this
      LocalVariableTable:
        Start  End  Slot           Name  Signature
            0   25     0           this  Landroid/widget/MenuPopupWindow$MenuDropDownListView;
            0   25     1             ev  Landroid/view/MotionEvent;
            5    7     2   headersCount  I
            8   24     2   headersCount  I
            6    7     3    menuAdapter  Lcom/android/internal/view/menu/MenuAdapter;
            9   24     3    menuAdapter  Lcom/android/internal/view/menu/MenuAdapter;
            2   24     4        adapter  Landroid/widget/ListAdapter;
            4    6     5  headerAdapter  Landroid/widget/HeaderViewListAdapter;
           10   24     5       menuItem  Landroid/view/MenuItem;
           12   16     6       position  I
           14   16     7   itemPosition  I
           17   24     6    oldMenuItem  Landroid/view/MenuItem;
           19   24     7           menu  Lcom/android/internal/view/menu/MenuBuilder;
    MethodParameters:
      Name  Flags
      ev    
}
SourceFile: "MenuPopupWindow.java"
NestHost: android.widget.MenuPopupWindow
InnerClasses:
  public MenuDropDownListView = android.widget.MenuPopupWindow$MenuDropDownListView of android.widget.MenuPopupWindow