541 lines
		
	
	
		
			19 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			541 lines
		
	
	
		
			19 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
| package androidx.appcompat.app;
 | |
| 
 | |
| import android.content.Context;
 | |
| import android.content.res.Configuration;
 | |
| import android.graphics.drawable.Drawable;
 | |
| import android.view.KeyCharacterMap;
 | |
| import android.view.KeyEvent;
 | |
| import android.view.LayoutInflater;
 | |
| import android.view.Menu;
 | |
| import android.view.MenuItem;
 | |
| import android.view.View;
 | |
| import android.view.ViewGroup;
 | |
| import android.view.Window;
 | |
| import android.widget.SpinnerAdapter;
 | |
| import androidx.appcompat.app.ActionBar;
 | |
| import androidx.appcompat.app.AppCompatDelegateImpl;
 | |
| import androidx.appcompat.view.menu.MenuBuilder;
 | |
| import androidx.appcompat.view.menu.MenuPresenter;
 | |
| import androidx.appcompat.widget.DecorToolbar;
 | |
| import androidx.appcompat.widget.Toolbar;
 | |
| import androidx.appcompat.widget.ToolbarWidgetWrapper;
 | |
| import androidx.core.util.Preconditions;
 | |
| import androidx.core.view.ViewCompat;
 | |
| import java.util.ArrayList;
 | |
| 
 | |
| /* loaded from: classes.dex */
 | |
| class ToolbarActionBar extends ActionBar {
 | |
|     final DecorToolbar mDecorToolbar;
 | |
|     private boolean mLastMenuVisibility;
 | |
|     final AppCompatDelegateImpl.ActionBarMenuCallback mMenuCallback;
 | |
|     private boolean mMenuCallbackSet;
 | |
|     private final Toolbar.OnMenuItemClickListener mMenuClicker;
 | |
|     boolean mToolbarMenuPrepared;
 | |
|     final Window.Callback mWindowCallback;
 | |
|     private ArrayList<ActionBar.OnMenuVisibilityListener> mMenuVisibilityListeners = new ArrayList<>();
 | |
|     private final Runnable mMenuInvalidator = new Runnable() { // from class: androidx.appcompat.app.ToolbarActionBar.1
 | |
|         @Override // java.lang.Runnable
 | |
|         public void run() {
 | |
|             ToolbarActionBar.this.populateOptionsMenu();
 | |
|         }
 | |
|     };
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public int getNavigationItemCount() {
 | |
|         return 0;
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public int getNavigationMode() {
 | |
|         return 0;
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public int getSelectedNavigationIndex() {
 | |
|         return -1;
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public int getTabCount() {
 | |
|         return 0;
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setDefaultDisplayHomeAsUpEnabled(boolean z) {
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setHomeButtonEnabled(boolean z) {
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setShowHideAnimationEnabled(boolean z) {
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setSplitBackgroundDrawable(Drawable drawable) {
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setStackedBackgroundDrawable(Drawable drawable) {
 | |
|     }
 | |
| 
 | |
|     ToolbarActionBar(Toolbar toolbar, CharSequence charSequence, Window.Callback callback) {
 | |
|         Toolbar.OnMenuItemClickListener onMenuItemClickListener = new Toolbar.OnMenuItemClickListener() { // from class: androidx.appcompat.app.ToolbarActionBar.2
 | |
|             @Override // androidx.appcompat.widget.Toolbar.OnMenuItemClickListener
 | |
|             public boolean onMenuItemClick(MenuItem menuItem) {
 | |
|                 return ToolbarActionBar.this.mWindowCallback.onMenuItemSelected(0, menuItem);
 | |
|             }
 | |
|         };
 | |
|         this.mMenuClicker = onMenuItemClickListener;
 | |
|         Preconditions.checkNotNull(toolbar);
 | |
|         ToolbarWidgetWrapper toolbarWidgetWrapper = new ToolbarWidgetWrapper(toolbar, false);
 | |
|         this.mDecorToolbar = toolbarWidgetWrapper;
 | |
|         this.mWindowCallback = (Window.Callback) Preconditions.checkNotNull(callback);
 | |
|         toolbarWidgetWrapper.setWindowCallback(callback);
 | |
|         toolbar.setOnMenuItemClickListener(onMenuItemClickListener);
 | |
|         toolbarWidgetWrapper.setWindowTitle(charSequence);
 | |
|         this.mMenuCallback = new ToolbarMenuCallback();
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setCustomView(View view) {
 | |
|         setCustomView(view, new ActionBar.LayoutParams(-2, -2));
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setCustomView(View view, ActionBar.LayoutParams layoutParams) {
 | |
|         if (view != null) {
 | |
|             view.setLayoutParams(layoutParams);
 | |
|         }
 | |
|         this.mDecorToolbar.setCustomView(view);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setCustomView(int i) {
 | |
|         setCustomView(LayoutInflater.from(this.mDecorToolbar.getContext()).inflate(i, this.mDecorToolbar.getViewGroup(), false));
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setIcon(int i) {
 | |
|         this.mDecorToolbar.setIcon(i);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setIcon(Drawable drawable) {
 | |
|         this.mDecorToolbar.setIcon(drawable);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setLogo(int i) {
 | |
|         this.mDecorToolbar.setLogo(i);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setLogo(Drawable drawable) {
 | |
|         this.mDecorToolbar.setLogo(drawable);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setElevation(float f) {
 | |
|         ViewCompat.setElevation(this.mDecorToolbar.getViewGroup(), f);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public float getElevation() {
 | |
|         return ViewCompat.getElevation(this.mDecorToolbar.getViewGroup());
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public Context getThemedContext() {
 | |
|         return this.mDecorToolbar.getContext();
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public boolean isTitleTruncated() {
 | |
|         return super.isTitleTruncated();
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setHomeAsUpIndicator(Drawable drawable) {
 | |
|         this.mDecorToolbar.setNavigationIcon(drawable);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setHomeAsUpIndicator(int i) {
 | |
|         this.mDecorToolbar.setNavigationIcon(i);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setHomeActionContentDescription(CharSequence charSequence) {
 | |
|         this.mDecorToolbar.setNavigationContentDescription(charSequence);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setHomeActionContentDescription(int i) {
 | |
|         this.mDecorToolbar.setNavigationContentDescription(i);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void onConfigurationChanged(Configuration configuration) {
 | |
|         super.onConfigurationChanged(configuration);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setListNavigationCallbacks(SpinnerAdapter spinnerAdapter, ActionBar.OnNavigationListener onNavigationListener) {
 | |
|         this.mDecorToolbar.setDropdownParams(spinnerAdapter, new NavItemSelectedListener(onNavigationListener));
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setSelectedNavigationItem(int i) {
 | |
|         if (this.mDecorToolbar.getNavigationMode() == 1) {
 | |
|             this.mDecorToolbar.setDropdownSelectedPosition(i);
 | |
|             return;
 | |
|         }
 | |
|         throw new IllegalStateException("setSelectedNavigationIndex not valid for current navigation mode");
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setTitle(CharSequence charSequence) {
 | |
|         this.mDecorToolbar.setTitle(charSequence);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setTitle(int i) {
 | |
|         DecorToolbar decorToolbar = this.mDecorToolbar;
 | |
|         decorToolbar.setTitle(i != 0 ? decorToolbar.getContext().getText(i) : null);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setWindowTitle(CharSequence charSequence) {
 | |
|         this.mDecorToolbar.setWindowTitle(charSequence);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public boolean requestFocus() {
 | |
|         ViewGroup viewGroup = this.mDecorToolbar.getViewGroup();
 | |
|         if (viewGroup == null || viewGroup.hasFocus()) {
 | |
|             return false;
 | |
|         }
 | |
|         viewGroup.requestFocus();
 | |
|         return true;
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setSubtitle(CharSequence charSequence) {
 | |
|         this.mDecorToolbar.setSubtitle(charSequence);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setSubtitle(int i) {
 | |
|         DecorToolbar decorToolbar = this.mDecorToolbar;
 | |
|         decorToolbar.setSubtitle(i != 0 ? decorToolbar.getContext().getText(i) : null);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setDisplayOptions(int i) {
 | |
|         setDisplayOptions(i, -1);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setDisplayOptions(int i, int i2) {
 | |
|         this.mDecorToolbar.setDisplayOptions((i & i2) | ((~i2) & this.mDecorToolbar.getDisplayOptions()));
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setDisplayUseLogoEnabled(boolean z) {
 | |
|         setDisplayOptions(z ? 1 : 0, 1);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setDisplayShowHomeEnabled(boolean z) {
 | |
|         setDisplayOptions(z ? 2 : 0, 2);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setDisplayHomeAsUpEnabled(boolean z) {
 | |
|         setDisplayOptions(z ? 4 : 0, 4);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setDisplayShowTitleEnabled(boolean z) {
 | |
|         setDisplayOptions(z ? 8 : 0, 8);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setDisplayShowCustomEnabled(boolean z) {
 | |
|         setDisplayOptions(z ? 16 : 0, 16);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setBackgroundDrawable(Drawable drawable) {
 | |
|         this.mDecorToolbar.setBackgroundDrawable(drawable);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public View getCustomView() {
 | |
|         return this.mDecorToolbar.getCustomView();
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public CharSequence getTitle() {
 | |
|         return this.mDecorToolbar.getTitle();
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public CharSequence getSubtitle() {
 | |
|         return this.mDecorToolbar.getSubtitle();
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void setNavigationMode(int i) {
 | |
|         if (i == 2) {
 | |
|             throw new IllegalArgumentException("Tabs not supported in this configuration");
 | |
|         }
 | |
|         this.mDecorToolbar.setNavigationMode(i);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public int getDisplayOptions() {
 | |
|         return this.mDecorToolbar.getDisplayOptions();
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public ActionBar.Tab newTab() {
 | |
|         throw new UnsupportedOperationException("Tabs are not supported in toolbar action bars");
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void addTab(ActionBar.Tab tab) {
 | |
|         throw new UnsupportedOperationException("Tabs are not supported in toolbar action bars");
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void addTab(ActionBar.Tab tab, boolean z) {
 | |
|         throw new UnsupportedOperationException("Tabs are not supported in toolbar action bars");
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void addTab(ActionBar.Tab tab, int i) {
 | |
|         throw new UnsupportedOperationException("Tabs are not supported in toolbar action bars");
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void addTab(ActionBar.Tab tab, int i, boolean z) {
 | |
|         throw new UnsupportedOperationException("Tabs are not supported in toolbar action bars");
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void removeTab(ActionBar.Tab tab) {
 | |
|         throw new UnsupportedOperationException("Tabs are not supported in toolbar action bars");
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void removeTabAt(int i) {
 | |
|         throw new UnsupportedOperationException("Tabs are not supported in toolbar action bars");
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void removeAllTabs() {
 | |
|         throw new UnsupportedOperationException("Tabs are not supported in toolbar action bars");
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void selectTab(ActionBar.Tab tab) {
 | |
|         throw new UnsupportedOperationException("Tabs are not supported in toolbar action bars");
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public ActionBar.Tab getSelectedTab() {
 | |
|         throw new UnsupportedOperationException("Tabs are not supported in toolbar action bars");
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public ActionBar.Tab getTabAt(int i) {
 | |
|         throw new UnsupportedOperationException("Tabs are not supported in toolbar action bars");
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public int getHeight() {
 | |
|         return this.mDecorToolbar.getHeight();
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void show() {
 | |
|         this.mDecorToolbar.setVisibility(0);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void hide() {
 | |
|         this.mDecorToolbar.setVisibility(8);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public boolean isShowing() {
 | |
|         return this.mDecorToolbar.getVisibility() == 0;
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public boolean openOptionsMenu() {
 | |
|         return this.mDecorToolbar.showOverflowMenu();
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public boolean closeOptionsMenu() {
 | |
|         return this.mDecorToolbar.hideOverflowMenu();
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public boolean invalidateOptionsMenu() {
 | |
|         this.mDecorToolbar.getViewGroup().removeCallbacks(this.mMenuInvalidator);
 | |
|         ViewCompat.postOnAnimation(this.mDecorToolbar.getViewGroup(), this.mMenuInvalidator);
 | |
|         return true;
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public boolean collapseActionView() {
 | |
|         if (!this.mDecorToolbar.hasExpandedActionView()) {
 | |
|             return false;
 | |
|         }
 | |
|         this.mDecorToolbar.collapseActionView();
 | |
|         return true;
 | |
|     }
 | |
| 
 | |
|     void populateOptionsMenu() {
 | |
|         Menu menu = getMenu();
 | |
|         MenuBuilder menuBuilder = menu instanceof MenuBuilder ? (MenuBuilder) menu : null;
 | |
|         if (menuBuilder != null) {
 | |
|             menuBuilder.stopDispatchingItemsChanged();
 | |
|         }
 | |
|         try {
 | |
|             menu.clear();
 | |
|             if (!this.mWindowCallback.onCreatePanelMenu(0, menu) || !this.mWindowCallback.onPreparePanel(0, null, menu)) {
 | |
|                 menu.clear();
 | |
|             }
 | |
|         } finally {
 | |
|             if (menuBuilder != null) {
 | |
|                 menuBuilder.startDispatchingItemsChanged();
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public boolean onMenuKeyEvent(KeyEvent keyEvent) {
 | |
|         if (keyEvent.getAction() == 1) {
 | |
|             openOptionsMenu();
 | |
|         }
 | |
|         return true;
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public boolean onKeyShortcut(int i, KeyEvent keyEvent) {
 | |
|         Menu menu = getMenu();
 | |
|         if (menu == null) {
 | |
|             return false;
 | |
|         }
 | |
|         menu.setQwertyMode(KeyCharacterMap.load(keyEvent != null ? keyEvent.getDeviceId() : -1).getKeyboardType() != 1);
 | |
|         return menu.performShortcut(i, keyEvent, 0);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     void onDestroy() {
 | |
|         this.mDecorToolbar.getViewGroup().removeCallbacks(this.mMenuInvalidator);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void addOnMenuVisibilityListener(ActionBar.OnMenuVisibilityListener onMenuVisibilityListener) {
 | |
|         this.mMenuVisibilityListeners.add(onMenuVisibilityListener);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void removeOnMenuVisibilityListener(ActionBar.OnMenuVisibilityListener onMenuVisibilityListener) {
 | |
|         this.mMenuVisibilityListeners.remove(onMenuVisibilityListener);
 | |
|     }
 | |
| 
 | |
|     @Override // androidx.appcompat.app.ActionBar
 | |
|     public void dispatchMenuVisibilityChanged(boolean z) {
 | |
|         if (z == this.mLastMenuVisibility) {
 | |
|             return;
 | |
|         }
 | |
|         this.mLastMenuVisibility = z;
 | |
|         int size = this.mMenuVisibilityListeners.size();
 | |
|         for (int i = 0; i < size; i++) {
 | |
|             this.mMenuVisibilityListeners.get(i).onMenuVisibilityChanged(z);
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     private class ToolbarMenuCallback implements AppCompatDelegateImpl.ActionBarMenuCallback {
 | |
|         ToolbarMenuCallback() {
 | |
|         }
 | |
| 
 | |
|         @Override // androidx.appcompat.app.AppCompatDelegateImpl.ActionBarMenuCallback
 | |
|         public boolean onPreparePanel(int i) {
 | |
|             if (i != 0 || ToolbarActionBar.this.mToolbarMenuPrepared) {
 | |
|                 return false;
 | |
|             }
 | |
|             ToolbarActionBar.this.mDecorToolbar.setMenuPrepared();
 | |
|             ToolbarActionBar.this.mToolbarMenuPrepared = true;
 | |
|             return false;
 | |
|         }
 | |
| 
 | |
|         @Override // androidx.appcompat.app.AppCompatDelegateImpl.ActionBarMenuCallback
 | |
|         public View onCreatePanelView(int i) {
 | |
|             if (i == 0) {
 | |
|                 return new View(ToolbarActionBar.this.mDecorToolbar.getContext());
 | |
|             }
 | |
|             return null;
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     private Menu getMenu() {
 | |
|         if (!this.mMenuCallbackSet) {
 | |
|             this.mDecorToolbar.setMenuCallbacks(new ActionMenuPresenterCallback(), new MenuBuilderCallback());
 | |
|             this.mMenuCallbackSet = true;
 | |
|         }
 | |
|         return this.mDecorToolbar.getMenu();
 | |
|     }
 | |
| 
 | |
|     private final class ActionMenuPresenterCallback implements MenuPresenter.Callback {
 | |
|         private boolean mClosingActionMenu;
 | |
| 
 | |
|         ActionMenuPresenterCallback() {
 | |
|         }
 | |
| 
 | |
|         @Override // androidx.appcompat.view.menu.MenuPresenter.Callback
 | |
|         public boolean onOpenSubMenu(MenuBuilder menuBuilder) {
 | |
|             ToolbarActionBar.this.mWindowCallback.onMenuOpened(108, menuBuilder);
 | |
|             return true;
 | |
|         }
 | |
| 
 | |
|         @Override // androidx.appcompat.view.menu.MenuPresenter.Callback
 | |
|         public void onCloseMenu(MenuBuilder menuBuilder, boolean z) {
 | |
|             if (this.mClosingActionMenu) {
 | |
|                 return;
 | |
|             }
 | |
|             this.mClosingActionMenu = true;
 | |
|             ToolbarActionBar.this.mDecorToolbar.dismissPopupMenus();
 | |
|             ToolbarActionBar.this.mWindowCallback.onPanelClosed(108, menuBuilder);
 | |
|             this.mClosingActionMenu = false;
 | |
|         }
 | |
|     }
 | |
| 
 | |
|     private final class MenuBuilderCallback implements MenuBuilder.Callback {
 | |
|         @Override // androidx.appcompat.view.menu.MenuBuilder.Callback
 | |
|         public boolean onMenuItemSelected(MenuBuilder menuBuilder, MenuItem menuItem) {
 | |
|             return false;
 | |
|         }
 | |
| 
 | |
|         MenuBuilderCallback() {
 | |
|         }
 | |
| 
 | |
|         @Override // androidx.appcompat.view.menu.MenuBuilder.Callback
 | |
|         public void onMenuModeChange(MenuBuilder menuBuilder) {
 | |
|             if (ToolbarActionBar.this.mDecorToolbar.isOverflowMenuShowing()) {
 | |
|                 ToolbarActionBar.this.mWindowCallback.onPanelClosed(108, menuBuilder);
 | |
|             } else if (ToolbarActionBar.this.mWindowCallback.onPreparePanel(0, null, menuBuilder)) {
 | |
|                 ToolbarActionBar.this.mWindowCallback.onMenuOpened(108, menuBuilder);
 | |
|             }
 | |
|         }
 | |
|     }
 | |
| }
 |