Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 498301d8 authored by Alan Viverette's avatar Alan Viverette Committed by Android (Google) Code Review
Browse files

Merge "Add drag-to-open for action bar submenus" into klp-dev

parents 30590646 fbe4a586
Loading
Loading
Loading
Loading
+22 −1
Original line number Diff line number Diff line
@@ -156,7 +156,7 @@ public class ActionMenuPresenter extends BaseMenuPresenter
    }

    @Override
    public View getItemView(MenuItemImpl item, View convertView, ViewGroup parent) {
    public View getItemView(final MenuItemImpl item, View convertView, ViewGroup parent) {
        View actionView = item.getActionView();
        if (actionView == null || item.hasCollapsibleActionView()) {
            if (!(convertView instanceof ActionMenuItemView)) {
@@ -166,6 +166,27 @@ public class ActionMenuPresenter extends BaseMenuPresenter
        }
        actionView.setVisibility(item.isActionViewExpanded() ? View.GONE : View.VISIBLE);

        if (item.hasSubMenu()) {
            actionView.setOnTouchListener(new ForwardingListener(actionView) {
                @Override
                public ListPopupWindow getPopup() {
                    return mActionButtonPopup != null ? mActionButtonPopup.getPopup() : null;
                }

                @Override
                protected boolean onForwardingStarted() {
                    return onSubMenuSelected((SubMenuBuilder) item.getSubMenu());
                }

                @Override
                protected boolean onForwardingStopped() {
                    return dismissPopupMenus();
                }
            });
        } else {
            actionView.setOnTouchListener(null);
        }

        final ActionMenuView menuParent = (ActionMenuView) parent;
        final ViewGroup.LayoutParams lp = actionView.getLayoutParams();
        if (!menuParent.checkLayoutParams(lp)) {