public class android.widget.ActionMenuPresenter extends com.android.internal.view.menu.BaseMenuPresenter implements android.view.ActionProvider$SubUiVisibilityListener
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: android.widget.ActionMenuPresenter
super_class: com.android.internal.view.menu.BaseMenuPresenter
{
private static final int ITEM_ANIMATION_DURATION;
descriptor: I
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 150
private static final boolean ACTIONBAR_ANIMATIONS_ENABLED;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: 0
private android.widget.ActionMenuPresenter$OverflowMenuButton mOverflowButton;
descriptor: Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
flags: (0x0002) ACC_PRIVATE
private android.graphics.drawable.Drawable mPendingOverflowIcon;
descriptor: Landroid/graphics/drawable/Drawable;
flags: (0x0002) ACC_PRIVATE
private boolean mPendingOverflowIconSet;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean mReserveOverflow;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean mReserveOverflowSet;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private int mWidthLimit;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mActionItemWidthLimit;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private int mMaxItems;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private boolean mMaxItemsSet;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean mStrictWidthLimit;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean mWidthLimitSet;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private boolean mExpandedActionViewsExclusive;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
private int mMinCellSize;
descriptor: I
flags: (0x0002) ACC_PRIVATE
private final android.util.SparseBooleanArray mActionButtonGroups;
descriptor: Landroid/util/SparseBooleanArray;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private android.widget.ActionMenuPresenter$OverflowPopup mOverflowPopup;
descriptor: Landroid/widget/ActionMenuPresenter$OverflowPopup;
flags: (0x0002) ACC_PRIVATE
private android.widget.ActionMenuPresenter$ActionButtonSubmenu mActionButtonPopup;
descriptor: Landroid/widget/ActionMenuPresenter$ActionButtonSubmenu;
flags: (0x0002) ACC_PRIVATE
private android.widget.ActionMenuPresenter$OpenOverflowRunnable mPostedOpenRunnable;
descriptor: Landroid/widget/ActionMenuPresenter$OpenOverflowRunnable;
flags: (0x0002) ACC_PRIVATE
private android.widget.ActionMenuPresenter$ActionMenuPopupCallback mPopupCallback;
descriptor: Landroid/widget/ActionMenuPresenter$ActionMenuPopupCallback;
flags: (0x0002) ACC_PRIVATE
final android.widget.ActionMenuPresenter$PopupPresenterCallback mPopupPresenterCallback;
descriptor: Landroid/widget/ActionMenuPresenter$PopupPresenterCallback;
flags: (0x0010) ACC_FINAL
int mOpenSubMenuId;
descriptor: I
flags: (0x0000)
private android.util.SparseArray<android.widget.ActionMenuPresenter$MenuItemLayoutInfo> mPreLayoutItems;
descriptor: Landroid/util/SparseArray;
flags: (0x0002) ACC_PRIVATE
Signature: Landroid/util/SparseArray<Landroid/widget/ActionMenuPresenter$MenuItemLayoutInfo;>;
private android.util.SparseArray<android.widget.ActionMenuPresenter$MenuItemLayoutInfo> mPostLayoutItems;
descriptor: Landroid/util/SparseArray;
flags: (0x0002) ACC_PRIVATE
Signature: Landroid/util/SparseArray<Landroid/widget/ActionMenuPresenter$MenuItemLayoutInfo;>;
private java.util.List<android.widget.ActionMenuPresenter$ItemAnimationInfo> mRunningItemAnimations;
descriptor: Ljava/util/List;
flags: (0x0002) ACC_PRIVATE
Signature: Ljava/util/List<Landroid/widget/ActionMenuPresenter$ItemAnimationInfo;>;
private android.view.ViewTreeObserver$OnPreDrawListener mItemAnimationPreDrawListener;
descriptor: Landroid/view/ViewTreeObserver$OnPreDrawListener;
flags: (0x0002) ACC_PRIVATE
private android.view.View$OnAttachStateChangeListener mAttachStateChangeListener;
descriptor: Landroid/view/View$OnAttachStateChangeListener;
flags: (0x0002) ACC_PRIVATE
public void <init>(android.content.Context);
descriptor: (Landroid/content/Context;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 0: new java.lang.Error
dup
ldc "Unresolved compilation problems: \n\tcom.android.internal.R.layout cannot be resolved to a variable\n\tcom.android.internal.R.layout cannot be resolved to a variable\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.attr cannot be resolved to a variable\n"
invokespecial java.lang.Error.<init>:(Ljava/lang/String;)V
athrow
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/ActionMenuPresenter;
MethodParameters:
Name Flags
context
public void initForMenu(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=5, locals=7, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
aload 2
invokespecial com.android.internal.view.menu.BaseMenuPresenter.initForMenu:(Landroid/content/Context;Lcom/android/internal/view/menu/MenuBuilder;)V
1: aload 1
invokevirtual android.content.Context.getResources:()Landroid/content/res/Resources;
astore 3
start local 3 2: aload 1
invokestatic com.android.internal.view.ActionBarPolicy.get:(Landroid/content/Context;)Lcom/android/internal/view/ActionBarPolicy;
astore 4
start local 4 3: aload 0
getfield android.widget.ActionMenuPresenter.mReserveOverflowSet:Z
ifne 5
4: aload 0
aload 4
invokevirtual com.android.internal.view.ActionBarPolicy.showsOverflowMenuButton:()Z
putfield android.widget.ActionMenuPresenter.mReserveOverflow:Z
5: StackMap locals: android.content.res.Resources com.android.internal.view.ActionBarPolicy
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mWidthLimitSet:Z
ifne 7
6: aload 0
aload 4
invokevirtual com.android.internal.view.ActionBarPolicy.getEmbeddedMenuWidthLimit:()I
putfield android.widget.ActionMenuPresenter.mWidthLimit:I
7: StackMap locals:
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mMaxItemsSet:Z
ifne 9
8: aload 0
aload 4
invokevirtual com.android.internal.view.ActionBarPolicy.getMaxActionButtons:()I
putfield android.widget.ActionMenuPresenter.mMaxItems:I
9: StackMap locals:
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mWidthLimit:I
istore 5
start local 5 10: aload 0
getfield android.widget.ActionMenuPresenter.mReserveOverflow:Z
ifeq 21
11: aload 0
getfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
ifnonnull 19
12: aload 0
new android.widget.ActionMenuPresenter$OverflowMenuButton
dup
aload 0
aload 0
getfield android.widget.ActionMenuPresenter.mSystemContext:Landroid/content/Context;
invokespecial android.widget.ActionMenuPresenter$OverflowMenuButton.<init>:(Landroid/widget/ActionMenuPresenter;Landroid/content/Context;)V
putfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
13: aload 0
getfield android.widget.ActionMenuPresenter.mPendingOverflowIconSet:Z
ifeq 17
14: aload 0
getfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
aload 0
getfield android.widget.ActionMenuPresenter.mPendingOverflowIcon:Landroid/graphics/drawable/Drawable;
invokevirtual android.widget.ActionMenuPresenter$OverflowMenuButton.setImageDrawable:(Landroid/graphics/drawable/Drawable;)V
15: aload 0
aconst_null
putfield android.widget.ActionMenuPresenter.mPendingOverflowIcon:Landroid/graphics/drawable/Drawable;
16: aload 0
iconst_0
putfield android.widget.ActionMenuPresenter.mPendingOverflowIconSet:Z
17: StackMap locals: int
StackMap stack:
iconst_0
iconst_0
invokestatic android.view.View$MeasureSpec.makeMeasureSpec:(II)I
istore 6
start local 6 18: aload 0
getfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
iload 6
iload 6
invokevirtual android.widget.ActionMenuPresenter$OverflowMenuButton.measure:(II)V
end local 6 19: StackMap locals:
StackMap stack:
iload 5
aload 0
getfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
invokevirtual android.widget.ActionMenuPresenter$OverflowMenuButton.getMeasuredWidth:()I
isub
istore 5
20: goto 22
21: StackMap locals:
StackMap stack:
aload 0
aconst_null
putfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
22: StackMap locals:
StackMap stack:
aload 0
iload 5
putfield android.widget.ActionMenuPresenter.mActionItemWidthLimit:I
23: aload 0
ldc 56.0
aload 3
invokevirtual android.content.res.Resources.getDisplayMetrics:()Landroid/util/DisplayMetrics;
getfield android.util.DisplayMetrics.density:F
fmul
f2i
putfield android.widget.ActionMenuPresenter.mMinCellSize:I
24: return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 25 0 this Landroid/widget/ActionMenuPresenter;
0 25 1 context Landroid/content/Context;
0 25 2 menu Lcom/android/internal/view/menu/MenuBuilder;
2 25 3 res Landroid/content/res/Resources;
3 25 4 abp Lcom/android/internal/view/ActionBarPolicy;
10 25 5 width I
18 19 6 spec I
MethodParameters:
Name Flags
context
menu
public void onConfigurationChanged(android.content.res.Configuration);
descriptor: (Landroid/content/res/Configuration;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield android.widget.ActionMenuPresenter.mMaxItemsSet:Z
ifne 2
1: aload 0
aload 0
getfield android.widget.ActionMenuPresenter.mContext:Landroid/content/Context;
invokestatic com.android.internal.view.ActionBarPolicy.get:(Landroid/content/Context;)Lcom/android/internal/view/ActionBarPolicy;
invokevirtual com.android.internal.view.ActionBarPolicy.getMaxActionButtons:()I
putfield android.widget.ActionMenuPresenter.mMaxItems:I
2: StackMap locals:
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
ifnull 4
3: aload 0
getfield android.widget.ActionMenuPresenter.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
iconst_1
invokevirtual com.android.internal.view.menu.MenuBuilder.onItemsChanged:(Z)V
4: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/widget/ActionMenuPresenter;
0 5 1 newConfig Landroid/content/res/Configuration;
MethodParameters:
Name Flags
newConfig
public void setWidthLimit(int, boolean);
descriptor: (IZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
putfield android.widget.ActionMenuPresenter.mWidthLimit:I
1: aload 0
iload 2
putfield android.widget.ActionMenuPresenter.mStrictWidthLimit:Z
2: aload 0
iconst_1
putfield android.widget.ActionMenuPresenter.mWidthLimitSet:Z
3: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/widget/ActionMenuPresenter;
0 4 1 width I
0 4 2 strict Z
MethodParameters:
Name Flags
width
strict
public void setReserveOverflow(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield android.widget.ActionMenuPresenter.mReserveOverflow:Z
1: aload 0
iconst_1
putfield android.widget.ActionMenuPresenter.mReserveOverflowSet:Z
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/widget/ActionMenuPresenter;
0 3 1 reserveOverflow Z
MethodParameters:
Name Flags
reserveOverflow
public void setItemLimit(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield android.widget.ActionMenuPresenter.mMaxItems:I
1: aload 0
iconst_1
putfield android.widget.ActionMenuPresenter.mMaxItemsSet:Z
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/widget/ActionMenuPresenter;
0 3 1 itemCount I
MethodParameters:
Name Flags
itemCount
public void setExpandedActionViewsExclusive(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
putfield android.widget.ActionMenuPresenter.mExpandedActionViewsExclusive:Z
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/widget/ActionMenuPresenter;
0 2 1 isExclusive Z
MethodParameters:
Name Flags
isExclusive
public void setOverflowIcon(android.graphics.drawable.Drawable);
descriptor: (Landroid/graphics/drawable/Drawable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
getfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
ifnull 3
1: aload 0
getfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
aload 1
invokevirtual android.widget.ActionMenuPresenter$OverflowMenuButton.setImageDrawable:(Landroid/graphics/drawable/Drawable;)V
2: goto 5
3: StackMap locals:
StackMap stack:
aload 0
iconst_1
putfield android.widget.ActionMenuPresenter.mPendingOverflowIconSet:Z
4: aload 0
aload 1
putfield android.widget.ActionMenuPresenter.mPendingOverflowIcon:Landroid/graphics/drawable/Drawable;
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Landroid/widget/ActionMenuPresenter;
0 6 1 icon Landroid/graphics/drawable/Drawable;
MethodParameters:
Name Flags
icon
public android.graphics.drawable.Drawable getOverflowIcon();
descriptor: ()Landroid/graphics/drawable/Drawable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
ifnull 2
1: aload 0
getfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
invokevirtual android.widget.ActionMenuPresenter$OverflowMenuButton.getDrawable:()Landroid/graphics/drawable/Drawable;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mPendingOverflowIconSet:Z
ifeq 4
3: aload 0
getfield android.widget.ActionMenuPresenter.mPendingOverflowIcon:Landroid/graphics/drawable/Drawable;
areturn
4: StackMap locals:
StackMap stack:
aconst_null
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Landroid/widget/ActionMenuPresenter;
public com.android.internal.view.menu.MenuView getMenuView(android.view.ViewGroup);
descriptor: (Landroid/view/ViewGroup;)Lcom/android/internal/view/menu/MenuView;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=4, args_size=2
start local 0 start local 1 0: aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
astore 2
start local 2 1: aload 0
aload 1
invokespecial com.android.internal.view.menu.BaseMenuPresenter.getMenuView:(Landroid/view/ViewGroup;)Lcom/android/internal/view/menu/MenuView;
astore 3
start local 3 2: aload 2
aload 3
if_acmpeq 7
3: aload 3
checkcast android.widget.ActionMenuView
aload 0
invokevirtual android.widget.ActionMenuView.setPresenter:(Landroid/widget/ActionMenuPresenter;)V
4: aload 2
ifnull 6
5: aload 2
checkcast android.view.View
aload 0
getfield android.widget.ActionMenuPresenter.mAttachStateChangeListener:Landroid/view/View$OnAttachStateChangeListener;
invokevirtual android.view.View.removeOnAttachStateChangeListener:(Landroid/view/View$OnAttachStateChangeListener;)V
6: StackMap locals: com.android.internal.view.menu.MenuView com.android.internal.view.menu.MenuView
StackMap stack:
aload 3
checkcast android.view.View
aload 0
getfield android.widget.ActionMenuPresenter.mAttachStateChangeListener:Landroid/view/View$OnAttachStateChangeListener;
invokevirtual android.view.View.addOnAttachStateChangeListener:(Landroid/view/View$OnAttachStateChangeListener;)V
7: StackMap locals:
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Landroid/widget/ActionMenuPresenter;
0 8 1 root Landroid/view/ViewGroup;
1 8 2 oldMenuView Lcom/android/internal/view/menu/MenuView;
2 8 3 result Lcom/android/internal/view/menu/MenuView;
MethodParameters:
Name Flags
root
public android.view.View getItemView(com.android.internal.view.menu.MenuItemImpl, android.view.View, android.view.ViewGroup);
descriptor: (Lcom/android/internal/view/menu/MenuItemImpl;Landroid/view/View;Landroid/view/ViewGroup;)Landroid/view/View;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=7, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokevirtual com.android.internal.view.menu.MenuItemImpl.getActionView:()Landroid/view/View;
astore 4
start local 4 1: aload 4
ifnull 2
aload 1
invokevirtual com.android.internal.view.menu.MenuItemImpl.hasCollapsibleActionView:()Z
ifeq 3
2: StackMap locals: android.view.View
StackMap stack:
aload 0
aload 1
aload 2
aload 3
invokespecial com.android.internal.view.menu.BaseMenuPresenter.getItemView:(Lcom/android/internal/view/menu/MenuItemImpl;Landroid/view/View;Landroid/view/ViewGroup;)Landroid/view/View;
astore 4
3: StackMap locals:
StackMap stack:
aload 4
aload 1
invokevirtual com.android.internal.view.menu.MenuItemImpl.isActionViewExpanded:()Z
ifeq 4
bipush 8
goto 5
StackMap locals:
StackMap stack: android.view.View
4: iconst_0
StackMap locals: android.widget.ActionMenuPresenter com.android.internal.view.menu.MenuItemImpl android.view.View android.view.ViewGroup android.view.View
StackMap stack: android.view.View int
5: invokevirtual android.view.View.setVisibility:(I)V
6: aload 3
checkcast android.widget.ActionMenuView
astore 5
start local 5 7: aload 4
invokevirtual android.view.View.getLayoutParams:()Landroid/view/ViewGroup$LayoutParams;
astore 6
start local 6 8: aload 5
aload 6
invokevirtual android.widget.ActionMenuView.checkLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)Z
ifne 10
9: aload 4
aload 5
aload 6
invokevirtual android.widget.ActionMenuView.generateLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)Landroid/widget/ActionMenuView$LayoutParams;
invokevirtual android.view.View.setLayoutParams:(Landroid/view/ViewGroup$LayoutParams;)V
10: StackMap locals: android.widget.ActionMenuView android.view.ViewGroup$LayoutParams
StackMap stack:
aload 4
areturn
end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 11 0 this Landroid/widget/ActionMenuPresenter;
0 11 1 item Lcom/android/internal/view/menu/MenuItemImpl;
0 11 2 convertView Landroid/view/View;
0 11 3 parent Landroid/view/ViewGroup;
1 11 4 actionView Landroid/view/View;
7 11 5 menuParent Landroid/widget/ActionMenuView;
8 11 6 lp Landroid/view/ViewGroup$LayoutParams;
MethodParameters:
Name Flags
item final
convertView
parent
public void bindItemView(com.android.internal.view.menu.MenuItemImpl, com.android.internal.view.menu.MenuView$ItemView);
descriptor: (Lcom/android/internal/view/menu/MenuItemImpl;Lcom/android/internal/view/menu/MenuView$ItemView;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=5, args_size=3
start local 0 start local 1 start local 2 0: aload 2
aload 1
iconst_0
invokeinterface com.android.internal.view.menu.MenuView$ItemView.initialize:(Lcom/android/internal/view/menu/MenuItemImpl;I)V
1: aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
checkcast android.widget.ActionMenuView
astore 3
start local 3 2: aload 2
checkcast com.android.internal.view.menu.ActionMenuItemView
astore 4
start local 4 3: aload 4
aload 3
invokevirtual com.android.internal.view.menu.ActionMenuItemView.setItemInvoker:(Lcom/android/internal/view/menu/MenuBuilder$ItemInvoker;)V
4: aload 0
getfield android.widget.ActionMenuPresenter.mPopupCallback:Landroid/widget/ActionMenuPresenter$ActionMenuPopupCallback;
ifnonnull 6
5: aload 0
new android.widget.ActionMenuPresenter$ActionMenuPopupCallback
dup
aload 0
invokespecial android.widget.ActionMenuPresenter$ActionMenuPopupCallback.<init>:(Landroid/widget/ActionMenuPresenter;)V
putfield android.widget.ActionMenuPresenter.mPopupCallback:Landroid/widget/ActionMenuPresenter$ActionMenuPopupCallback;
6: StackMap locals: android.widget.ActionMenuView com.android.internal.view.menu.ActionMenuItemView
StackMap stack:
aload 4
aload 0
getfield android.widget.ActionMenuPresenter.mPopupCallback:Landroid/widget/ActionMenuPresenter$ActionMenuPopupCallback;
invokevirtual com.android.internal.view.menu.ActionMenuItemView.setPopupCallback:(Lcom/android/internal/view/menu/ActionMenuItemView$PopupCallback;)V
7: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Landroid/widget/ActionMenuPresenter;
0 8 1 item Lcom/android/internal/view/menu/MenuItemImpl;
0 8 2 itemView Lcom/android/internal/view/menu/MenuView$ItemView;
2 8 3 menuView Landroid/widget/ActionMenuView;
3 8 4 actionItemView Lcom/android/internal/view/menu/ActionMenuItemView;
MethodParameters:
Name Flags
item
itemView
public boolean shouldIncludeItem(int, com.android.internal.view.menu.MenuItemImpl);
descriptor: (ILcom/android/internal/view/menu/MenuItemImpl;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 2
invokevirtual com.android.internal.view.menu.MenuItemImpl.isActionButton:()Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/ActionMenuPresenter;
0 1 1 childIndex I
0 1 2 item Lcom/android/internal/view/menu/MenuItemImpl;
MethodParameters:
Name Flags
childIndex
item
private void computeMenuItemAnimationInfo(boolean);
descriptor: (Z)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=4, locals=9, args_size=2
start local 0 start local 1 0: aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
checkcast android.view.ViewGroup
astore 2
start local 2 1: aload 2
invokevirtual android.view.ViewGroup.getChildCount:()I
istore 3
start local 3 2: iload 1
ifeq 3
aload 0
getfield android.widget.ActionMenuPresenter.mPreLayoutItems:Landroid/util/SparseArray;
goto 4
StackMap locals: android.view.ViewGroup int
StackMap stack:
3: aload 0
getfield android.widget.ActionMenuPresenter.mPostLayoutItems:Landroid/util/SparseArray;
StackMap locals:
StackMap stack: android.util.SparseArray
4: astore 4
start local 4 5: iconst_0
istore 5
start local 5 6: goto 13
7: StackMap locals: android.util.SparseArray int
StackMap stack:
aload 2
iload 5
invokevirtual android.view.ViewGroup.getChildAt:(I)Landroid/view/View;
astore 6
start local 6 8: aload 6
invokevirtual android.view.View.getId:()I
istore 7
start local 7 9: iload 7
ifle 12
aload 6
invokevirtual android.view.View.getWidth:()I
ifeq 12
aload 6
invokevirtual android.view.View.getHeight:()I
ifeq 12
10: new android.widget.ActionMenuPresenter$MenuItemLayoutInfo
dup
aload 6
iload 1
invokespecial android.widget.ActionMenuPresenter$MenuItemLayoutInfo.<init>:(Landroid/view/View;Z)V
astore 8
start local 8 11: aload 4
iload 7
aload 8
invokevirtual android.util.SparseArray.put:(ILjava/lang/Object;)V
end local 8 end local 7 end local 6 12: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
13: iload 5
iload 3
if_icmplt 7
end local 5 14: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Landroid/widget/ActionMenuPresenter;
0 15 1 preLayout Z
1 15 2 menuView Landroid/view/ViewGroup;
2 15 3 count I
5 15 4 items Landroid/util/SparseArray;
6 14 5 i I
8 12 6 child Landroid/view/View;
9 12 7 id I
11 12 8 info Landroid/widget/ActionMenuPresenter$MenuItemLayoutInfo;
MethodParameters:
Name Flags
preLayout
private void runItemAnimations();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=6, locals=10, args_size=1
start local 0 0: iconst_0
istore 1
start local 1 1: goto 63
2: StackMap locals: int
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mPreLayoutItems:Landroid/util/SparseArray;
iload 1
invokevirtual android.util.SparseArray.keyAt:(I)I
istore 2
start local 2 3: aload 0
getfield android.widget.ActionMenuPresenter.mPreLayoutItems:Landroid/util/SparseArray;
iload 2
invokevirtual android.util.SparseArray.get:(I)Ljava/lang/Object;
checkcast android.widget.ActionMenuPresenter$MenuItemLayoutInfo
astore 3
start local 3 4: aload 0
getfield android.widget.ActionMenuPresenter.mPostLayoutItems:Landroid/util/SparseArray;
iload 2
invokevirtual android.util.SparseArray.indexOfKey:(I)I
istore 4
start local 4 5: iload 4
iflt 44
6: aload 0
getfield android.widget.ActionMenuPresenter.mPostLayoutItems:Landroid/util/SparseArray;
iload 4
invokevirtual android.util.SparseArray.valueAt:(I)Ljava/lang/Object;
checkcast android.widget.ActionMenuPresenter$MenuItemLayoutInfo
7: astore 5
start local 5 8: aconst_null
astore 6
start local 6 9: aconst_null
astore 7
start local 7 10: aload 3
getfield android.widget.ActionMenuPresenter$MenuItemLayoutInfo.left:I
aload 5
getfield android.widget.ActionMenuPresenter$MenuItemLayoutInfo.left:I
if_icmpeq 14
11: getstatic android.view.View.TRANSLATION_X:Landroid/util/Property;
iconst_2
newarray 6
dup
iconst_0
12: aload 3
getfield android.widget.ActionMenuPresenter$MenuItemLayoutInfo.left:I
aload 5
getfield android.widget.ActionMenuPresenter$MenuItemLayoutInfo.left:I
isub
i2f
fastore
dup
iconst_1
fconst_0
fastore
13: invokestatic android.animation.PropertyValuesHolder.ofFloat:(Landroid/util/Property;[F)Landroid/animation/PropertyValuesHolder;
astore 6
14: StackMap locals: android.widget.ActionMenuPresenter int int android.widget.ActionMenuPresenter$MenuItemLayoutInfo int android.widget.ActionMenuPresenter$MenuItemLayoutInfo android.animation.PropertyValuesHolder android.animation.PropertyValuesHolder
StackMap stack:
aload 3
getfield android.widget.ActionMenuPresenter$MenuItemLayoutInfo.top:I
aload 5
getfield android.widget.ActionMenuPresenter$MenuItemLayoutInfo.top:I
if_icmpeq 18
15: getstatic android.view.View.TRANSLATION_Y:Landroid/util/Property;
iconst_2
newarray 6
dup
iconst_0
16: aload 3
getfield android.widget.ActionMenuPresenter$MenuItemLayoutInfo.top:I
aload 5
getfield android.widget.ActionMenuPresenter$MenuItemLayoutInfo.top:I
isub
i2f
fastore
dup
iconst_1
fconst_0
fastore
17: invokestatic android.animation.PropertyValuesHolder.ofFloat:(Landroid/util/Property;[F)Landroid/animation/PropertyValuesHolder;
astore 7
18: StackMap locals:
StackMap stack:
aload 6
ifnonnull 19
aload 7
ifnull 42
19: StackMap locals:
StackMap stack:
iconst_0
istore 8
start local 8 20: goto 25
21: StackMap locals: int
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mRunningItemAnimations:Ljava/util/List;
iload 8
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast android.widget.ActionMenuPresenter$ItemAnimationInfo
astore 9
start local 9 22: aload 9
getfield android.widget.ActionMenuPresenter$ItemAnimationInfo.id:I
iload 2
if_icmpne 24
aload 9
getfield android.widget.ActionMenuPresenter$ItemAnimationInfo.animType:I
ifne 24
23: aload 9
getfield android.widget.ActionMenuPresenter$ItemAnimationInfo.animator:Landroid/animation/Animator;
invokevirtual android.animation.Animator.cancel:()V
end local 9 24: StackMap locals:
StackMap stack:
iinc 8 1
StackMap locals:
StackMap stack:
25: iload 8
aload 0
getfield android.widget.ActionMenuPresenter.mRunningItemAnimations:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmplt 21
end local 8 26: aload 6
ifnull 34
27: aload 7
ifnull 32
28: aload 5
getfield android.widget.ActionMenuPresenter$MenuItemLayoutInfo.view:Landroid/view/View;
iconst_2
anewarray android.animation.PropertyValuesHolder
dup
iconst_0
29: aload 6
aastore
dup
iconst_1
aload 7
aastore
30: invokestatic android.animation.ObjectAnimator.ofPropertyValuesHolder:(Ljava/lang/Object;[Landroid/animation/PropertyValuesHolder;)Landroid/animation/ObjectAnimator;
astore 8
start local 8 31: goto 35
end local 8 32: StackMap locals:
StackMap stack:
aload 5
getfield android.widget.ActionMenuPresenter$MenuItemLayoutInfo.view:Landroid/view/View;
iconst_1
anewarray android.animation.PropertyValuesHolder
dup
iconst_0
aload 6
aastore
invokestatic android.animation.ObjectAnimator.ofPropertyValuesHolder:(Ljava/lang/Object;[Landroid/animation/PropertyValuesHolder;)Landroid/animation/ObjectAnimator;
astore 8
start local 8 33: goto 35
end local 8 34: StackMap locals:
StackMap stack:
aload 5
getfield android.widget.ActionMenuPresenter$MenuItemLayoutInfo.view:Landroid/view/View;
iconst_1
anewarray android.animation.PropertyValuesHolder
dup
iconst_0
aload 7
aastore
invokestatic android.animation.ObjectAnimator.ofPropertyValuesHolder:(Ljava/lang/Object;[Landroid/animation/PropertyValuesHolder;)Landroid/animation/ObjectAnimator;
astore 8
start local 8 35: StackMap locals: android.animation.ObjectAnimator
StackMap stack:
aload 8
ldc 150
invokevirtual android.animation.ObjectAnimator.setDuration:(J)Landroid/animation/ObjectAnimator;
pop
36: aload 8
invokevirtual android.animation.ObjectAnimator.start:()V
37: new android.widget.ActionMenuPresenter$ItemAnimationInfo
dup
iload 2
aload 5
aload 8
38: iconst_0
39: invokespecial android.widget.ActionMenuPresenter$ItemAnimationInfo.<init>:(ILandroid/widget/ActionMenuPresenter$MenuItemLayoutInfo;Landroid/animation/Animator;I)V
astore 9
start local 9 40: aload 0
getfield android.widget.ActionMenuPresenter.mRunningItemAnimations:Ljava/util/List;
aload 9
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
41: aload 8
new android.widget.ActionMenuPresenter$3
dup
aload 0
invokespecial android.widget.ActionMenuPresenter$3.<init>:(Landroid/widget/ActionMenuPresenter;)V
invokevirtual android.animation.ObjectAnimator.addListener:(Landroid/animation/Animator$AnimatorListener;)V
end local 9 end local 8 42: StackMap locals:
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mPostLayoutItems:Landroid/util/SparseArray;
iload 2
invokevirtual android.util.SparseArray.remove:(I)V
end local 7 end local 6 end local 5 43: goto 62
44: StackMap locals:
StackMap stack:
fconst_1
fstore 5
start local 5 45: iconst_0
istore 6
start local 6 46: goto 52
47: StackMap locals: float int
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mRunningItemAnimations:Ljava/util/List;
iload 6
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast android.widget.ActionMenuPresenter$ItemAnimationInfo
astore 7
start local 7 48: aload 7
getfield android.widget.ActionMenuPresenter$ItemAnimationInfo.id:I
iload 2
if_icmpne 51
aload 7
getfield android.widget.ActionMenuPresenter$ItemAnimationInfo.animType:I
iconst_1
if_icmpne 51
49: aload 7
getfield android.widget.ActionMenuPresenter$ItemAnimationInfo.menuItemLayoutInfo:Landroid/widget/ActionMenuPresenter$MenuItemLayoutInfo;
getfield android.widget.ActionMenuPresenter$MenuItemLayoutInfo.view:Landroid/view/View;
invokevirtual android.view.View.getAlpha:()F
fstore 5
50: aload 7
getfield android.widget.ActionMenuPresenter$ItemAnimationInfo.animator:Landroid/animation/Animator;
invokevirtual android.animation.Animator.cancel:()V
end local 7 51: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
52: iload 6
aload 0
getfield android.widget.ActionMenuPresenter.mRunningItemAnimations:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmplt 47
end local 6 53: aload 3
getfield android.widget.ActionMenuPresenter$MenuItemLayoutInfo.view:Landroid/view/View;
getstatic android.view.View.ALPHA:Landroid/util/Property;
iconst_2
newarray 6
dup
iconst_0
54: fload 5
fastore
dup
iconst_1
fconst_0
fastore
55: invokestatic android.animation.ObjectAnimator.ofFloat:(Ljava/lang/Object;Landroid/util/Property;[F)Landroid/animation/ObjectAnimator;
astore 6
start local 6 56: aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
checkcast android.view.ViewGroup
invokevirtual android.view.ViewGroup.getOverlay:()Landroid/view/ViewGroupOverlay;
aload 3
getfield android.widget.ActionMenuPresenter$MenuItemLayoutInfo.view:Landroid/view/View;
invokevirtual android.view.ViewGroupOverlay.add:(Landroid/view/View;)V
57: aload 6
ldc 150
invokevirtual android.animation.ObjectAnimator.setDuration:(J)Landroid/animation/ObjectAnimator;
pop
58: aload 6
invokevirtual android.animation.ObjectAnimator.start:()V
59: new android.widget.ActionMenuPresenter$ItemAnimationInfo
dup
iload 2
aload 3
aload 6
iconst_2
invokespecial android.widget.ActionMenuPresenter$ItemAnimationInfo.<init>:(ILandroid/widget/ActionMenuPresenter$MenuItemLayoutInfo;Landroid/animation/Animator;I)V
astore 7
start local 7 60: aload 0
getfield android.widget.ActionMenuPresenter.mRunningItemAnimations:Ljava/util/List;
aload 7
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
61: aload 6
new android.widget.ActionMenuPresenter$4
dup
aload 0
aload 3
invokespecial android.widget.ActionMenuPresenter$4.<init>:(Landroid/widget/ActionMenuPresenter;Landroid/widget/ActionMenuPresenter$MenuItemLayoutInfo;)V
invokevirtual android.animation.ObjectAnimator.addListener:(Landroid/animation/Animator$AnimatorListener;)V
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 62: StackMap locals: android.widget.ActionMenuPresenter int
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
63: iload 1
aload 0
getfield android.widget.ActionMenuPresenter.mPreLayoutItems:Landroid/util/SparseArray;
invokevirtual android.util.SparseArray.size:()I
if_icmplt 2
end local 1 64: iconst_0
istore 1
start local 1 65: goto 89
66: StackMap locals:
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mPostLayoutItems:Landroid/util/SparseArray;
iload 1
invokevirtual android.util.SparseArray.keyAt:(I)I
istore 2
start local 2 67: aload 0
getfield android.widget.ActionMenuPresenter.mPostLayoutItems:Landroid/util/SparseArray;
iload 2
invokevirtual android.util.SparseArray.indexOfKey:(I)I
istore 3
start local 3 68: iload 3
iflt 88
69: aload 0
getfield android.widget.ActionMenuPresenter.mPostLayoutItems:Landroid/util/SparseArray;
iload 3
invokevirtual android.util.SparseArray.valueAt:(I)Ljava/lang/Object;
checkcast android.widget.ActionMenuPresenter$MenuItemLayoutInfo
70: astore 4
start local 4 71: fconst_0
fstore 5
start local 5 72: iconst_0
istore 6
start local 6 73: goto 79
74: StackMap locals: android.widget.ActionMenuPresenter int int int android.widget.ActionMenuPresenter$MenuItemLayoutInfo float int
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mRunningItemAnimations:Ljava/util/List;
iload 6
invokeinterface java.util.List.get:(I)Ljava/lang/Object;
checkcast android.widget.ActionMenuPresenter$ItemAnimationInfo
astore 7
start local 7 75: aload 7
getfield android.widget.ActionMenuPresenter$ItemAnimationInfo.id:I
iload 2
if_icmpne 78
aload 7
getfield android.widget.ActionMenuPresenter$ItemAnimationInfo.animType:I
iconst_2
if_icmpne 78
76: aload 7
getfield android.widget.ActionMenuPresenter$ItemAnimationInfo.menuItemLayoutInfo:Landroid/widget/ActionMenuPresenter$MenuItemLayoutInfo;
getfield android.widget.ActionMenuPresenter$MenuItemLayoutInfo.view:Landroid/view/View;
invokevirtual android.view.View.getAlpha:()F
fstore 5
77: aload 7
getfield android.widget.ActionMenuPresenter$ItemAnimationInfo.animator:Landroid/animation/Animator;
invokevirtual android.animation.Animator.cancel:()V
end local 7 78: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
79: iload 6
aload 0
getfield android.widget.ActionMenuPresenter.mRunningItemAnimations:Ljava/util/List;
invokeinterface java.util.List.size:()I
if_icmplt 74
end local 6 80: aload 4
getfield android.widget.ActionMenuPresenter$MenuItemLayoutInfo.view:Landroid/view/View;
getstatic android.view.View.ALPHA:Landroid/util/Property;
iconst_2
newarray 6
dup
iconst_0
81: fload 5
fastore
dup
iconst_1
fconst_1
fastore
82: invokestatic android.animation.ObjectAnimator.ofFloat:(Ljava/lang/Object;Landroid/util/Property;[F)Landroid/animation/ObjectAnimator;
astore 6
start local 6 83: aload 6
invokevirtual android.animation.ObjectAnimator.start:()V
84: aload 6
ldc 150
invokevirtual android.animation.ObjectAnimator.setDuration:(J)Landroid/animation/ObjectAnimator;
pop
85: new android.widget.ActionMenuPresenter$ItemAnimationInfo
dup
iload 2
aload 4
aload 6
iconst_1
invokespecial android.widget.ActionMenuPresenter$ItemAnimationInfo.<init>:(ILandroid/widget/ActionMenuPresenter$MenuItemLayoutInfo;Landroid/animation/Animator;I)V
astore 7
start local 7 86: aload 0
getfield android.widget.ActionMenuPresenter.mRunningItemAnimations:Ljava/util/List;
aload 7
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
87: aload 6
new android.widget.ActionMenuPresenter$5
dup
aload 0
invokespecial android.widget.ActionMenuPresenter$5.<init>:(Landroid/widget/ActionMenuPresenter;)V
invokevirtual android.animation.ObjectAnimator.addListener:(Landroid/animation/Animator$AnimatorListener;)V
end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 88: StackMap locals: android.widget.ActionMenuPresenter int
StackMap stack:
iinc 1 1
StackMap locals:
StackMap stack:
89: iload 1
aload 0
getfield android.widget.ActionMenuPresenter.mPostLayoutItems:Landroid/util/SparseArray;
invokevirtual android.util.SparseArray.size:()I
if_icmplt 66
end local 1 90: aload 0
getfield android.widget.ActionMenuPresenter.mPreLayoutItems:Landroid/util/SparseArray;
invokevirtual android.util.SparseArray.clear:()V
91: aload 0
getfield android.widget.ActionMenuPresenter.mPostLayoutItems:Landroid/util/SparseArray;
invokevirtual android.util.SparseArray.clear:()V
92: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 93 0 this Landroid/widget/ActionMenuPresenter;
1 64 1 i I
3 62 2 id I
4 62 3 menuItemLayoutInfoPre Landroid/widget/ActionMenuPresenter$MenuItemLayoutInfo;
5 62 4 postLayoutIndex I
8 43 5 menuItemLayoutInfoPost Landroid/widget/ActionMenuPresenter$MenuItemLayoutInfo;
9 43 6 pvhX Landroid/animation/PropertyValuesHolder;
10 43 7 pvhY Landroid/animation/PropertyValuesHolder;
20 26 8 j I
22 24 9 oldInfo Landroid/widget/ActionMenuPresenter$ItemAnimationInfo;
31 32 8 anim Landroid/animation/ObjectAnimator;
33 34 8 anim Landroid/animation/ObjectAnimator;
35 42 8 anim Landroid/animation/ObjectAnimator;
40 42 9 info Landroid/widget/ActionMenuPresenter$ItemAnimationInfo;
45 62 5 oldAlpha F
46 53 6 j I
48 51 7 oldInfo Landroid/widget/ActionMenuPresenter$ItemAnimationInfo;
56 62 6 anim Landroid/animation/ObjectAnimator;
60 62 7 info Landroid/widget/ActionMenuPresenter$ItemAnimationInfo;
65 90 1 i I
67 88 2 id I
68 88 3 postLayoutIndex I
71 88 4 menuItemLayoutInfo Landroid/widget/ActionMenuPresenter$MenuItemLayoutInfo;
72 88 5 oldAlpha F
73 80 6 j I
75 78 7 oldInfo Landroid/widget/ActionMenuPresenter$ItemAnimationInfo;
83 88 6 anim Landroid/animation/ObjectAnimator;
86 88 7 info Landroid/widget/ActionMenuPresenter$ItemAnimationInfo;
private void setupItemAnimations();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
iconst_1
invokevirtual android.widget.ActionMenuPresenter.computeMenuItemAnimationInfo:(Z)V
1: aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
checkcast android.view.View
invokevirtual android.view.View.getViewTreeObserver:()Landroid/view/ViewTreeObserver;
2: aload 0
getfield android.widget.ActionMenuPresenter.mItemAnimationPreDrawListener:Landroid/view/ViewTreeObserver$OnPreDrawListener;
invokevirtual android.view.ViewTreeObserver.addOnPreDrawListener:(Landroid/view/ViewTreeObserver$OnPreDrawListener;)V
3: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/widget/ActionMenuPresenter;
public void updateMenuView(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
checkcast android.view.View
invokevirtual android.view.View.getParent:()Landroid/view/ViewParent;
checkcast android.view.ViewGroup
astore 2
start local 2 1: aload 0
iload 1
invokespecial com.android.internal.view.menu.BaseMenuPresenter.updateMenuView:(Z)V
2: aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
checkcast android.view.View
invokevirtual android.view.View.requestLayout:()V
3: aload 0
getfield android.widget.ActionMenuPresenter.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
ifnull 13
4: aload 0
getfield android.widget.ActionMenuPresenter.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
invokevirtual com.android.internal.view.menu.MenuBuilder.getActionItems:()Ljava/util/ArrayList;
astore 3
start local 3 5: aload 3
invokevirtual java.util.ArrayList.size:()I
istore 4
start local 4 6: iconst_0
istore 5
start local 5 7: goto 12
8: StackMap locals: android.widget.ActionMenuPresenter int android.view.ViewGroup java.util.ArrayList int int
StackMap stack:
aload 3
iload 5
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast com.android.internal.view.menu.MenuItemImpl
invokevirtual com.android.internal.view.menu.MenuItemImpl.getActionProvider:()Landroid/view/ActionProvider;
astore 6
start local 6 9: aload 6
ifnull 11
10: aload 6
aload 0
invokevirtual android.view.ActionProvider.setSubUiVisibilityListener:(Landroid/view/ActionProvider$SubUiVisibilityListener;)V
end local 6 11: StackMap locals:
StackMap stack:
iinc 5 1
StackMap locals:
StackMap stack:
12: iload 5
iload 4
if_icmplt 8
end local 5 end local 4 end local 3 13: StackMap locals:
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
ifnull 15
14: aload 0
getfield android.widget.ActionMenuPresenter.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
invokevirtual com.android.internal.view.menu.MenuBuilder.getNonActionItems:()Ljava/util/ArrayList;
goto 16
StackMap locals:
StackMap stack:
15: aconst_null
16: StackMap locals:
StackMap stack: java.util.ArrayList
astore 3
start local 3 17: iconst_0
istore 4
start local 4 18: aload 0
getfield android.widget.ActionMenuPresenter.mReserveOverflow:Z
ifeq 28
aload 3
ifnull 28
19: aload 3
invokevirtual java.util.ArrayList.size:()I
istore 5
start local 5 20: iload 5
iconst_1
if_icmpne 25
21: aload 3
iconst_0
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast com.android.internal.view.menu.MenuItemImpl
invokevirtual com.android.internal.view.menu.MenuItemImpl.isActionViewExpanded:()Z
ifeq 22
iconst_0
goto 23
StackMap locals: java.util.ArrayList int int
StackMap stack:
22: iconst_1
StackMap locals:
StackMap stack: int
23: istore 4
24: goto 28
25: StackMap locals:
StackMap stack:
iload 5
ifle 26
iconst_1
goto 27
StackMap locals:
StackMap stack:
26: iconst_0
StackMap locals:
StackMap stack: int
27: istore 4
end local 5 28: StackMap locals:
StackMap stack:
iload 4
ifeq 38
29: aload 0
getfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
ifnonnull 31
30: aload 0
new android.widget.ActionMenuPresenter$OverflowMenuButton
dup
aload 0
aload 0
getfield android.widget.ActionMenuPresenter.mSystemContext:Landroid/content/Context;
invokespecial android.widget.ActionMenuPresenter$OverflowMenuButton.<init>:(Landroid/widget/ActionMenuPresenter;Landroid/content/Context;)V
putfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
31: StackMap locals:
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
invokevirtual android.widget.ActionMenuPresenter$OverflowMenuButton.getParent:()Landroid/view/ViewParent;
checkcast android.view.ViewGroup
astore 5
start local 5 32: aload 5
aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
if_acmpeq 40
33: aload 5
ifnull 35
34: aload 5
aload 0
getfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
invokevirtual android.view.ViewGroup.removeView:(Landroid/view/View;)V
35: StackMap locals: android.view.ViewGroup
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
checkcast android.widget.ActionMenuView
astore 6
start local 6 36: aload 6
aload 0
getfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
aload 6
invokevirtual android.widget.ActionMenuView.generateOverflowButtonLayoutParams:()Landroid/widget/ActionMenuView$LayoutParams;
invokevirtual android.widget.ActionMenuView.addView:(Landroid/view/View;Landroid/view/ViewGroup$LayoutParams;)V
end local 6 end local 5 37: goto 40
StackMap locals:
StackMap stack:
38: aload 0
getfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
ifnull 40
aload 0
getfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
invokevirtual android.widget.ActionMenuPresenter$OverflowMenuButton.getParent:()Landroid/view/ViewParent;
aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
if_acmpne 40
39: aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
checkcast android.view.ViewGroup
aload 0
getfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
invokevirtual android.view.ViewGroup.removeView:(Landroid/view/View;)V
40: StackMap locals:
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
checkcast android.widget.ActionMenuView
aload 0
getfield android.widget.ActionMenuPresenter.mReserveOverflow:Z
invokevirtual android.widget.ActionMenuView.setOverflowReserved:(Z)V
41: return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 42 0 this Landroid/widget/ActionMenuPresenter;
0 42 1 cleared Z
1 42 2 menuViewParent Landroid/view/ViewGroup;
5 13 3 actionItems Ljava/util/ArrayList<Lcom/android/internal/view/menu/MenuItemImpl;>;
6 13 4 count I
7 13 5 i I
9 11 6 provider Landroid/view/ActionProvider;
17 42 3 nonActionItems Ljava/util/ArrayList<Lcom/android/internal/view/menu/MenuItemImpl;>;
18 42 4 hasOverflow Z
20 28 5 count I
32 37 5 parent Landroid/view/ViewGroup;
36 37 6 menuView Landroid/widget/ActionMenuView;
MethodParameters:
Name Flags
cleared
public boolean filterLeftoverView(android.view.ViewGroup, int);
descriptor: (Landroid/view/ViewGroup;I)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 1
iload 2
invokevirtual android.view.ViewGroup.getChildAt:(I)Landroid/view/View;
aload 0
getfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
if_acmpne 1
iconst_0
ireturn
1: StackMap locals:
StackMap stack:
aload 0
aload 1
iload 2
invokespecial com.android.internal.view.menu.BaseMenuPresenter.filterLeftoverView:(Landroid/view/ViewGroup;I)Z
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/widget/ActionMenuPresenter;
0 2 1 parent Landroid/view/ViewGroup;
0 2 2 childIndex I
MethodParameters:
Name Flags
parent
childIndex
public boolean onSubMenuSelected(com.android.internal.view.menu.SubMenuBuilder);
descriptor: (Lcom/android/internal/view/menu/SubMenuBuilder;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=8, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual com.android.internal.view.menu.SubMenuBuilder.hasVisibleItems:()Z
ifne 1
iconst_0
ireturn
1: StackMap locals:
StackMap stack:
aload 1
astore 2
start local 2 2: goto 4
3: StackMap locals: com.android.internal.view.menu.SubMenuBuilder
StackMap stack:
aload 2
invokevirtual com.android.internal.view.menu.SubMenuBuilder.getParentMenu:()Landroid/view/Menu;
checkcast com.android.internal.view.menu.SubMenuBuilder
astore 2
4: StackMap locals:
StackMap stack:
aload 2
invokevirtual com.android.internal.view.menu.SubMenuBuilder.getParentMenu:()Landroid/view/Menu;
aload 0
getfield android.widget.ActionMenuPresenter.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
if_acmpne 3
5: aload 0
aload 2
invokevirtual com.android.internal.view.menu.SubMenuBuilder.getItem:()Landroid/view/MenuItem;
invokevirtual android.widget.ActionMenuPresenter.findViewForItem:(Landroid/view/MenuItem;)Landroid/view/View;
astore 3
start local 3 6: aload 3
ifnonnull 8
7: iconst_0
ireturn
8: StackMap locals: android.view.View
StackMap stack:
aload 0
aload 1
invokevirtual com.android.internal.view.menu.SubMenuBuilder.getItem:()Landroid/view/MenuItem;
invokeinterface android.view.MenuItem.getItemId:()I
putfield android.widget.ActionMenuPresenter.mOpenSubMenuId:I
9: iconst_0
istore 4
start local 4 10: aload 1
invokevirtual com.android.internal.view.menu.SubMenuBuilder.size:()I
istore 5
start local 5 11: iconst_0
istore 6
start local 6 12: goto 18
13: StackMap locals: int int int
StackMap stack:
aload 1
iload 6
invokevirtual com.android.internal.view.menu.SubMenuBuilder.getItem:(I)Landroid/view/MenuItem;
astore 7
start local 7 14: aload 7
invokeinterface android.view.MenuItem.isVisible:()Z
ifeq 17
aload 7
invokeinterface android.view.MenuItem.getIcon:()Landroid/graphics/drawable/Drawable;
ifnull 17
15: iconst_1
istore 4
16: goto 19
end local 7 17: StackMap locals:
StackMap stack:
iinc 6 1
StackMap locals:
StackMap stack:
18: iload 6
iload 5
if_icmplt 13
end local 6 19: StackMap locals:
StackMap stack:
aload 0
new android.widget.ActionMenuPresenter$ActionButtonSubmenu
dup
aload 0
aload 0
getfield android.widget.ActionMenuPresenter.mContext:Landroid/content/Context;
aload 1
aload 3
invokespecial android.widget.ActionMenuPresenter$ActionButtonSubmenu.<init>:(Landroid/widget/ActionMenuPresenter;Landroid/content/Context;Lcom/android/internal/view/menu/SubMenuBuilder;Landroid/view/View;)V
putfield android.widget.ActionMenuPresenter.mActionButtonPopup:Landroid/widget/ActionMenuPresenter$ActionButtonSubmenu;
20: aload 0
getfield android.widget.ActionMenuPresenter.mActionButtonPopup:Landroid/widget/ActionMenuPresenter$ActionButtonSubmenu;
iload 4
invokevirtual android.widget.ActionMenuPresenter$ActionButtonSubmenu.setForceShowIcon:(Z)V
21: aload 0
getfield android.widget.ActionMenuPresenter.mActionButtonPopup:Landroid/widget/ActionMenuPresenter$ActionButtonSubmenu;
invokevirtual android.widget.ActionMenuPresenter$ActionButtonSubmenu.show:()V
22: aload 0
aload 1
invokespecial com.android.internal.view.menu.BaseMenuPresenter.onSubMenuSelected:(Lcom/android/internal/view/menu/SubMenuBuilder;)Z
pop
23: iconst_1
ireturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 24 0 this Landroid/widget/ActionMenuPresenter;
0 24 1 subMenu Lcom/android/internal/view/menu/SubMenuBuilder;
2 24 2 topSubMenu Lcom/android/internal/view/menu/SubMenuBuilder;
6 24 3 anchor Landroid/view/View;
10 24 4 preserveIconSpacing Z
11 24 5 count I
12 19 6 i I
14 17 7 childItem Landroid/view/MenuItem;
MethodParameters:
Name Flags
subMenu
private android.view.View findViewForItem(android.view.MenuItem);
descriptor: (Landroid/view/MenuItem;)Landroid/view/View;
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=6, args_size=2
start local 0 start local 1 0: aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
checkcast android.view.ViewGroup
astore 2
start local 2 1: aload 2
ifnonnull 2
aconst_null
areturn
2: StackMap locals: android.view.ViewGroup
StackMap stack:
aload 2
invokevirtual android.view.ViewGroup.getChildCount:()I
istore 3
start local 3 3: iconst_0
istore 4
start local 4 4: goto 10
5: StackMap locals: int int
StackMap stack:
aload 2
iload 4
invokevirtual android.view.ViewGroup.getChildAt:(I)Landroid/view/View;
astore 5
start local 5 6: aload 5
instanceof com.android.internal.view.menu.MenuView$ItemView
ifeq 9
7: aload 5
checkcast com.android.internal.view.menu.MenuView$ItemView
invokeinterface com.android.internal.view.menu.MenuView$ItemView.getItemData:()Lcom/android/internal/view/menu/MenuItemImpl;
aload 1
if_acmpne 9
8: aload 5
areturn
end local 5 9: StackMap locals:
StackMap stack:
iinc 4 1
StackMap locals:
StackMap stack:
10: iload 4
iload 3
if_icmplt 5
end local 4 11: aconst_null
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Landroid/widget/ActionMenuPresenter;
0 12 1 item Landroid/view/MenuItem;
1 12 2 parent Landroid/view/ViewGroup;
3 12 3 count I
4 11 4 i I
6 9 5 child Landroid/view/View;
MethodParameters:
Name Flags
item
public boolean showOverflowMenu();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=2, args_size=1
start local 0 0: aload 0
getfield android.widget.ActionMenuPresenter.mReserveOverflow:Z
ifeq 7
aload 0
invokevirtual android.widget.ActionMenuPresenter.isOverflowMenuShowing:()Z
ifne 7
aload 0
getfield android.widget.ActionMenuPresenter.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
ifnull 7
aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
ifnull 7
1: aload 0
getfield android.widget.ActionMenuPresenter.mPostedOpenRunnable:Landroid/widget/ActionMenuPresenter$OpenOverflowRunnable;
ifnonnull 7
aload 0
getfield android.widget.ActionMenuPresenter.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
invokevirtual com.android.internal.view.menu.MenuBuilder.getNonActionItems:()Ljava/util/ArrayList;
invokevirtual java.util.ArrayList.isEmpty:()Z
ifne 7
2: new android.widget.ActionMenuPresenter$OverflowPopup
dup
aload 0
aload 0
getfield android.widget.ActionMenuPresenter.mContext:Landroid/content/Context;
aload 0
getfield android.widget.ActionMenuPresenter.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
aload 0
getfield android.widget.ActionMenuPresenter.mOverflowButton:Landroid/widget/ActionMenuPresenter$OverflowMenuButton;
iconst_1
invokespecial android.widget.ActionMenuPresenter$OverflowPopup.<init>:(Landroid/widget/ActionMenuPresenter;Landroid/content/Context;Lcom/android/internal/view/menu/MenuBuilder;Landroid/view/View;Z)V
astore 1
start local 1 3: aload 0
new android.widget.ActionMenuPresenter$OpenOverflowRunnable
dup
aload 0
aload 1
invokespecial android.widget.ActionMenuPresenter$OpenOverflowRunnable.<init>:(Landroid/widget/ActionMenuPresenter;Landroid/widget/ActionMenuPresenter$OverflowPopup;)V
putfield android.widget.ActionMenuPresenter.mPostedOpenRunnable:Landroid/widget/ActionMenuPresenter$OpenOverflowRunnable;
4: aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
checkcast android.view.View
aload 0
getfield android.widget.ActionMenuPresenter.mPostedOpenRunnable:Landroid/widget/ActionMenuPresenter$OpenOverflowRunnable;
invokevirtual android.view.View.post:(Ljava/lang/Runnable;)Z
pop
5: aload 0
aconst_null
invokespecial com.android.internal.view.menu.BaseMenuPresenter.onSubMenuSelected:(Lcom/android/internal/view/menu/SubMenuBuilder;)Z
pop
6: iconst_1
ireturn
end local 1 7: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Landroid/widget/ActionMenuPresenter;
3 7 1 popup Landroid/widget/ActionMenuPresenter$OverflowPopup;
public boolean hideOverflowMenu();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
getfield android.widget.ActionMenuPresenter.mPostedOpenRunnable:Landroid/widget/ActionMenuPresenter$OpenOverflowRunnable;
ifnull 4
aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
ifnull 4
1: aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
checkcast android.view.View
aload 0
getfield android.widget.ActionMenuPresenter.mPostedOpenRunnable:Landroid/widget/ActionMenuPresenter$OpenOverflowRunnable;
invokevirtual android.view.View.removeCallbacks:(Ljava/lang/Runnable;)Z
pop
2: aload 0
aconst_null
putfield android.widget.ActionMenuPresenter.mPostedOpenRunnable:Landroid/widget/ActionMenuPresenter$OpenOverflowRunnable;
3: iconst_1
ireturn
4: StackMap locals:
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mOverflowPopup:Landroid/widget/ActionMenuPresenter$OverflowPopup;
astore 1
start local 1 5: aload 1
ifnull 8
6: aload 1
invokevirtual com.android.internal.view.menu.MenuPopupHelper.dismiss:()V
7: iconst_1
ireturn
8: StackMap locals: com.android.internal.view.menu.MenuPopupHelper
StackMap stack:
iconst_0
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 9 0 this Landroid/widget/ActionMenuPresenter;
5 9 1 popup Lcom/android/internal/view/menu/MenuPopupHelper;
public boolean dismissPopupMenus();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: aload 0
invokevirtual android.widget.ActionMenuPresenter.hideOverflowMenu:()Z
istore 1
start local 1 1: iload 1
aload 0
invokevirtual android.widget.ActionMenuPresenter.hideSubMenus:()Z
ior
istore 1
2: iload 1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/widget/ActionMenuPresenter;
1 3 1 result Z
public boolean hideSubMenus();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.widget.ActionMenuPresenter.mActionButtonPopup:Landroid/widget/ActionMenuPresenter$ActionButtonSubmenu;
ifnull 3
1: aload 0
getfield android.widget.ActionMenuPresenter.mActionButtonPopup:Landroid/widget/ActionMenuPresenter$ActionButtonSubmenu;
invokevirtual android.widget.ActionMenuPresenter$ActionButtonSubmenu.dismiss:()V
2: iconst_1
ireturn
3: StackMap locals:
StackMap stack:
iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Landroid/widget/ActionMenuPresenter;
public boolean isOverflowMenuShowing();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.widget.ActionMenuPresenter.mOverflowPopup:Landroid/widget/ActionMenuPresenter$OverflowPopup;
ifnull 1
aload 0
getfield android.widget.ActionMenuPresenter.mOverflowPopup:Landroid/widget/ActionMenuPresenter$OverflowPopup;
invokevirtual android.widget.ActionMenuPresenter$OverflowPopup.isShowing:()Z
ifeq 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/widget/ActionMenuPresenter;
public boolean isOverflowMenuShowPending();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.widget.ActionMenuPresenter.mPostedOpenRunnable:Landroid/widget/ActionMenuPresenter$OpenOverflowRunnable;
ifnonnull 1
aload 0
invokevirtual android.widget.ActionMenuPresenter.isOverflowMenuShowing:()Z
ifne 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Landroid/widget/ActionMenuPresenter;
public boolean isOverflowReserved();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield android.widget.ActionMenuPresenter.mReserveOverflow:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Landroid/widget/ActionMenuPresenter;
public boolean flagActionItems();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=6, locals=21, args_size=1
start local 0 0: aload 0
getfield android.widget.ActionMenuPresenter.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
ifnull 4
1: aload 0
getfield android.widget.ActionMenuPresenter.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
invokevirtual com.android.internal.view.menu.MenuBuilder.getVisibleItems:()Ljava/util/ArrayList;
astore 1
start local 1 2: aload 1
invokevirtual java.util.ArrayList.size:()I
istore 2
start local 2 3: goto 6
end local 2 end local 1 4: StackMap locals:
StackMap stack:
aconst_null
astore 1
start local 1 5: iconst_0
istore 2
start local 2 6: StackMap locals: java.util.ArrayList int
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mMaxItems:I
istore 3
start local 3 7: aload 0
getfield android.widget.ActionMenuPresenter.mActionItemWidthLimit:I
istore 4
start local 4 8: iconst_0
iconst_0
invokestatic android.view.View$MeasureSpec.makeMeasureSpec:(II)I
istore 5
start local 5 9: aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
checkcast android.view.ViewGroup
astore 6
start local 6 10: iconst_0
istore 7
start local 7 11: iconst_0
istore 8
start local 8 12: iconst_0
istore 9
start local 9 13: iconst_0
istore 10
start local 10 14: iconst_0
istore 11
start local 11 15: goto 27
16: StackMap locals: android.widget.ActionMenuPresenter java.util.ArrayList int int int int android.view.ViewGroup int int int int int
StackMap stack:
aload 1
iload 11
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast com.android.internal.view.menu.MenuItemImpl
astore 12
start local 12 17: aload 12
invokevirtual com.android.internal.view.menu.MenuItemImpl.requiresActionButton:()Z
ifeq 20
18: iinc 7 1
19: goto 24
StackMap locals: com.android.internal.view.menu.MenuItemImpl
StackMap stack:
20: aload 12
invokevirtual com.android.internal.view.menu.MenuItemImpl.requestsActionButton:()Z
ifeq 23
21: iinc 8 1
22: goto 24
23: StackMap locals:
StackMap stack:
iconst_1
istore 10
24: StackMap locals:
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mExpandedActionViewsExclusive:Z
ifeq 26
aload 12
invokevirtual com.android.internal.view.menu.MenuItemImpl.isActionViewExpanded:()Z
ifeq 26
25: iconst_0
istore 3
end local 12 26: StackMap locals:
StackMap stack:
iinc 11 1
StackMap locals:
StackMap stack:
27: iload 11
iload 2
if_icmplt 16
end local 11 28: aload 0
getfield android.widget.ActionMenuPresenter.mReserveOverflow:Z
ifeq 31
29: iload 10
ifne 30
iload 7
iload 8
iadd
iload 3
if_icmple 31
30: StackMap locals:
StackMap stack:
iinc 3 -1
31: StackMap locals:
StackMap stack:
iload 3
iload 7
isub
istore 3
32: aload 0
getfield android.widget.ActionMenuPresenter.mActionButtonGroups:Landroid/util/SparseBooleanArray;
astore 11
start local 11 33: aload 11
invokevirtual android.util.SparseBooleanArray.clear:()V
34: iconst_0
istore 12
start local 12 35: iconst_0
istore 13
start local 13 36: aload 0
getfield android.widget.ActionMenuPresenter.mStrictWidthLimit:Z
ifeq 40
37: iload 4
aload 0
getfield android.widget.ActionMenuPresenter.mMinCellSize:I
idiv
istore 13
38: iload 4
aload 0
getfield android.widget.ActionMenuPresenter.mMinCellSize:I
irem
istore 14
start local 14 39: aload 0
getfield android.widget.ActionMenuPresenter.mMinCellSize:I
iload 14
iload 13
idiv
iadd
istore 12
end local 14 40: StackMap locals: android.util.SparseBooleanArray int int
StackMap stack:
iconst_0
istore 14
start local 14 41: goto 111
42: StackMap locals: int
StackMap stack:
aload 1
iload 14
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast com.android.internal.view.menu.MenuItemImpl
astore 15
start local 15 43: aload 15
invokevirtual com.android.internal.view.menu.MenuItemImpl.requiresActionButton:()Z
ifeq 60
44: aload 0
aload 15
aconst_null
aload 6
invokevirtual android.widget.ActionMenuPresenter.getItemView:(Lcom/android/internal/view/menu/MenuItemImpl;Landroid/view/View;Landroid/view/ViewGroup;)Landroid/view/View;
astore 16
start local 16 45: aload 0
getfield android.widget.ActionMenuPresenter.mStrictWidthLimit:Z
ifeq 50
46: iload 13
aload 16
47: iload 12
iload 13
iload 5
iconst_0
48: invokestatic android.widget.ActionMenuView.measureChildForCells:(Landroid/view/View;IIII)I
isub
istore 13
49: goto 51
50: StackMap locals: com.android.internal.view.menu.MenuItemImpl android.view.View
StackMap stack:
aload 16
iload 5
iload 5
invokevirtual android.view.View.measure:(II)V
51: StackMap locals:
StackMap stack:
aload 16
invokevirtual android.view.View.getMeasuredWidth:()I
istore 17
start local 17 52: iload 4
iload 17
isub
istore 4
53: iload 9
ifne 55
54: iload 17
istore 9
55: StackMap locals: int
StackMap stack:
aload 15
invokevirtual com.android.internal.view.menu.MenuItemImpl.getGroupId:()I
istore 18
start local 18 56: iload 18
ifeq 58
57: aload 11
iload 18
iconst_1
invokevirtual android.util.SparseBooleanArray.put:(IZ)V
58: StackMap locals: int
StackMap stack:
aload 15
iconst_1
invokevirtual com.android.internal.view.menu.MenuItemImpl.setIsActionButton:(Z)V
end local 18 end local 17 end local 16 59: goto 110
StackMap locals:
StackMap stack:
60: aload 15
invokevirtual com.android.internal.view.menu.MenuItemImpl.requestsActionButton:()Z
ifeq 109
61: aload 15
invokevirtual com.android.internal.view.menu.MenuItemImpl.getGroupId:()I
istore 16
start local 16 62: aload 11
iload 16
invokevirtual android.util.SparseBooleanArray.get:(I)Z
istore 17
start local 17 63: iload 3
ifgt 64
iload 17
ifeq 68
StackMap locals: int int
StackMap stack:
64: iload 4
ifle 68
65: aload 0
getfield android.widget.ActionMenuPresenter.mStrictWidthLimit:Z
ifeq 67
iload 13
66: ifle 68
StackMap locals:
StackMap stack:
67: iconst_1
goto 69
StackMap locals:
StackMap stack:
68: iconst_0
StackMap locals:
StackMap stack: int
69: istore 18
start local 18 70: iload 18
ifeq 93
71: aload 0
aload 15
aconst_null
aload 6
invokevirtual android.widget.ActionMenuPresenter.getItemView:(Lcom/android/internal/view/menu/MenuItemImpl;Landroid/view/View;Landroid/view/ViewGroup;)Landroid/view/View;
astore 19
start local 19 72: aload 0
getfield android.widget.ActionMenuPresenter.mStrictWidthLimit:Z
ifeq 80
73: aload 19
74: iload 12
iload 13
iload 5
iconst_0
75: invokestatic android.widget.ActionMenuView.measureChildForCells:(Landroid/view/View;IIII)I
istore 20
start local 20 76: iload 13
iload 20
isub
istore 13
77: iload 20
ifne 81
78: iconst_0
istore 18
end local 20 79: goto 81
80: StackMap locals: int android.view.View
StackMap stack:
aload 19
iload 5
iload 5
invokevirtual android.view.View.measure:(II)V
81: StackMap locals:
StackMap stack:
aload 19
invokevirtual android.view.View.getMeasuredWidth:()I
istore 20
start local 20 82: iload 4
iload 20
isub
istore 4
83: iload 9
ifne 85
84: iload 20
istore 9
85: StackMap locals: int
StackMap stack:
aload 0
getfield android.widget.ActionMenuPresenter.mStrictWidthLimit:Z
ifeq 90
86: iload 18
iload 4
iflt 87
iconst_1
goto 88
StackMap locals:
StackMap stack: int
87: iconst_0
StackMap locals: android.widget.ActionMenuPresenter java.util.ArrayList int int int int android.view.ViewGroup int int int int android.util.SparseBooleanArray int int int com.android.internal.view.menu.MenuItemImpl int int int android.view.View int
StackMap stack: int int
88: iand
istore 18
89: goto 93
90: StackMap locals:
StackMap stack:
iload 18
iload 4
iload 9
iadd
ifle 91
iconst_1
goto 92
StackMap locals:
StackMap stack: int
91: iconst_0
StackMap locals: android.widget.ActionMenuPresenter java.util.ArrayList int int int int android.view.ViewGroup int int int int android.util.SparseBooleanArray int int int com.android.internal.view.menu.MenuItemImpl int int int android.view.View int
StackMap stack: int int
92: iand
istore 18
end local 20 end local 19 93: StackMap locals:
StackMap stack:
iload 18
ifeq 96
iload 16
ifeq 96
94: aload 11
iload 16
iconst_1
invokevirtual android.util.SparseBooleanArray.put:(IZ)V
95: goto 106
StackMap locals:
StackMap stack:
96: iload 17
ifeq 106
97: aload 11
iload 16
iconst_0
invokevirtual android.util.SparseBooleanArray.put:(IZ)V
98: iconst_0
istore 19
start local 19 99: goto 105
100: StackMap locals: int
StackMap stack:
aload 1
iload 19
invokevirtual java.util.ArrayList.get:(I)Ljava/lang/Object;
checkcast com.android.internal.view.menu.MenuItemImpl
astore 20
start local 20 101: aload 20
invokevirtual com.android.internal.view.menu.MenuItemImpl.getGroupId:()I
iload 16
if_icmpne 104
102: aload 20
invokevirtual com.android.internal.view.menu.MenuItemImpl.isActionButton:()Z
ifeq 103
iinc 3 1
103: StackMap locals: com.android.internal.view.menu.MenuItemImpl
StackMap stack:
aload 20
iconst_0
invokevirtual com.android.internal.view.menu.MenuItemImpl.setIsActionButton:(Z)V
end local 20 104: StackMap locals:
StackMap stack:
iinc 19 1
StackMap locals:
StackMap stack:
105: iload 19
iload 14
if_icmplt 100
end local 19 106: StackMap locals:
StackMap stack:
iload 18
ifeq 107
iinc 3 -1
107: StackMap locals:
StackMap stack:
aload 15
iload 18
invokevirtual com.android.internal.view.menu.MenuItemImpl.setIsActionButton:(Z)V
end local 18 end local 17 end local 16 108: goto 110
109: StackMap locals:
StackMap stack:
aload 15
iconst_0
invokevirtual com.android.internal.view.menu.MenuItemImpl.setIsActionButton:(Z)V
end local 15 110: StackMap locals:
StackMap stack:
iinc 14 1
StackMap locals:
StackMap stack:
111: iload 14
iload 2
if_icmplt 42
end local 14 112: iconst_1
ireturn
end local 13 end local 12 end local 11 end local 10 end local 9 end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 113 0 this Landroid/widget/ActionMenuPresenter;
2 4 1 visibleItems Ljava/util/ArrayList<Lcom/android/internal/view/menu/MenuItemImpl;>;
5 113 1 visibleItems Ljava/util/ArrayList<Lcom/android/internal/view/menu/MenuItemImpl;>;
3 4 2 itemsSize I
6 113 2 itemsSize I
7 113 3 maxActions I
8 113 4 widthLimit I
9 113 5 querySpec I
10 113 6 parent Landroid/view/ViewGroup;
11 113 7 requiredItems I
12 113 8 requestedItems I
13 113 9 firstActionWidth I
14 113 10 hasOverflow Z
15 28 11 i I
17 26 12 item Lcom/android/internal/view/menu/MenuItemImpl;
33 113 11 seenGroups Landroid/util/SparseBooleanArray;
35 113 12 cellSize I
36 113 13 cellsRemaining I
39 40 14 cellSizeRemaining I
41 112 14 i I
43 110 15 item Lcom/android/internal/view/menu/MenuItemImpl;
45 59 16 v Landroid/view/View;
52 59 17 measuredWidth I
56 59 18 groupId I
62 108 16 groupId I
63 108 17 inGroup Z
70 108 18 isAction Z
72 93 19 v Landroid/view/View;
76 79 20 cells I
82 93 20 measuredWidth I
99 106 19 j I
101 104 20 areYouMyGroupie Lcom/android/internal/view/menu/MenuItemImpl;
public void onCloseMenu(com.android.internal.view.menu.MenuBuilder, boolean);
descriptor: (Lcom/android/internal/view/menu/MenuBuilder;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokevirtual android.widget.ActionMenuPresenter.dismissPopupMenus:()Z
pop
1: aload 0
aload 1
iload 2
invokespecial com.android.internal.view.menu.BaseMenuPresenter.onCloseMenu:(Lcom/android/internal/view/menu/MenuBuilder;Z)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/widget/ActionMenuPresenter;
0 3 1 menu Lcom/android/internal/view/menu/MenuBuilder;
0 3 2 allMenusAreClosing Z
MethodParameters:
Name Flags
menu
allMenusAreClosing
public android.os.Parcelable onSaveInstanceState();
descriptor: ()Landroid/os/Parcelable;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=1
start local 0 0: new android.widget.ActionMenuPresenter$SavedState
dup
invokespecial android.widget.ActionMenuPresenter$SavedState.<init>:()V
astore 1
start local 1 1: aload 1
aload 0
getfield android.widget.ActionMenuPresenter.mOpenSubMenuId:I
putfield android.widget.ActionMenuPresenter$SavedState.openSubMenuId:I
2: aload 1
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Landroid/widget/ActionMenuPresenter;
1 3 1 state Landroid/widget/ActionMenuPresenter$SavedState;
public void onRestoreInstanceState(android.os.Parcelable);
descriptor: (Landroid/os/Parcelable;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=5, args_size=2
start local 0 start local 1 0: aload 1
checkcast android.widget.ActionMenuPresenter$SavedState
astore 2
start local 2 1: aload 2
getfield android.widget.ActionMenuPresenter$SavedState.openSubMenuId:I
ifle 6
2: aload 0
getfield android.widget.ActionMenuPresenter.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
aload 2
getfield android.widget.ActionMenuPresenter$SavedState.openSubMenuId:I
invokevirtual com.android.internal.view.menu.MenuBuilder.findItem:(I)Landroid/view/MenuItem;
astore 3
start local 3 3: aload 3
ifnull 6
4: aload 3
invokeinterface android.view.MenuItem.getSubMenu:()Landroid/view/SubMenu;
checkcast com.android.internal.view.menu.SubMenuBuilder
astore 4
start local 4 5: aload 0
aload 4
invokevirtual android.widget.ActionMenuPresenter.onSubMenuSelected:(Lcom/android/internal/view/menu/SubMenuBuilder;)Z
pop
end local 4 end local 3 6: StackMap locals: android.widget.ActionMenuPresenter$SavedState
StackMap stack:
return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/widget/ActionMenuPresenter;
0 7 1 state Landroid/os/Parcelable;
1 7 2 saved Landroid/widget/ActionMenuPresenter$SavedState;
3 6 3 item Landroid/view/MenuItem;
5 6 4 subMenu Lcom/android/internal/view/menu/SubMenuBuilder;
MethodParameters:
Name Flags
state
public void onSubUiVisibilityChanged(boolean);
descriptor: (Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: iload 1
ifeq 3
1: aload 0
aconst_null
invokespecial com.android.internal.view.menu.BaseMenuPresenter.onSubMenuSelected:(Lcom/android/internal/view/menu/SubMenuBuilder;)Z
pop
2: goto 5
StackMap locals:
StackMap stack:
3: aload 0
getfield android.widget.ActionMenuPresenter.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
ifnull 5
4: aload 0
getfield android.widget.ActionMenuPresenter.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
iconst_0
invokevirtual com.android.internal.view.menu.MenuBuilder.close:(Z)V
5: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Landroid/widget/ActionMenuPresenter;
0 6 1 isVisible Z
MethodParameters:
Name Flags
isVisible
public void setMenuView(android.widget.ActionMenuView);
descriptor: (Landroid/widget/ActionMenuView;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
if_acmpeq 6
1: aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
ifnull 3
2: aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
checkcast android.view.View
aload 0
getfield android.widget.ActionMenuPresenter.mAttachStateChangeListener:Landroid/view/View$OnAttachStateChangeListener;
invokevirtual android.view.View.removeOnAttachStateChangeListener:(Landroid/view/View$OnAttachStateChangeListener;)V
3: StackMap locals:
StackMap stack:
aload 0
aload 1
putfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
4: aload 1
aload 0
getfield android.widget.ActionMenuPresenter.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
invokevirtual android.widget.ActionMenuView.initialize:(Lcom/android/internal/view/menu/MenuBuilder;)V
5: aload 1
aload 0
getfield android.widget.ActionMenuPresenter.mAttachStateChangeListener:Landroid/view/View$OnAttachStateChangeListener;
invokevirtual android.widget.ActionMenuView.addOnAttachStateChangeListener:(Landroid/view/View$OnAttachStateChangeListener;)V
6: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Landroid/widget/ActionMenuPresenter;
0 7 1 menuView Landroid/widget/ActionMenuView;
MethodParameters:
Name Flags
menuView
static com.android.internal.view.menu.MenuView access$0(android.widget.ActionMenuPresenter);
descriptor: (Landroid/widget/ActionMenuPresenter;)Lcom/android/internal/view/menu/MenuView;
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
getfield android.widget.ActionMenuPresenter.mMenuView:Lcom/android/internal/view/menu/MenuView;
areturn
LocalVariableTable:
Start End Slot Name Signature
static com.android.internal.view.menu.MenuBuilder access$1(android.widget.ActionMenuPresenter);
descriptor: (Landroid/widget/ActionMenuPresenter;)Lcom/android/internal/view/menu/MenuBuilder;
flags: (0x1008) ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
getfield android.widget.ActionMenuPresenter.mMenu:Lcom/android/internal/view/menu/MenuBuilder;
areturn
LocalVariableTable:
Start End Slot Name Signature
}
SourceFile: "ActionMenuPresenter.java"
NestMembers:
android.widget.ActionMenuPresenter$1 android.widget.ActionMenuPresenter$2 android.widget.ActionMenuPresenter$3 android.widget.ActionMenuPresenter$4 android.widget.ActionMenuPresenter$5 android.widget.ActionMenuPresenter$ActionButtonSubmenu android.widget.ActionMenuPresenter$ActionMenuPopupCallback android.widget.ActionMenuPresenter$ItemAnimationInfo android.widget.ActionMenuPresenter$MenuItemLayoutInfo android.widget.ActionMenuPresenter$OpenOverflowRunnable android.widget.ActionMenuPresenter$OverflowMenuButton android.widget.ActionMenuPresenter$OverflowMenuButton$1 android.widget.ActionMenuPresenter$OverflowPopup android.widget.ActionMenuPresenter$PopupPresenterCallback android.widget.ActionMenuPresenter$SavedState android.widget.ActionMenuPresenter$SavedState$1
InnerClasses:
public abstract AnimatorListener = android.animation.Animator$AnimatorListener of android.animation.Animator
public abstract SubUiVisibilityListener = android.view.ActionProvider$SubUiVisibilityListener of android.view.ActionProvider
public MeasureSpec = android.view.View$MeasureSpec of android.view.View
public abstract OnAttachStateChangeListener = android.view.View$OnAttachStateChangeListener of android.view.View
public LayoutParams = android.view.ViewGroup$LayoutParams of android.view.ViewGroup
public abstract OnPreDrawListener = android.view.ViewTreeObserver$OnPreDrawListener of android.view.ViewTreeObserver
android.widget.ActionMenuPresenter$3
android.widget.ActionMenuPresenter$4
android.widget.ActionMenuPresenter$5
private ActionButtonSubmenu = android.widget.ActionMenuPresenter$ActionButtonSubmenu of android.widget.ActionMenuPresenter
private ActionMenuPopupCallback = android.widget.ActionMenuPresenter$ActionMenuPopupCallback of android.widget.ActionMenuPresenter
private ItemAnimationInfo = android.widget.ActionMenuPresenter$ItemAnimationInfo of android.widget.ActionMenuPresenter
private MenuItemLayoutInfo = android.widget.ActionMenuPresenter$MenuItemLayoutInfo of android.widget.ActionMenuPresenter
private OpenOverflowRunnable = android.widget.ActionMenuPresenter$OpenOverflowRunnable of android.widget.ActionMenuPresenter
private OverflowMenuButton = android.widget.ActionMenuPresenter$OverflowMenuButton of android.widget.ActionMenuPresenter
private OverflowPopup = android.widget.ActionMenuPresenter$OverflowPopup of android.widget.ActionMenuPresenter
private PopupPresenterCallback = android.widget.ActionMenuPresenter$PopupPresenterCallback of android.widget.ActionMenuPresenter
private SavedState = android.widget.ActionMenuPresenter$SavedState of android.widget.ActionMenuPresenter
public LayoutParams = android.widget.ActionMenuView$LayoutParams of android.widget.ActionMenuView
public abstract PopupCallback = com.android.internal.view.menu.ActionMenuItemView$PopupCallback of com.android.internal.view.menu.ActionMenuItemView
public abstract ItemInvoker = com.android.internal.view.menu.MenuBuilder$ItemInvoker of com.android.internal.view.menu.MenuBuilder
public abstract ItemView = com.android.internal.view.menu.MenuView$ItemView of com.android.internal.view.menu.MenuView