diff options
| author | Adam Powell <adamp@google.com> | 2014-01-10 18:32:08 +0000 |
|---|---|---|
| committer | Android Git Automerger <android-git-automerger@android.com> | 2014-01-10 18:32:08 +0000 |
| commit | fe9c354ccdf02247eae8e5f4d1cceb10484ab904 (patch) | |
| tree | 6267dbf9a33735e6f5d7aae079d73946e960a81c /core/java/android/widget/ActionMenuPresenter.java | |
| parent | 5ab77ac4a539e2117425e2dffeff7a29b6bc03d6 (diff) | |
| parent | 9c9975ac3dc63423751c4783162d4ade11d156c1 (diff) | |
am 9c9975ac: Merge "Fix a bug where OnTouchListeners in action views could be removed" into klp-modular-dev
* commit '9c9975ac3dc63423751c4783162d4ade11d156c1':
Fix a bug where OnTouchListeners in action views could be removed
Diffstat (limited to 'core/java/android/widget/ActionMenuPresenter.java')
| -rw-r--r-- | core/java/android/widget/ActionMenuPresenter.java | 36 |
1 files changed, 18 insertions, 18 deletions
diff --git a/core/java/android/widget/ActionMenuPresenter.java b/core/java/android/widget/ActionMenuPresenter.java index b75d12fbacab..01abf2ceb09b 100644 --- a/core/java/android/widget/ActionMenuPresenter.java +++ b/core/java/android/widget/ActionMenuPresenter.java @@ -168,8 +168,24 @@ public class ActionMenuPresenter extends BaseMenuPresenter } actionView.setVisibility(item.isActionViewExpanded() ? View.GONE : View.VISIBLE); + final ActionMenuView menuParent = (ActionMenuView) parent; + final ViewGroup.LayoutParams lp = actionView.getLayoutParams(); + if (!menuParent.checkLayoutParams(lp)) { + actionView.setLayoutParams(menuParent.generateLayoutParams(lp)); + } + return actionView; + } + + @Override + public void bindItemView(final MenuItemImpl item, MenuView.ItemView itemView) { + itemView.initialize(item, 0); + + final ActionMenuView menuView = (ActionMenuView) mMenuView; + final ActionMenuItemView actionItemView = (ActionMenuItemView) itemView; + actionItemView.setItemInvoker(menuView); + if (item.hasSubMenu()) { - actionView.setOnTouchListener(new ForwardingListener(actionView) { + actionItemView.setOnTouchListener(new ForwardingListener(actionItemView) { @Override public ListPopupWindow getPopup() { return mActionButtonPopup != null ? mActionButtonPopup.getPopup() : null; @@ -186,24 +202,8 @@ public class ActionMenuPresenter extends BaseMenuPresenter } }); } else { - actionView.setOnTouchListener(null); + actionItemView.setOnTouchListener(null); } - - final ActionMenuView menuParent = (ActionMenuView) parent; - final ViewGroup.LayoutParams lp = actionView.getLayoutParams(); - if (!menuParent.checkLayoutParams(lp)) { - actionView.setLayoutParams(menuParent.generateLayoutParams(lp)); - } - return actionView; - } - - @Override - public void bindItemView(MenuItemImpl item, MenuView.ItemView itemView) { - itemView.initialize(item, 0); - - final ActionMenuView menuView = (ActionMenuView) mMenuView; - ActionMenuItemView actionItemView = (ActionMenuItemView) itemView; - actionItemView.setItemInvoker(menuView); } @Override |
