ADD week 5
This commit is contained in:
		| @@ -0,0 +1,178 @@ | ||||
| package androidx.appcompat.view.menu; | ||||
|  | ||||
| import android.content.Context; | ||||
| import android.view.LayoutInflater; | ||||
| import android.view.View; | ||||
| import android.view.ViewGroup; | ||||
| import androidx.appcompat.view.menu.MenuPresenter; | ||||
| import androidx.appcompat.view.menu.MenuView; | ||||
| import java.util.ArrayList; | ||||
|  | ||||
| /* loaded from: classes.dex */ | ||||
| public abstract class BaseMenuPresenter implements MenuPresenter { | ||||
|     private MenuPresenter.Callback mCallback; | ||||
|     protected Context mContext; | ||||
|     private int mId; | ||||
|     protected LayoutInflater mInflater; | ||||
|     private int mItemLayoutRes; | ||||
|     protected MenuBuilder mMenu; | ||||
|     private int mMenuLayoutRes; | ||||
|     protected MenuView mMenuView; | ||||
|     protected Context mSystemContext; | ||||
|     protected LayoutInflater mSystemInflater; | ||||
|  | ||||
|     public abstract void bindItemView(MenuItemImpl menuItemImpl, MenuView.ItemView itemView); | ||||
|  | ||||
|     @Override // androidx.appcompat.view.menu.MenuPresenter | ||||
|     public boolean collapseItemActionView(MenuBuilder menuBuilder, MenuItemImpl menuItemImpl) { | ||||
|         return false; | ||||
|     } | ||||
|  | ||||
|     @Override // androidx.appcompat.view.menu.MenuPresenter | ||||
|     public boolean expandItemActionView(MenuBuilder menuBuilder, MenuItemImpl menuItemImpl) { | ||||
|         return false; | ||||
|     } | ||||
|  | ||||
|     @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; | ||||
|     } | ||||
|  | ||||
|     @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; | ||||
|     } | ||||
|  | ||||
|     public BaseMenuPresenter(Context context, int i, int i2) { | ||||
|         this.mSystemContext = context; | ||||
|         this.mSystemInflater = LayoutInflater.from(context); | ||||
|         this.mMenuLayoutRes = i; | ||||
|         this.mItemLayoutRes = i2; | ||||
|     } | ||||
|  | ||||
|     @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 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; | ||||
|     } | ||||
|  | ||||
|     /* JADX WARN: Multi-variable type inference failed */ | ||||
|     @Override // androidx.appcompat.view.menu.MenuPresenter | ||||
|     public void updateMenuView(boolean z) { | ||||
|         ViewGroup viewGroup = (ViewGroup) this.mMenuView; | ||||
|         if (viewGroup == null) { | ||||
|             return; | ||||
|         } | ||||
|         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++; | ||||
|             } | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     protected void addItemView(View view, int i) { | ||||
|         ViewGroup viewGroup = (ViewGroup) view.getParent(); | ||||
|         if (viewGroup != null) { | ||||
|             viewGroup.removeView(view); | ||||
|         } | ||||
|         ((ViewGroup) this.mMenuView).addView(view, i); | ||||
|     } | ||||
|  | ||||
|     protected boolean filterLeftoverView(ViewGroup viewGroup, int i) { | ||||
|         viewGroup.removeViewAt(i); | ||||
|         return true; | ||||
|     } | ||||
|  | ||||
|     public MenuView.ItemView createItemView(ViewGroup viewGroup) { | ||||
|         return (MenuView.ItemView) this.mSystemInflater.inflate(this.mItemLayoutRes, viewGroup, false); | ||||
|     } | ||||
|  | ||||
|     /* JADX WARN: Multi-variable type inference failed */ | ||||
|     public View getItemView(MenuItemImpl menuItemImpl, View view, ViewGroup viewGroup) { | ||||
|         MenuView.ItemView itemView; | ||||
|         if (view instanceof MenuView.ItemView) { | ||||
|             itemView = (MenuView.ItemView) view; | ||||
|         } else { | ||||
|             itemView = createItemView(viewGroup); | ||||
|         } | ||||
|         bindItemView(menuItemImpl, itemView); | ||||
|         return (View) itemView; | ||||
|     } | ||||
|  | ||||
|     @Override // androidx.appcompat.view.menu.MenuPresenter | ||||
|     public void onCloseMenu(MenuBuilder menuBuilder, boolean z) { | ||||
|         MenuPresenter.Callback callback = this.mCallback; | ||||
|         if (callback != null) { | ||||
|             callback.onCloseMenu(menuBuilder, z); | ||||
|         } | ||||
|     } | ||||
|  | ||||
|     /* JADX WARN: Multi-variable type inference failed */ | ||||
|     /* JADX WARN: Type inference failed for: r2v4, types: [androidx.appcompat.view.menu.MenuBuilder] */ | ||||
|     @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); | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user