mirror of
https://github.com/Pinball3D/Rabbit-R1.git
synced 2025-01-09 13:43:22 +00:00
723 lines
29 KiB
Java
723 lines
29 KiB
Java
package androidx.appcompat.widget;
|
|
|
|
import android.content.Context;
|
|
import android.content.res.Configuration;
|
|
import android.content.res.Resources;
|
|
import android.graphics.drawable.Drawable;
|
|
import android.os.Parcel;
|
|
import android.os.Parcelable;
|
|
import android.util.SparseBooleanArray;
|
|
import android.view.MenuItem;
|
|
import android.view.View;
|
|
import android.view.ViewGroup;
|
|
import androidx.appcompat.R;
|
|
import androidx.appcompat.view.ActionBarPolicy;
|
|
import androidx.appcompat.view.menu.ActionMenuItemView;
|
|
import androidx.appcompat.view.menu.BaseMenuPresenter;
|
|
import androidx.appcompat.view.menu.MenuBuilder;
|
|
import androidx.appcompat.view.menu.MenuItemImpl;
|
|
import androidx.appcompat.view.menu.MenuPopupHelper;
|
|
import androidx.appcompat.view.menu.MenuPresenter;
|
|
import androidx.appcompat.view.menu.MenuView;
|
|
import androidx.appcompat.view.menu.ShowableListMenu;
|
|
import androidx.appcompat.view.menu.SubMenuBuilder;
|
|
import androidx.appcompat.widget.ActionMenuView;
|
|
import androidx.core.graphics.drawable.DrawableCompat;
|
|
import androidx.core.view.ActionProvider;
|
|
import androidx.core.view.GravityCompat;
|
|
import java.util.ArrayList;
|
|
|
|
/* JADX INFO: Access modifiers changed from: package-private */
|
|
/* loaded from: classes.dex */
|
|
public class ActionMenuPresenter extends BaseMenuPresenter implements ActionProvider.SubUiVisibilityListener {
|
|
private static final String TAG = "ActionMenuPresenter";
|
|
private final SparseBooleanArray mActionButtonGroups;
|
|
ActionButtonSubmenu mActionButtonPopup;
|
|
private int mActionItemWidthLimit;
|
|
private boolean mExpandedActionViewsExclusive;
|
|
private int mMaxItems;
|
|
private boolean mMaxItemsSet;
|
|
private int mMinCellSize;
|
|
int mOpenSubMenuId;
|
|
OverflowMenuButton mOverflowButton;
|
|
OverflowPopup mOverflowPopup;
|
|
private Drawable mPendingOverflowIcon;
|
|
private boolean mPendingOverflowIconSet;
|
|
private ActionMenuPopupCallback mPopupCallback;
|
|
final PopupPresenterCallback mPopupPresenterCallback;
|
|
OpenOverflowRunnable mPostedOpenRunnable;
|
|
private boolean mReserveOverflow;
|
|
private boolean mReserveOverflowSet;
|
|
private boolean mStrictWidthLimit;
|
|
private int mWidthLimit;
|
|
private boolean mWidthLimitSet;
|
|
|
|
public boolean isOverflowReserved() {
|
|
return this.mReserveOverflow;
|
|
}
|
|
|
|
public void setExpandedActionViewsExclusive(boolean z) {
|
|
this.mExpandedActionViewsExclusive = z;
|
|
}
|
|
|
|
public void setItemLimit(int i) {
|
|
this.mMaxItems = i;
|
|
this.mMaxItemsSet = true;
|
|
}
|
|
|
|
public void setReserveOverflow(boolean z) {
|
|
this.mReserveOverflow = z;
|
|
this.mReserveOverflowSet = true;
|
|
}
|
|
|
|
public void setWidthLimit(int i, boolean z) {
|
|
this.mWidthLimit = i;
|
|
this.mStrictWidthLimit = z;
|
|
this.mWidthLimitSet = true;
|
|
}
|
|
|
|
public ActionMenuPresenter(Context context) {
|
|
super(context, R.layout.abc_action_menu_layout, R.layout.abc_action_menu_item_layout);
|
|
this.mActionButtonGroups = new SparseBooleanArray();
|
|
this.mPopupPresenterCallback = new PopupPresenterCallback();
|
|
}
|
|
|
|
@Override // androidx.appcompat.view.menu.BaseMenuPresenter, androidx.appcompat.view.menu.MenuPresenter
|
|
public void initForMenu(Context context, MenuBuilder menuBuilder) {
|
|
super.initForMenu(context, menuBuilder);
|
|
Resources resources = context.getResources();
|
|
ActionBarPolicy actionBarPolicy = ActionBarPolicy.get(context);
|
|
if (!this.mReserveOverflowSet) {
|
|
this.mReserveOverflow = actionBarPolicy.showsOverflowMenuButton();
|
|
}
|
|
if (!this.mWidthLimitSet) {
|
|
this.mWidthLimit = actionBarPolicy.getEmbeddedMenuWidthLimit();
|
|
}
|
|
if (!this.mMaxItemsSet) {
|
|
this.mMaxItems = actionBarPolicy.getMaxActionButtons();
|
|
}
|
|
int i = this.mWidthLimit;
|
|
if (this.mReserveOverflow) {
|
|
if (this.mOverflowButton == null) {
|
|
OverflowMenuButton overflowMenuButton = new OverflowMenuButton(this.mSystemContext);
|
|
this.mOverflowButton = overflowMenuButton;
|
|
if (this.mPendingOverflowIconSet) {
|
|
overflowMenuButton.setImageDrawable(this.mPendingOverflowIcon);
|
|
this.mPendingOverflowIcon = null;
|
|
this.mPendingOverflowIconSet = false;
|
|
}
|
|
int makeMeasureSpec = View.MeasureSpec.makeMeasureSpec(0, 0);
|
|
this.mOverflowButton.measure(makeMeasureSpec, makeMeasureSpec);
|
|
}
|
|
i -= this.mOverflowButton.getMeasuredWidth();
|
|
} else {
|
|
this.mOverflowButton = null;
|
|
}
|
|
this.mActionItemWidthLimit = i;
|
|
this.mMinCellSize = (int) (resources.getDisplayMetrics().density * 56.0f);
|
|
}
|
|
|
|
public void onConfigurationChanged(Configuration configuration) {
|
|
if (!this.mMaxItemsSet) {
|
|
this.mMaxItems = ActionBarPolicy.get(this.mContext).getMaxActionButtons();
|
|
}
|
|
if (this.mMenu != null) {
|
|
this.mMenu.onItemsChanged(true);
|
|
}
|
|
}
|
|
|
|
public void setOverflowIcon(Drawable drawable) {
|
|
OverflowMenuButton overflowMenuButton = this.mOverflowButton;
|
|
if (overflowMenuButton != null) {
|
|
overflowMenuButton.setImageDrawable(drawable);
|
|
} else {
|
|
this.mPendingOverflowIconSet = true;
|
|
this.mPendingOverflowIcon = drawable;
|
|
}
|
|
}
|
|
|
|
public Drawable getOverflowIcon() {
|
|
OverflowMenuButton overflowMenuButton = this.mOverflowButton;
|
|
if (overflowMenuButton != null) {
|
|
return overflowMenuButton.getDrawable();
|
|
}
|
|
if (this.mPendingOverflowIconSet) {
|
|
return this.mPendingOverflowIcon;
|
|
}
|
|
return null;
|
|
}
|
|
|
|
@Override // androidx.appcompat.view.menu.BaseMenuPresenter, androidx.appcompat.view.menu.MenuPresenter
|
|
public MenuView getMenuView(ViewGroup viewGroup) {
|
|
MenuView menuView = this.mMenuView;
|
|
MenuView menuView2 = super.getMenuView(viewGroup);
|
|
if (menuView != menuView2) {
|
|
((ActionMenuView) menuView2).setPresenter(this);
|
|
}
|
|
return menuView2;
|
|
}
|
|
|
|
@Override // androidx.appcompat.view.menu.BaseMenuPresenter
|
|
public View getItemView(MenuItemImpl menuItemImpl, View view, ViewGroup viewGroup) {
|
|
View actionView = menuItemImpl.getActionView();
|
|
if (actionView == null || menuItemImpl.hasCollapsibleActionView()) {
|
|
actionView = super.getItemView(menuItemImpl, view, viewGroup);
|
|
}
|
|
actionView.setVisibility(menuItemImpl.isActionViewExpanded() ? 8 : 0);
|
|
ActionMenuView actionMenuView = (ActionMenuView) viewGroup;
|
|
ViewGroup.LayoutParams layoutParams = actionView.getLayoutParams();
|
|
if (!actionMenuView.checkLayoutParams(layoutParams)) {
|
|
actionView.setLayoutParams(actionMenuView.generateLayoutParams(layoutParams));
|
|
}
|
|
return actionView;
|
|
}
|
|
|
|
@Override // androidx.appcompat.view.menu.BaseMenuPresenter
|
|
public void bindItemView(MenuItemImpl menuItemImpl, MenuView.ItemView itemView) {
|
|
itemView.initialize(menuItemImpl, 0);
|
|
ActionMenuItemView actionMenuItemView = (ActionMenuItemView) itemView;
|
|
actionMenuItemView.setItemInvoker((ActionMenuView) this.mMenuView);
|
|
if (this.mPopupCallback == null) {
|
|
this.mPopupCallback = new ActionMenuPopupCallback();
|
|
}
|
|
actionMenuItemView.setPopupCallback(this.mPopupCallback);
|
|
}
|
|
|
|
@Override // androidx.appcompat.view.menu.BaseMenuPresenter
|
|
public boolean shouldIncludeItem(int i, MenuItemImpl menuItemImpl) {
|
|
return menuItemImpl.isActionButton();
|
|
}
|
|
|
|
@Override // androidx.appcompat.view.menu.BaseMenuPresenter, androidx.appcompat.view.menu.MenuPresenter
|
|
public void updateMenuView(boolean z) {
|
|
int size;
|
|
super.updateMenuView(z);
|
|
((View) this.mMenuView).requestLayout();
|
|
if (this.mMenu != null) {
|
|
ArrayList<MenuItemImpl> actionItems = this.mMenu.getActionItems();
|
|
int size2 = actionItems.size();
|
|
for (int i = 0; i < size2; i++) {
|
|
ActionProvider supportActionProvider = actionItems.get(i).getSupportActionProvider();
|
|
if (supportActionProvider != null) {
|
|
supportActionProvider.setSubUiVisibilityListener(this);
|
|
}
|
|
}
|
|
}
|
|
ArrayList<MenuItemImpl> nonActionItems = this.mMenu != null ? this.mMenu.getNonActionItems() : null;
|
|
if (this.mReserveOverflow && nonActionItems != null && ((size = nonActionItems.size()) != 1 ? size > 0 : (!nonActionItems.get(0).isActionViewExpanded()))) {
|
|
if (this.mOverflowButton == null) {
|
|
this.mOverflowButton = new OverflowMenuButton(this.mSystemContext);
|
|
}
|
|
ViewGroup viewGroup = (ViewGroup) this.mOverflowButton.getParent();
|
|
if (viewGroup != this.mMenuView) {
|
|
if (viewGroup != null) {
|
|
viewGroup.removeView(this.mOverflowButton);
|
|
}
|
|
ActionMenuView actionMenuView = (ActionMenuView) this.mMenuView;
|
|
actionMenuView.addView(this.mOverflowButton, actionMenuView.generateOverflowButtonLayoutParams());
|
|
}
|
|
} else {
|
|
OverflowMenuButton overflowMenuButton = this.mOverflowButton;
|
|
if (overflowMenuButton != null && overflowMenuButton.getParent() == this.mMenuView) {
|
|
((ViewGroup) this.mMenuView).removeView(this.mOverflowButton);
|
|
}
|
|
}
|
|
((ActionMenuView) this.mMenuView).setOverflowReserved(this.mReserveOverflow);
|
|
}
|
|
|
|
@Override // androidx.appcompat.view.menu.BaseMenuPresenter
|
|
public boolean filterLeftoverView(ViewGroup viewGroup, int i) {
|
|
if (viewGroup.getChildAt(i) == this.mOverflowButton) {
|
|
return false;
|
|
}
|
|
return super.filterLeftoverView(viewGroup, i);
|
|
}
|
|
|
|
@Override // androidx.appcompat.view.menu.BaseMenuPresenter, androidx.appcompat.view.menu.MenuPresenter
|
|
public boolean onSubMenuSelected(SubMenuBuilder subMenuBuilder) {
|
|
boolean z = false;
|
|
if (!subMenuBuilder.hasVisibleItems()) {
|
|
return false;
|
|
}
|
|
SubMenuBuilder subMenuBuilder2 = subMenuBuilder;
|
|
while (subMenuBuilder2.getParentMenu() != this.mMenu) {
|
|
subMenuBuilder2 = (SubMenuBuilder) subMenuBuilder2.getParentMenu();
|
|
}
|
|
View findViewForItem = findViewForItem(subMenuBuilder2.getItem());
|
|
if (findViewForItem == null) {
|
|
return false;
|
|
}
|
|
this.mOpenSubMenuId = subMenuBuilder.getItem().getItemId();
|
|
int size = subMenuBuilder.size();
|
|
int i = 0;
|
|
while (true) {
|
|
if (i >= size) {
|
|
break;
|
|
}
|
|
MenuItem item = subMenuBuilder.getItem(i);
|
|
if (item.isVisible() && item.getIcon() != null) {
|
|
z = true;
|
|
break;
|
|
}
|
|
i++;
|
|
}
|
|
ActionButtonSubmenu actionButtonSubmenu = new ActionButtonSubmenu(this.mContext, subMenuBuilder, findViewForItem);
|
|
this.mActionButtonPopup = actionButtonSubmenu;
|
|
actionButtonSubmenu.setForceShowIcon(z);
|
|
this.mActionButtonPopup.show();
|
|
super.onSubMenuSelected(subMenuBuilder);
|
|
return true;
|
|
}
|
|
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
private View findViewForItem(MenuItem menuItem) {
|
|
ViewGroup viewGroup = (ViewGroup) this.mMenuView;
|
|
if (viewGroup == null) {
|
|
return null;
|
|
}
|
|
int childCount = viewGroup.getChildCount();
|
|
for (int i = 0; i < childCount; i++) {
|
|
View childAt = viewGroup.getChildAt(i);
|
|
if ((childAt instanceof MenuView.ItemView) && ((MenuView.ItemView) childAt).getItemData() == menuItem) {
|
|
return childAt;
|
|
}
|
|
}
|
|
return null;
|
|
}
|
|
|
|
public boolean showOverflowMenu() {
|
|
if (!this.mReserveOverflow || isOverflowMenuShowing() || this.mMenu == null || this.mMenuView == null || this.mPostedOpenRunnable != null || this.mMenu.getNonActionItems().isEmpty()) {
|
|
return false;
|
|
}
|
|
this.mPostedOpenRunnable = new OpenOverflowRunnable(new OverflowPopup(this.mContext, this.mMenu, this.mOverflowButton, true));
|
|
((View) this.mMenuView).post(this.mPostedOpenRunnable);
|
|
return true;
|
|
}
|
|
|
|
public boolean hideOverflowMenu() {
|
|
if (this.mPostedOpenRunnable != null && this.mMenuView != null) {
|
|
((View) this.mMenuView).removeCallbacks(this.mPostedOpenRunnable);
|
|
this.mPostedOpenRunnable = null;
|
|
return true;
|
|
}
|
|
OverflowPopup overflowPopup = this.mOverflowPopup;
|
|
if (overflowPopup == null) {
|
|
return false;
|
|
}
|
|
overflowPopup.dismiss();
|
|
return true;
|
|
}
|
|
|
|
public boolean dismissPopupMenus() {
|
|
return hideSubMenus() | hideOverflowMenu();
|
|
}
|
|
|
|
public boolean hideSubMenus() {
|
|
ActionButtonSubmenu actionButtonSubmenu = this.mActionButtonPopup;
|
|
if (actionButtonSubmenu == null) {
|
|
return false;
|
|
}
|
|
actionButtonSubmenu.dismiss();
|
|
return true;
|
|
}
|
|
|
|
public boolean isOverflowMenuShowing() {
|
|
OverflowPopup overflowPopup = this.mOverflowPopup;
|
|
return overflowPopup != null && overflowPopup.isShowing();
|
|
}
|
|
|
|
public boolean isOverflowMenuShowPending() {
|
|
return this.mPostedOpenRunnable != null || isOverflowMenuShowing();
|
|
}
|
|
|
|
/* JADX WARN: Multi-variable type inference failed */
|
|
/* JADX WARN: Type inference failed for: r3v0 */
|
|
/* JADX WARN: Type inference failed for: r3v1, types: [int] */
|
|
/* JADX WARN: Type inference failed for: r3v12 */
|
|
@Override // androidx.appcompat.view.menu.BaseMenuPresenter, androidx.appcompat.view.menu.MenuPresenter
|
|
public boolean flagActionItems() {
|
|
ArrayList<MenuItemImpl> arrayList;
|
|
int i;
|
|
int i2;
|
|
int i3;
|
|
boolean z;
|
|
int i4;
|
|
ActionMenuPresenter actionMenuPresenter = this;
|
|
View view = null;
|
|
?? r3 = 0;
|
|
if (actionMenuPresenter.mMenu != null) {
|
|
arrayList = actionMenuPresenter.mMenu.getVisibleItems();
|
|
i = arrayList.size();
|
|
} else {
|
|
arrayList = null;
|
|
i = 0;
|
|
}
|
|
int i5 = actionMenuPresenter.mMaxItems;
|
|
int i6 = actionMenuPresenter.mActionItemWidthLimit;
|
|
int makeMeasureSpec = View.MeasureSpec.makeMeasureSpec(0, 0);
|
|
ViewGroup viewGroup = (ViewGroup) actionMenuPresenter.mMenuView;
|
|
boolean z2 = false;
|
|
int i7 = 0;
|
|
int i8 = 0;
|
|
for (int i9 = 0; i9 < i; i9++) {
|
|
MenuItemImpl menuItemImpl = arrayList.get(i9);
|
|
if (menuItemImpl.requiresActionButton()) {
|
|
i7++;
|
|
} else if (menuItemImpl.requestsActionButton()) {
|
|
i8++;
|
|
} else {
|
|
z2 = true;
|
|
}
|
|
if (actionMenuPresenter.mExpandedActionViewsExclusive && menuItemImpl.isActionViewExpanded()) {
|
|
i5 = 0;
|
|
}
|
|
}
|
|
if (actionMenuPresenter.mReserveOverflow && (z2 || i8 + i7 > i5)) {
|
|
i5--;
|
|
}
|
|
int i10 = i5 - i7;
|
|
SparseBooleanArray sparseBooleanArray = actionMenuPresenter.mActionButtonGroups;
|
|
sparseBooleanArray.clear();
|
|
if (actionMenuPresenter.mStrictWidthLimit) {
|
|
int i11 = actionMenuPresenter.mMinCellSize;
|
|
i3 = i6 / i11;
|
|
i2 = i11 + ((i6 % i11) / i3);
|
|
} else {
|
|
i2 = 0;
|
|
i3 = 0;
|
|
}
|
|
int i12 = 0;
|
|
int i13 = 0;
|
|
while (i12 < i) {
|
|
MenuItemImpl menuItemImpl2 = arrayList.get(i12);
|
|
if (menuItemImpl2.requiresActionButton()) {
|
|
View itemView = actionMenuPresenter.getItemView(menuItemImpl2, view, viewGroup);
|
|
if (actionMenuPresenter.mStrictWidthLimit) {
|
|
i3 -= ActionMenuView.measureChildForCells(itemView, i2, i3, makeMeasureSpec, r3);
|
|
} else {
|
|
itemView.measure(makeMeasureSpec, makeMeasureSpec);
|
|
}
|
|
int measuredWidth = itemView.getMeasuredWidth();
|
|
i6 -= measuredWidth;
|
|
if (i13 == 0) {
|
|
i13 = measuredWidth;
|
|
}
|
|
int groupId = menuItemImpl2.getGroupId();
|
|
if (groupId != 0) {
|
|
sparseBooleanArray.put(groupId, true);
|
|
}
|
|
menuItemImpl2.setIsActionButton(true);
|
|
z = r3;
|
|
i4 = i;
|
|
} else if (menuItemImpl2.requestsActionButton()) {
|
|
int groupId2 = menuItemImpl2.getGroupId();
|
|
boolean z3 = sparseBooleanArray.get(groupId2);
|
|
boolean z4 = (i10 > 0 || z3) && i6 > 0 && (!actionMenuPresenter.mStrictWidthLimit || i3 > 0);
|
|
boolean z5 = z4;
|
|
i4 = i;
|
|
if (z4) {
|
|
View itemView2 = actionMenuPresenter.getItemView(menuItemImpl2, null, viewGroup);
|
|
if (actionMenuPresenter.mStrictWidthLimit) {
|
|
int measureChildForCells = ActionMenuView.measureChildForCells(itemView2, i2, i3, makeMeasureSpec, 0);
|
|
i3 -= measureChildForCells;
|
|
if (measureChildForCells == 0) {
|
|
z5 = false;
|
|
}
|
|
} else {
|
|
itemView2.measure(makeMeasureSpec, makeMeasureSpec);
|
|
}
|
|
boolean z6 = z5;
|
|
int measuredWidth2 = itemView2.getMeasuredWidth();
|
|
i6 -= measuredWidth2;
|
|
if (i13 == 0) {
|
|
i13 = measuredWidth2;
|
|
}
|
|
z4 = z6 & (!actionMenuPresenter.mStrictWidthLimit ? i6 + i13 <= 0 : i6 < 0);
|
|
}
|
|
if (z4 && groupId2 != 0) {
|
|
sparseBooleanArray.put(groupId2, true);
|
|
} else if (z3) {
|
|
sparseBooleanArray.put(groupId2, false);
|
|
for (int i14 = 0; i14 < i12; i14++) {
|
|
MenuItemImpl menuItemImpl3 = arrayList.get(i14);
|
|
if (menuItemImpl3.getGroupId() == groupId2) {
|
|
if (menuItemImpl3.isActionButton()) {
|
|
i10++;
|
|
}
|
|
menuItemImpl3.setIsActionButton(false);
|
|
}
|
|
}
|
|
}
|
|
if (z4) {
|
|
i10--;
|
|
}
|
|
menuItemImpl2.setIsActionButton(z4);
|
|
z = false;
|
|
} else {
|
|
z = r3;
|
|
i4 = i;
|
|
menuItemImpl2.setIsActionButton(z);
|
|
}
|
|
i12++;
|
|
r3 = z;
|
|
i = i4;
|
|
view = null;
|
|
actionMenuPresenter = this;
|
|
}
|
|
return true;
|
|
}
|
|
|
|
@Override // androidx.appcompat.view.menu.BaseMenuPresenter, androidx.appcompat.view.menu.MenuPresenter
|
|
public void onCloseMenu(MenuBuilder menuBuilder, boolean z) {
|
|
dismissPopupMenus();
|
|
super.onCloseMenu(menuBuilder, z);
|
|
}
|
|
|
|
@Override // androidx.appcompat.view.menu.MenuPresenter
|
|
public Parcelable onSaveInstanceState() {
|
|
SavedState savedState = new SavedState();
|
|
savedState.openSubMenuId = this.mOpenSubMenuId;
|
|
return savedState;
|
|
}
|
|
|
|
@Override // androidx.appcompat.view.menu.MenuPresenter
|
|
public void onRestoreInstanceState(Parcelable parcelable) {
|
|
MenuItem findItem;
|
|
if (parcelable instanceof SavedState) {
|
|
SavedState savedState = (SavedState) parcelable;
|
|
if (savedState.openSubMenuId <= 0 || (findItem = this.mMenu.findItem(savedState.openSubMenuId)) == null) {
|
|
return;
|
|
}
|
|
onSubMenuSelected((SubMenuBuilder) findItem.getSubMenu());
|
|
}
|
|
}
|
|
|
|
@Override // androidx.core.view.ActionProvider.SubUiVisibilityListener
|
|
public void onSubUiVisibilityChanged(boolean z) {
|
|
if (z) {
|
|
super.onSubMenuSelected(null);
|
|
} else if (this.mMenu != null) {
|
|
this.mMenu.close(false);
|
|
}
|
|
}
|
|
|
|
public void setMenuView(ActionMenuView actionMenuView) {
|
|
this.mMenuView = actionMenuView;
|
|
actionMenuView.initialize(this.mMenu);
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: private */
|
|
/* loaded from: classes.dex */
|
|
public static class SavedState implements Parcelable {
|
|
public static final Parcelable.Creator<SavedState> CREATOR = new Parcelable.Creator<SavedState>() { // from class: androidx.appcompat.widget.ActionMenuPresenter.SavedState.1
|
|
/* JADX WARN: Can't rename method to resolve collision */
|
|
@Override // android.os.Parcelable.Creator
|
|
public SavedState createFromParcel(Parcel parcel) {
|
|
return new SavedState(parcel);
|
|
}
|
|
|
|
/* JADX WARN: Can't rename method to resolve collision */
|
|
@Override // android.os.Parcelable.Creator
|
|
public SavedState[] newArray(int i) {
|
|
return new SavedState[i];
|
|
}
|
|
};
|
|
public int openSubMenuId;
|
|
|
|
@Override // android.os.Parcelable
|
|
public int describeContents() {
|
|
return 0;
|
|
}
|
|
|
|
SavedState() {
|
|
}
|
|
|
|
SavedState(Parcel parcel) {
|
|
this.openSubMenuId = parcel.readInt();
|
|
}
|
|
|
|
@Override // android.os.Parcelable
|
|
public void writeToParcel(Parcel parcel, int i) {
|
|
parcel.writeInt(this.openSubMenuId);
|
|
}
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: private */
|
|
/* loaded from: classes.dex */
|
|
public class OverflowMenuButton extends AppCompatImageView implements ActionMenuView.ActionMenuChildView {
|
|
@Override // androidx.appcompat.widget.ActionMenuView.ActionMenuChildView
|
|
public boolean needsDividerAfter() {
|
|
return false;
|
|
}
|
|
|
|
@Override // androidx.appcompat.widget.ActionMenuView.ActionMenuChildView
|
|
public boolean needsDividerBefore() {
|
|
return false;
|
|
}
|
|
|
|
public OverflowMenuButton(Context context) {
|
|
super(context, null, R.attr.actionOverflowButtonStyle);
|
|
setClickable(true);
|
|
setFocusable(true);
|
|
setVisibility(0);
|
|
setEnabled(true);
|
|
TooltipCompat.setTooltipText(this, getContentDescription());
|
|
setOnTouchListener(new ForwardingListener(this) { // from class: androidx.appcompat.widget.ActionMenuPresenter.OverflowMenuButton.1
|
|
@Override // androidx.appcompat.widget.ForwardingListener
|
|
public ShowableListMenu getPopup() {
|
|
if (ActionMenuPresenter.this.mOverflowPopup == null) {
|
|
return null;
|
|
}
|
|
return ActionMenuPresenter.this.mOverflowPopup.getPopup();
|
|
}
|
|
|
|
@Override // androidx.appcompat.widget.ForwardingListener
|
|
public boolean onForwardingStarted() {
|
|
ActionMenuPresenter.this.showOverflowMenu();
|
|
return true;
|
|
}
|
|
|
|
@Override // androidx.appcompat.widget.ForwardingListener
|
|
public boolean onForwardingStopped() {
|
|
if (ActionMenuPresenter.this.mPostedOpenRunnable != null) {
|
|
return false;
|
|
}
|
|
ActionMenuPresenter.this.hideOverflowMenu();
|
|
return true;
|
|
}
|
|
});
|
|
}
|
|
|
|
@Override // android.view.View
|
|
public boolean performClick() {
|
|
if (super.performClick()) {
|
|
return true;
|
|
}
|
|
playSoundEffect(0);
|
|
ActionMenuPresenter.this.showOverflowMenu();
|
|
return true;
|
|
}
|
|
|
|
@Override // android.widget.ImageView
|
|
protected boolean setFrame(int i, int i2, int i3, int i4) {
|
|
boolean frame = super.setFrame(i, i2, i3, i4);
|
|
Drawable drawable = getDrawable();
|
|
Drawable background = getBackground();
|
|
if (drawable != null && background != null) {
|
|
int width = getWidth();
|
|
int height = getHeight();
|
|
int max = Math.max(width, height) / 2;
|
|
int paddingLeft = (width + (getPaddingLeft() - getPaddingRight())) / 2;
|
|
int paddingTop = (height + (getPaddingTop() - getPaddingBottom())) / 2;
|
|
DrawableCompat.setHotspotBounds(background, paddingLeft - max, paddingTop - max, paddingLeft + max, paddingTop + max);
|
|
}
|
|
return frame;
|
|
}
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: private */
|
|
/* loaded from: classes.dex */
|
|
public class OverflowPopup extends MenuPopupHelper {
|
|
public OverflowPopup(Context context, MenuBuilder menuBuilder, View view, boolean z) {
|
|
super(context, menuBuilder, view, z, R.attr.actionOverflowMenuStyle);
|
|
setGravity(GravityCompat.END);
|
|
setPresenterCallback(ActionMenuPresenter.this.mPopupPresenterCallback);
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: protected */
|
|
@Override // androidx.appcompat.view.menu.MenuPopupHelper
|
|
public void onDismiss() {
|
|
if (ActionMenuPresenter.this.mMenu != null) {
|
|
ActionMenuPresenter.this.mMenu.close();
|
|
}
|
|
ActionMenuPresenter.this.mOverflowPopup = null;
|
|
super.onDismiss();
|
|
}
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: private */
|
|
/* loaded from: classes.dex */
|
|
public class ActionButtonSubmenu extends MenuPopupHelper {
|
|
public ActionButtonSubmenu(Context context, SubMenuBuilder subMenuBuilder, View view) {
|
|
super(context, subMenuBuilder, view, false, R.attr.actionOverflowMenuStyle);
|
|
if (!((MenuItemImpl) subMenuBuilder.getItem()).isActionButton()) {
|
|
setAnchorView(ActionMenuPresenter.this.mOverflowButton == null ? (View) ActionMenuPresenter.this.mMenuView : ActionMenuPresenter.this.mOverflowButton);
|
|
}
|
|
setPresenterCallback(ActionMenuPresenter.this.mPopupPresenterCallback);
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: protected */
|
|
@Override // androidx.appcompat.view.menu.MenuPopupHelper
|
|
public void onDismiss() {
|
|
ActionMenuPresenter.this.mActionButtonPopup = null;
|
|
ActionMenuPresenter.this.mOpenSubMenuId = 0;
|
|
super.onDismiss();
|
|
}
|
|
}
|
|
|
|
/* loaded from: classes.dex */
|
|
private class PopupPresenterCallback implements MenuPresenter.Callback {
|
|
PopupPresenterCallback() {
|
|
}
|
|
|
|
@Override // androidx.appcompat.view.menu.MenuPresenter.Callback
|
|
public boolean onOpenSubMenu(MenuBuilder menuBuilder) {
|
|
if (menuBuilder == ActionMenuPresenter.this.mMenu) {
|
|
return false;
|
|
}
|
|
ActionMenuPresenter.this.mOpenSubMenuId = ((SubMenuBuilder) menuBuilder).getItem().getItemId();
|
|
MenuPresenter.Callback callback = ActionMenuPresenter.this.getCallback();
|
|
if (callback != null) {
|
|
return callback.onOpenSubMenu(menuBuilder);
|
|
}
|
|
return false;
|
|
}
|
|
|
|
@Override // androidx.appcompat.view.menu.MenuPresenter.Callback
|
|
public void onCloseMenu(MenuBuilder menuBuilder, boolean z) {
|
|
if (menuBuilder instanceof SubMenuBuilder) {
|
|
menuBuilder.getRootMenu().close(false);
|
|
}
|
|
MenuPresenter.Callback callback = ActionMenuPresenter.this.getCallback();
|
|
if (callback != null) {
|
|
callback.onCloseMenu(menuBuilder, z);
|
|
}
|
|
}
|
|
}
|
|
|
|
/* JADX INFO: Access modifiers changed from: private */
|
|
/* loaded from: classes.dex */
|
|
public class OpenOverflowRunnable implements Runnable {
|
|
private OverflowPopup mPopup;
|
|
|
|
public OpenOverflowRunnable(OverflowPopup overflowPopup) {
|
|
this.mPopup = overflowPopup;
|
|
}
|
|
|
|
@Override // java.lang.Runnable
|
|
public void run() {
|
|
if (ActionMenuPresenter.this.mMenu != null) {
|
|
ActionMenuPresenter.this.mMenu.changeMenuMode();
|
|
}
|
|
View view = (View) ActionMenuPresenter.this.mMenuView;
|
|
if (view != null && view.getWindowToken() != null && this.mPopup.tryShow()) {
|
|
ActionMenuPresenter.this.mOverflowPopup = this.mPopup;
|
|
}
|
|
ActionMenuPresenter.this.mPostedOpenRunnable = null;
|
|
}
|
|
}
|
|
|
|
/* loaded from: classes.dex */
|
|
private class ActionMenuPopupCallback extends ActionMenuItemView.PopupCallback {
|
|
ActionMenuPopupCallback() {
|
|
}
|
|
|
|
@Override // androidx.appcompat.view.menu.ActionMenuItemView.PopupCallback
|
|
public ShowableListMenu getPopup() {
|
|
if (ActionMenuPresenter.this.mActionButtonPopup != null) {
|
|
return ActionMenuPresenter.this.mActionButtonPopup.getPopup();
|
|
}
|
|
return null;
|
|
}
|
|
}
|
|
}
|