Loading core/java/com/android/internal/app/ActionBarImpl.java +2 −0 Original line number Diff line number Diff line Loading @@ -531,6 +531,8 @@ public class ActionBarImpl extends ActionBar { } public void onMenuModeChange(MenuBuilder menu) { invalidate(); mUpperContextView.showOverflowMenu(); } } Loading core/java/com/android/internal/view/StandaloneActionMode.java +2 −0 Original line number Diff line number Diff line Loading @@ -135,5 +135,7 @@ public class StandaloneActionMode extends ActionMode implements MenuBuilder.Call } public void onMenuModeChange(MenuBuilder menu) { invalidate(); mContextView.showOverflowMenu(); } } core/java/com/android/internal/view/menu/ActionMenuView.java +19 −4 Original line number Diff line number Diff line Loading @@ -148,14 +148,28 @@ public class ActionMenuView extends LinearLayout implements MenuBuilder.ItemInvo public boolean showOverflowMenu() { if (mOverflowButton != null) { MenuPopupHelper popup = new MenuPopupHelper(getContext(), mMenu, mOverflowButton, true); final MenuPopupHelper popup = new MenuPopupHelper(getContext(), mMenu, mOverflowButton, true); // Post this for later; we might still need a layout for the anchor to be right. post(new Runnable() { public void run() { popup.show(); } }); mOverflowPopup = new WeakReference<MenuPopupHelper>(popup); return true; } return false; } public boolean isOverflowMenuShowing() { MenuPopupHelper popup = mOverflowPopup != null ? mOverflowPopup.get() : null; if (popup != null) { return popup.isShowing(); } return false; } public boolean hideOverflowMenu() { MenuPopupHelper popup = mOverflowPopup != null ? mOverflowPopup.get() : null; if (popup != null) { Loading @@ -177,7 +191,7 @@ public class ActionMenuView extends LinearLayout implements MenuBuilder.ItemInvo final Resources res = context.getResources(); setClickable(true); setFocusable(true); // TODO setTitle() to a localized string for accessibility setContentDescription(res.getString(com.android.internal.R.string.more_item_label)); setImageDrawable(res.getDrawable(com.android.internal.R.drawable.ic_menu_more)); setVisibility(VISIBLE); setEnabled(true); Loading @@ -189,7 +203,8 @@ public class ActionMenuView extends LinearLayout implements MenuBuilder.ItemInvo return true; } showOverflowMenu(); // Change to overflow mode mMenu.getCallback().onMenuModeChange(mMenu); return true; } } Loading core/java/com/android/internal/widget/ActionBarContextView.java +21 −0 Original line number Diff line number Diff line Loading @@ -163,6 +163,27 @@ public class ActionBarContextView extends ViewGroup { mMenuView = null; } public boolean showOverflowMenu() { if (mMenuView != null) { return mMenuView.showOverflowMenu(); } return false; } public boolean hideOverflowMenu() { if (mMenuView != null) { return mMenuView.hideOverflowMenu(); } return false; } public boolean isOverflowMenuShowing() { if (mMenuView != null) { return mMenuView.isOverflowMenuShowing(); } return false; } @Override protected LayoutParams generateDefaultLayoutParams() { // Used by custom views if they don't supply layout params. Everything else Loading core/java/com/android/internal/widget/ActionBarView.java +7 −0 Original line number Diff line number Diff line Loading @@ -219,6 +219,13 @@ public class ActionBarView extends ViewGroup { return false; } public boolean isOverflowMenuShowing() { if (mMenuView != null) { return mMenuView.isOverflowMenuShowing(); } return false; } public boolean isOverflowReserved() { return mMenuView != null && mMenuView.isOverflowReserved(); } Loading Loading
core/java/com/android/internal/app/ActionBarImpl.java +2 −0 Original line number Diff line number Diff line Loading @@ -531,6 +531,8 @@ public class ActionBarImpl extends ActionBar { } public void onMenuModeChange(MenuBuilder menu) { invalidate(); mUpperContextView.showOverflowMenu(); } } Loading
core/java/com/android/internal/view/StandaloneActionMode.java +2 −0 Original line number Diff line number Diff line Loading @@ -135,5 +135,7 @@ public class StandaloneActionMode extends ActionMode implements MenuBuilder.Call } public void onMenuModeChange(MenuBuilder menu) { invalidate(); mContextView.showOverflowMenu(); } }
core/java/com/android/internal/view/menu/ActionMenuView.java +19 −4 Original line number Diff line number Diff line Loading @@ -148,14 +148,28 @@ public class ActionMenuView extends LinearLayout implements MenuBuilder.ItemInvo public boolean showOverflowMenu() { if (mOverflowButton != null) { MenuPopupHelper popup = new MenuPopupHelper(getContext(), mMenu, mOverflowButton, true); final MenuPopupHelper popup = new MenuPopupHelper(getContext(), mMenu, mOverflowButton, true); // Post this for later; we might still need a layout for the anchor to be right. post(new Runnable() { public void run() { popup.show(); } }); mOverflowPopup = new WeakReference<MenuPopupHelper>(popup); return true; } return false; } public boolean isOverflowMenuShowing() { MenuPopupHelper popup = mOverflowPopup != null ? mOverflowPopup.get() : null; if (popup != null) { return popup.isShowing(); } return false; } public boolean hideOverflowMenu() { MenuPopupHelper popup = mOverflowPopup != null ? mOverflowPopup.get() : null; if (popup != null) { Loading @@ -177,7 +191,7 @@ public class ActionMenuView extends LinearLayout implements MenuBuilder.ItemInvo final Resources res = context.getResources(); setClickable(true); setFocusable(true); // TODO setTitle() to a localized string for accessibility setContentDescription(res.getString(com.android.internal.R.string.more_item_label)); setImageDrawable(res.getDrawable(com.android.internal.R.drawable.ic_menu_more)); setVisibility(VISIBLE); setEnabled(true); Loading @@ -189,7 +203,8 @@ public class ActionMenuView extends LinearLayout implements MenuBuilder.ItemInvo return true; } showOverflowMenu(); // Change to overflow mode mMenu.getCallback().onMenuModeChange(mMenu); return true; } } Loading
core/java/com/android/internal/widget/ActionBarContextView.java +21 −0 Original line number Diff line number Diff line Loading @@ -163,6 +163,27 @@ public class ActionBarContextView extends ViewGroup { mMenuView = null; } public boolean showOverflowMenu() { if (mMenuView != null) { return mMenuView.showOverflowMenu(); } return false; } public boolean hideOverflowMenu() { if (mMenuView != null) { return mMenuView.hideOverflowMenu(); } return false; } public boolean isOverflowMenuShowing() { if (mMenuView != null) { return mMenuView.isOverflowMenuShowing(); } return false; } @Override protected LayoutParams generateDefaultLayoutParams() { // Used by custom views if they don't supply layout params. Everything else Loading
core/java/com/android/internal/widget/ActionBarView.java +7 −0 Original line number Diff line number Diff line Loading @@ -219,6 +219,13 @@ public class ActionBarView extends ViewGroup { return false; } public boolean isOverflowMenuShowing() { if (mMenuView != null) { return mMenuView.isOverflowMenuShowing(); } return false; } public boolean isOverflowReserved() { return mMenuView != null && mMenuView.isOverflowReserved(); } Loading