public SupportMenuItem setSupportActionProvider(ActionProvider actionProvider) { if (this.mActionProvider != null) { this.mActionProvider.reset(); } this.mActionView = null; this.mActionProvider = actionProvider; this.mMenu.onItemsChanged(true); if (this.mActionProvider != null) { this.mActionProvider.setVisibilityListener(new VisibilityListener() { public void onActionProviderVisibilityChanged(boolean isVisible) { MenuItemImpl.this.mMenu.onItemVisibleChanged(MenuItemImpl.this); } }); } return this; }
@Override public SupportMenuItem setSupportActionProvider(ActionProvider actionProvider) { if (mActionProvider == actionProvider) { return this; } mActionView = null; if (mActionProvider != null) { mActionProvider.setVisibilityListener(null); } mActionProvider = actionProvider; mMenu.onItemsChanged(true); // Measurement can be changed if (actionProvider != null) { actionProvider.setVisibilityListener(new ActionProvider.VisibilityListener() { @Override public void onActionProviderVisibilityChanged(boolean isVisible) { mMenu.onItemVisibleChanged(MenuItemImpl.this); } }); } return this; }
public void readItem(AttributeSet attrs) { TypedArray a = SupportMenuInflater.this.mContext.obtainStyledAttributes(attrs, R.styleable.MenuItem); this.itemId = a.getResourceId(R.styleable.MenuItem_android_id, 0); this.itemCategoryOrder = (SupportMenu.CATEGORY_MASK & a.getInt(R.styleable.MenuItem_android_menuCategory, this.groupCategory)) | (65535 & a.getInt(R.styleable.MenuItem_android_orderInCategory, this.groupOrder)); this.itemTitle = a.getText(R.styleable.MenuItem_android_title); this.itemTitleCondensed = a.getText(R.styleable.MenuItem_android_titleCondensed); this.itemIconResId = a.getResourceId(R.styleable.MenuItem_android_icon, 0); this.itemAlphabeticShortcut = getShortcut(a.getString(R.styleable.MenuItem_android_alphabeticShortcut)); this.itemNumericShortcut = getShortcut(a.getString(R.styleable.MenuItem_android_numericShortcut)); if (a.hasValue(R.styleable.MenuItem_android_checkable)) { int i; if (a.getBoolean(R.styleable.MenuItem_android_checkable, false)) { i = 1; } else { i = 0; } this.itemCheckable = i; } else { this.itemCheckable = this.groupCheckable; } this.itemChecked = a.getBoolean(R.styleable.MenuItem_android_checked, false); this.itemVisible = a.getBoolean(R.styleable.MenuItem_android_visible, this.groupVisible); this.itemEnabled = a.getBoolean(R.styleable.MenuItem_android_enabled, this.groupEnabled); this.itemShowAsAction = a.getInt(R.styleable.MenuItem_showAsAction, -1); this.itemListenerMethodName = a.getString(R.styleable.MenuItem_android_onClick); this.itemActionViewLayout = a.getResourceId(R.styleable.MenuItem_actionLayout, 0); this.itemActionViewClassName = a.getString(R.styleable.MenuItem_actionViewClass); this.itemActionProviderClassName = a.getString(R.styleable.MenuItem_actionProviderClass); boolean hasActionProvider = this.itemActionProviderClassName != null; if (hasActionProvider && this.itemActionViewLayout == 0 && this.itemActionViewClassName == null) { this.itemActionProvider = (ActionProvider) newInstance(this.itemActionProviderClassName, SupportMenuInflater.ACTION_PROVIDER_CONSTRUCTOR_SIGNATURE, SupportMenuInflater.this.mActionProviderConstructorArguments); } else { if (hasActionProvider) { Log.w(SupportMenuInflater.LOG_TAG, "Ignoring attribute 'actionProviderClass'. Action view already specified."); } this.itemActionProvider = null; } a.recycle(); this.itemAdded = false; }
public android.view.ActionProvider getActionProvider() { ActionProvider provider = ((SupportMenuItem) this.mWrappedObject).getSupportActionProvider(); if (provider instanceof ActionProviderWrapper) { return ((ActionProviderWrapper) provider).mInner; } return null; }
public void setVisibilityListener(ActionProvider.VisibilityListener listener) { VisibilityListener visibilityListener; this.mListener = listener; android.view.ActionProvider actionProvider = this.mInner; if (listener == null) { visibilityListener = null; } actionProvider.setVisibilityListener(visibilityListener); }
@Override public void onActionClick(ActionProvider actionProvider) { if (mIsEditTextShow) { mIsEditTextShow = false; closeEditTextAnimation(); } else { mIsEditTextShow = true; openEditTextAnimation(); mLayoutTitle.setVisibility(View.VISIBLE); } }
public ActionProvider getActionProvider() { if (this.mActionProvider == null) { this.mActionProvider = new ActionProvider(getContext()) { public final View onCreateActionView() { return PlaySearchToolbar.this.mActionView; } }; } return this.mActionProvider; }
public SupportMenuItem setSupportActionProvider(ActionProvider actionprovider) { if (mActionProvider != null) { mActionProvider.reset(); } mActionView = null; mActionProvider = actionprovider; mMenu.onItemsChanged(true); if (mActionProvider != null) { mActionProvider.setVisibilityListener(new android.support.v4.view.ActionProvider.VisibilityListener() { final MenuItemImpl this$0; public void onActionProviderVisibilityChanged(boolean flag) { mMenu.onItemVisibleChanged(MenuItemImpl.this); } { this$0 = MenuItemImpl.this; super(); } }); } return this; }
@Override public MenuItem setActionProvider(android.view.ActionProvider provider) { mWrappedObject.setActionProvider(provider); if (provider != null && mEmulateProviderVisibilityOverride) { checkActionProviderOverrideVisibility(); } return this; }
/** * @return true if the ActionProvider has overriden the visibility */ final boolean checkActionProviderOverrideVisibility() { if (mLastRequestVisible) { ActionProvider provider = getSupportActionProvider(); if (provider != null && provider.overridesItemVisibility() && !provider.isVisible()) { wrappedSetVisible(false); return true; } } return false; }
public ActionProviderWrapper(ActionProvider inner) { super(inner.getContext()); mInner = inner; if (mEmulateProviderVisibilityOverride) { mInner.setVisibilityListener(new ActionProvider.VisibilityListener() { @Override public void onActionProviderVisibilityChanged(boolean isVisible) { if (mInner.overridesItemVisibility() && mLastRequestVisible) { wrappedSetVisible(isVisible); } } }); } }
public boolean performItemAction(MenuItem item, int flags) { MenuItemImpl itemImpl = (MenuItemImpl) item; if (itemImpl == null || !itemImpl.isEnabled()) { return false; } boolean invoked = itemImpl.invoke(); final ActionProvider provider = itemImpl.getSupportActionProvider(); final boolean providerHasSubMenu = provider != null && provider.hasSubMenu(); if (itemImpl.hasCollapsibleActionView()) { invoked |= itemImpl.expandActionView(); if (invoked) { close(true); } } else if (itemImpl.hasSubMenu() || providerHasSubMenu) { close(false); if (!itemImpl.hasSubMenu()) { itemImpl.setSubMenu(new SubMenuBuilder(getContext(), this, itemImpl)); } final SubMenuBuilder subMenu = (SubMenuBuilder) itemImpl.getSubMenu(); if (providerHasSubMenu) { provider.onPrepareSubMenu(subMenu); } invoked |= dispatchSubMenuSelected(subMenu); if (!invoked) { close(true); } } else { if ((flags & FLAG_PERFORM_NO_CLOSE) == 0) { close(true); } } return invoked; }
public ActionProviderWrapper(Context context, android.view.ActionProvider inner) { super(context); this.mInner = inner; }
public MenuItem setActionProvider(android.view.ActionProvider provider) { ((SupportMenuItem) this.mWrappedObject).setSupportActionProvider(provider != null ? createActionProviderWrapper(provider) : null); return this; }
ActionProviderWrapper createActionProviderWrapper(android.view.ActionProvider provider) { return new ActionProviderWrapper(this.mContext, provider); }
public boolean performItemAction(MenuItem item, MenuPresenter preferredPresenter, int flags) { MenuItemImpl itemImpl = (MenuItemImpl) item; if (itemImpl == null || !itemImpl.isEnabled()) { return false; } boolean providerHasSubMenu; boolean invoked = itemImpl.invoke(); ActionProvider provider = itemImpl.getSupportActionProvider(); if (provider == null || !provider.hasSubMenu()) { providerHasSubMenu = false; } else { providerHasSubMenu = true; } if (itemImpl.hasCollapsibleActionView()) { invoked |= itemImpl.expandActionView(); if (!invoked) { return invoked; } close(true); return invoked; } else if (itemImpl.hasSubMenu() || providerHasSubMenu) { close(false); if (!itemImpl.hasSubMenu()) { itemImpl.setSubMenu(new SubMenuBuilder(getContext(), this, itemImpl)); } SubMenuBuilder subMenu = (SubMenuBuilder) itemImpl.getSubMenu(); if (providerHasSubMenu) { provider.onPrepareSubMenu(subMenu); } invoked |= dispatchSubMenuSelected(subMenu, preferredPresenter); if (invoked) { return invoked; } close(true); return invoked; } else if ((flags & 1) != 0) { return invoked; } else { close(true); return invoked; } }
public ActionProviderWrapperJB(Context context, android.view.ActionProvider inner) { super(context, inner); }
ActionProviderWrapper createActionProviderWrapper(android.view.ActionProvider provider) { return new ActionProviderWrapperJB(this.mContext, provider); }
public MenuItem setActionProvider(android.view.ActionProvider actionProvider) { throw new UnsupportedOperationException("This is not supported, use MenuItemCompat.setActionProvider()"); }
public android.view.ActionProvider getActionProvider() { throw new UnsupportedOperationException("This is not supported, use MenuItemCompat.getActionProvider()"); }
public ActionProvider getSupportActionProvider() { return this.mActionProvider; }
public void setProvider(ActionProvider provider) { this.mProvider = provider; }
public void updateMenuView(boolean cleared) { int count; ViewGroup menuViewParent = (ViewGroup) ((View) this.mMenuView).getParent(); if (menuViewParent != null) { ActionBarTransition.beginDelayedTransition(menuViewParent); } super.updateMenuView(cleared); ((View) this.mMenuView).requestLayout(); if (this.mMenu != null) { ArrayList<MenuItemImpl> actionItems = this.mMenu.getActionItems(); count = actionItems.size(); for (int i = 0; i < count; i++) { ActionProvider provider = ((MenuItemImpl) actionItems.get(i)).getSupportActionProvider(); if (provider != null) { provider.setSubUiVisibilityListener(this); } } } ArrayList<MenuItemImpl> nonActionItems = this.mMenu != null ? this.mMenu.getNonActionItems() : null; boolean hasOverflow = false; if (this.mReserveOverflow && nonActionItems != null) { count = nonActionItems.size(); hasOverflow = count == 1 ? !((MenuItemImpl) nonActionItems.get(0)).isActionViewExpanded() : count > 0; } if (hasOverflow) { if (this.mOverflowButton == null) { this.mOverflowButton = new OverflowMenuButton(this.mSystemContext); } ViewGroup parent = (ViewGroup) this.mOverflowButton.getParent(); if (parent != this.mMenuView) { if (parent != null) { parent.removeView(this.mOverflowButton); } ActionMenuView menuView = this.mMenuView; menuView.addView(this.mOverflowButton, menuView.generateOverflowButtonLayoutParams()); } } else if (this.mOverflowButton != null && this.mOverflowButton.getParent() == this.mMenuView) { ((ViewGroup) this.mMenuView).removeView(this.mOverflowButton); } ((ActionMenuView) this.mMenuView).setOverflowReserved(this.mReserveOverflow); }
public final void setProvider(ActionProvider paramActionProvider) { this.mProvider = paramActionProvider; }
public final void updateMenuView(boolean paramBoolean) { ((View)this.mMenuView).getParent(); super.updateMenuView(paramBoolean); ((View)this.mMenuView).requestLayout(); if (this.mMenu != null) { MenuBuilder localMenuBuilder = this.mMenu; localMenuBuilder.flagActionItems(); ArrayList localArrayList2 = localMenuBuilder.mActionItems; int k = localArrayList2.size(); for (int m = 0; m < k; m++) { ActionProvider localActionProvider = ((MenuItemImpl)localArrayList2.get(m)).mActionProvider; if (localActionProvider != null) { localActionProvider.mSubUiVisibilityListener = this; } } } ArrayList localArrayList1; int i; int j; if (this.mMenu != null) { localArrayList1 = this.mMenu.getNonActionItems(); boolean bool = this.mReserveOverflow; i = 0; if (bool) { i = 0; if (localArrayList1 != null) { j = localArrayList1.size(); if (j != 1) { break label271; } if (((MenuItemImpl)localArrayList1.get(0)).isActionViewExpanded()) { break label265; } i = 1; } } label165: if (i == 0) { break label288; } if (this.mOverflowButton == null) { this.mOverflowButton = new OverflowMenuButton(this.mSystemContext); } ViewGroup localViewGroup = (ViewGroup)this.mOverflowButton.getParent(); if (localViewGroup != this.mMenuView) { if (localViewGroup != null) { localViewGroup.removeView(this.mOverflowButton); } ((ActionMenuView)this.mMenuView).addView(this.mOverflowButton, ActionMenuView.generateOverflowButtonLayoutParams()); } } for (;;) { ((ActionMenuView)this.mMenuView).setOverflowReserved(this.mReserveOverflow); return; localArrayList1 = null; break; label265: i = 0; break label165; label271: if (j > 0) {} for (i = 1;; i = 0) { break; } label288: if ((this.mOverflowButton != null) && (this.mOverflowButton.getParent() == this.mMenuView)) { ((ViewGroup)this.mMenuView).removeView(this.mOverflowButton); } } }
public void readItem(AttributeSet attributeset) { attributeset = SupportMenuInflater.access$100(SupportMenuInflater.this).obtainStyledAttributes(attributeset, android.support.v7.appcompat.ate.this._fld0); itemId = attributeset.getResourceId(android.support.v7.appcompat.d, 0); itemCategoryOrder = 0xffff0000 & attributeset.getInt(android.support.v7.appcompat.enuCategory, groupCategory) | 0xffff & attributeset.getInt(android.support.v7.appcompat.rderInCategory, groupOrder); itemTitle = attributeset.getText(android.support.v7.appcompat.itle); itemTitleCondensed = attributeset.getText(android.support.v7.appcompat.itleCondensed); itemIconResId = attributeset.getResourceId(android.support.v7.appcompat.con, 0); itemAlphabeticShortcut = getShortcut(attributeset.getString(android.support.v7.appcompat.lphabeticShortcut)); itemNumericShortcut = getShortcut(attributeset.getString(android.support.v7.appcompat.umericShortcut)); int i; if (attributeset.hasValue(android.support.v7.appcompat.heckable)) { if (attributeset.getBoolean(android.support.v7.appcompat.heckable, false)) { i = 1; } else { i = 0; } itemCheckable = i; } else { itemCheckable = groupCheckable; } itemChecked = attributeset.getBoolean(android.support.v7.appcompat.hecked, false); itemVisible = attributeset.getBoolean(android.support.v7.appcompat.isible, groupVisible); itemEnabled = attributeset.getBoolean(android.support.v7.appcompat.nabled, groupEnabled); itemShowAsAction = attributeset.getInt(android.support.v7.appcompat.ion, -1); itemListenerMethodName = attributeset.getString(android.support.v7.appcompat.nClick); itemActionViewLayout = attributeset.getResourceId(android.support.v7.appcompat.out, 0); itemActionViewClassName = attributeset.getString(android.support.v7.appcompat.wClass); itemActionProviderClassName = attributeset.getString(android.support.v7.appcompat.viderClass); if (itemActionProviderClassName != null) { i = 1; } else { i = 0; } if (i != 0 && itemActionViewLayout == 0 && itemActionViewClassName == null) { itemActionProvider = (ActionProvider)newInstance(itemActionProviderClassName, SupportMenuInflater.access$200(), SupportMenuInflater.access$300(SupportMenuInflater.this)); } else { if (i != 0) { Log.w("SupportMenuInflater", "Ignoring attribute 'actionProviderClass'. Action view already specified."); } itemActionProvider = null; } attributeset.recycle(); itemAdded = false; }
public void readItem(AttributeSet attributeset) { attributeset = mContext.obtainStyledAttributes(attributeset, android.support.v7.appcompat.R.styleable.MenuItem); itemId = attributeset.getResourceId(android.support.v7.appcompat.R.styleable.MenuItem_android_id, 0); itemCategoryOrder = 0xffff0000 & attributeset.getInt(android.support.v7.appcompat.R.styleable.MenuItem_android_menuCategory, groupCategory) | 0xffff & attributeset.getInt(android.support.v7.appcompat.R.styleable.MenuItem_android_orderInCategory, groupOrder); itemTitle = attributeset.getText(android.support.v7.appcompat.R.styleable.MenuItem_android_title); itemTitleCondensed = attributeset.getText(android.support.v7.appcompat.R.styleable.MenuItem_android_titleCondensed); itemIconResId = attributeset.getResourceId(android.support.v7.appcompat.R.styleable.MenuItem_android_icon, 0); itemAlphabeticShortcut = getShortcut(attributeset.getString(android.support.v7.appcompat.R.styleable.MenuItem_android_alphabeticShortcut)); itemNumericShortcut = getShortcut(attributeset.getString(android.support.v7.appcompat.R.styleable.MenuItem_android_numericShortcut)); int i; if (attributeset.hasValue(android.support.v7.appcompat.R.styleable.MenuItem_android_checkable)) { if (attributeset.getBoolean(android.support.v7.appcompat.R.styleable.MenuItem_android_checkable, false)) { i = 1; } else { i = 0; } itemCheckable = i; } else { itemCheckable = groupCheckable; } itemChecked = attributeset.getBoolean(android.support.v7.appcompat.R.styleable.MenuItem_android_checked, false); itemVisible = attributeset.getBoolean(android.support.v7.appcompat.R.styleable.MenuItem_android_visible, groupVisible); itemEnabled = attributeset.getBoolean(android.support.v7.appcompat.R.styleable.MenuItem_android_enabled, groupEnabled); itemShowAsAction = attributeset.getInt(android.support.v7.appcompat.R.styleable.MenuItem_showAsAction, -1); itemListenerMethodName = attributeset.getString(android.support.v7.appcompat.R.styleable.MenuItem_android_onClick); itemActionViewLayout = attributeset.getResourceId(android.support.v7.appcompat.R.styleable.MenuItem_actionLayout, 0); itemActionViewClassName = attributeset.getString(android.support.v7.appcompat.R.styleable.MenuItem_actionViewClass); itemActionProviderClassName = attributeset.getString(android.support.v7.appcompat.R.styleable.MenuItem_actionProviderClass); if (itemActionProviderClassName != null) { i = 1; } else { i = 0; } if (i != 0 && itemActionViewLayout == 0 && itemActionViewClassName == null) { itemActionProvider = (ActionProvider)newInstance(itemActionProviderClassName, SupportMenuInflater.ACTION_PROVIDER_CONSTRUCTOR_SIGNATURE, mActionProviderConstructorArguments); } else { if (i != 0) { Log.w("SupportMenuInflater", "Ignoring attribute 'actionProviderClass'. Action view already specified."); } itemActionProvider = null; } attributeset.recycle(); itemAdded = false; }
public ActionProvider getSupportActionProvider() { return mActionProvider; }
public MenuItem setActionProvider(android.view.ActionProvider actionprovider) { throw new UnsupportedOperationException("This is not supported, use MenuItemCompat.setActionProvider()"); }