discord-jadx/app/src/main/java/androidx/appcompat/view/menu/BaseMenuPresenter.java

171 lines
6.1 KiB
Java

package androidx.appcompat.view.menu;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import androidx.annotation.RestrictTo;
import androidx.appcompat.view.menu.MenuPresenter;
import androidx.appcompat.view.menu.MenuView;
import java.util.ArrayList;
@RestrictTo({RestrictTo.Scope.LIBRARY_GROUP_PREFIX})
public abstract class BaseMenuPresenter implements MenuPresenter {
private MenuPresenter.Callback mCallback;
public Context mContext;
private int mId;
public LayoutInflater mInflater;
private int mItemLayoutRes;
public MenuBuilder mMenu;
private int mMenuLayoutRes;
public MenuView mMenuView;
public Context mSystemContext;
public LayoutInflater mSystemInflater;
public BaseMenuPresenter(Context context, int i, int i2) {
this.mSystemContext = context;
this.mSystemInflater = LayoutInflater.from(context);
this.mMenuLayoutRes = i;
this.mItemLayoutRes = i2;
}
public void addItemView(View view, int i) {
ViewGroup viewGroup = (ViewGroup) view.getParent();
if (viewGroup != null) {
viewGroup.removeView(view);
}
((ViewGroup) this.mMenuView).addView(view, i);
}
public abstract void bindItemView(MenuItemImpl menuItemImpl, MenuView.ItemView itemView);
@Override // androidx.appcompat.view.menu.MenuPresenter
public boolean collapseItemActionView(MenuBuilder menuBuilder, MenuItemImpl menuItemImpl) {
return false;
}
public MenuView.ItemView createItemView(ViewGroup viewGroup) {
return (MenuView.ItemView) this.mSystemInflater.inflate(this.mItemLayoutRes, viewGroup, false);
}
@Override // androidx.appcompat.view.menu.MenuPresenter
public boolean expandItemActionView(MenuBuilder menuBuilder, MenuItemImpl menuItemImpl) {
return false;
}
public boolean filterLeftoverView(ViewGroup viewGroup, int i) {
viewGroup.removeViewAt(i);
return true;
}
@Override // androidx.appcompat.view.menu.MenuPresenter
public boolean flagActionItems() {
return false;
}
public MenuPresenter.Callback getCallback() {
return this.mCallback;
}
@Override // androidx.appcompat.view.menu.MenuPresenter
public int getId() {
return this.mId;
}
public View getItemView(MenuItemImpl menuItemImpl, View view, ViewGroup viewGroup) {
MenuView.ItemView createItemView = view instanceof MenuView.ItemView ? (MenuView.ItemView) view : createItemView(viewGroup);
bindItemView(menuItemImpl, createItemView);
return (View) createItemView;
}
@Override // androidx.appcompat.view.menu.MenuPresenter
public MenuView getMenuView(ViewGroup viewGroup) {
if (this.mMenuView == null) {
MenuView menuView = (MenuView) this.mSystemInflater.inflate(this.mMenuLayoutRes, viewGroup, false);
this.mMenuView = menuView;
menuView.initialize(this.mMenu);
updateMenuView(true);
}
return this.mMenuView;
}
@Override // androidx.appcompat.view.menu.MenuPresenter
public void initForMenu(Context context, MenuBuilder menuBuilder) {
this.mContext = context;
this.mInflater = LayoutInflater.from(context);
this.mMenu = menuBuilder;
}
@Override // androidx.appcompat.view.menu.MenuPresenter
public void onCloseMenu(MenuBuilder menuBuilder, boolean z2) {
MenuPresenter.Callback callback = this.mCallback;
if (callback != null) {
callback.onCloseMenu(menuBuilder, z2);
}
}
/* JADX WARN: Multi-variable type inference failed */
/* JADX WARNING: Unknown variable types count: 1 */
@Override // androidx.appcompat.view.menu.MenuPresenter
public boolean onSubMenuSelected(SubMenuBuilder subMenuBuilder) {
MenuPresenter.Callback callback = this.mCallback;
SubMenuBuilder subMenuBuilder2 = subMenuBuilder;
if (callback == null) {
return false;
}
if (subMenuBuilder == null) {
subMenuBuilder2 = this.mMenu;
}
return callback.onOpenSubMenu(subMenuBuilder2);
}
@Override // androidx.appcompat.view.menu.MenuPresenter
public void setCallback(MenuPresenter.Callback callback) {
this.mCallback = callback;
}
public void setId(int i) {
this.mId = i;
}
public boolean shouldIncludeItem(int i, MenuItemImpl menuItemImpl) {
return true;
}
@Override // androidx.appcompat.view.menu.MenuPresenter
public void updateMenuView(boolean z2) {
ViewGroup viewGroup = (ViewGroup) this.mMenuView;
if (viewGroup != null) {
MenuBuilder menuBuilder = this.mMenu;
int i = 0;
if (menuBuilder != null) {
menuBuilder.flagActionItems();
ArrayList<MenuItemImpl> visibleItems = this.mMenu.getVisibleItems();
int size = visibleItems.size();
int i2 = 0;
for (int i3 = 0; i3 < size; i3++) {
MenuItemImpl menuItemImpl = visibleItems.get(i3);
if (shouldIncludeItem(i2, menuItemImpl)) {
View childAt = viewGroup.getChildAt(i2);
MenuItemImpl itemData = childAt instanceof MenuView.ItemView ? ((MenuView.ItemView) childAt).getItemData() : null;
View itemView = getItemView(menuItemImpl, childAt, viewGroup);
if (menuItemImpl != itemData) {
itemView.setPressed(false);
itemView.jumpDrawablesToCurrentState();
}
if (itemView != childAt) {
addItemView(itemView, i2);
}
i2++;
}
}
i = i2;
}
while (i < viewGroup.getChildCount()) {
if (!filterLeftoverView(viewGroup, i)) {
i++;
}
}
}
}
}