Bug 5275928 - Don't try to open an overflow menu under invalid circumstances.
Change-Id: I62ea1e982f0d3c92cb504efbae95bce238b12f72
This commit is contained in:
@@ -300,6 +300,7 @@ public class ActionMenuPresenter extends BaseMenuPresenter
|
||||
public boolean hideOverflowMenu() {
|
||||
if (mPostedOpenRunnable != null && mMenuView != null) {
|
||||
((View) mMenuView).removeCallbacks(mPostedOpenRunnable);
|
||||
mPostedOpenRunnable = null;
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -653,10 +654,11 @@ public class ActionMenuPresenter extends BaseMenuPresenter
|
||||
|
||||
public void run() {
|
||||
mMenu.changeMenuMode();
|
||||
if (mPopup.tryShow()) {
|
||||
final View menuView = (View) mMenuView;
|
||||
if (menuView != null && menuView.getWindowToken() != null && mPopup.tryShow()) {
|
||||
mOverflowPopup = mPopup;
|
||||
mPostedOpenRunnable = null;
|
||||
}
|
||||
mPostedOpenRunnable = null;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -216,6 +216,9 @@ public class ActionBarContextView extends AbsActionBarView implements AnimatorLi
|
||||
});
|
||||
|
||||
final MenuBuilder menu = (MenuBuilder) mode.getMenu();
|
||||
if (mActionMenuPresenter != null) {
|
||||
mActionMenuPresenter.dismissPopupMenus();
|
||||
}
|
||||
mActionMenuPresenter = new ActionMenuPresenter(mContext);
|
||||
mActionMenuPresenter.setReserveOverflow(true);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user