History log of /frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
f77f480800a84ceb377e47cc200baf2bae4f5d9a 15-May-2012 Adam Powell <adamp@google.com> Fix ActionProviders that have submenus

Automatically create a submenu for items with ActionProviders that
provide a submenu when the item was not initially configured to have
one.

Bug 6493376

Change-Id: I27218e2ab205e87534f235eb04042b185d99d143
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
275702c2f47ed87ab642462530092d9777f32ecd 24-Sep-2011 Adam Powell <adamp@google.com> Fix bug 5355889 - Search action showing up in the menu dropdown in
spite of search actionview being expanded

Make sure that menu items with an expanded action view don't show up
in list menus presenting the rest of the menu.

Change-Id: I8c7b4e184a9d3ea2457543d0b8b36bc8e7068052
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
04dc06f52a68299c0ad70fa0a9f204d99983ba2b 23-Aug-2011 Adam Powell <adamp@google.com> Fix bug 5198868 - Showing previous hidden options menu doesn't work

Fix bad assumption in flagging action items.

Change-Id: Ic67b56195bc308e73d1564cbf1b77e41eaa4ecab
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
23f4cc0353615107cc9c19fda9cf96ddd43266e2 18-Aug-2011 Adam Powell <adamp@google.com> Fix bug 5099037 - No delete option when multiple videos are selected

Fix some bugs related to how action item slots are allocated in menus.

Fix some padding/margins in ActivityChooserView.

Change-Id: I12096b0165daca902c5bc8e24c1e8d54a35e9557
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
6b0e97c7c48cf9446c7d4bc1b37d4c37d78433b0 03-Aug-2011 Adam Powell <adamp@google.com> Fix bug 5093394 - Double SearchView!! What does it mean!?

It means we should collapse any expanded action items when we
clear out all items from a MenuBuilder.

Change-Id: I59cacd862a89b3a50c61b02c64b1ea71907af83f
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
ccdd4ee44f8cfbb45b2989cca833895fcc4c4225 28-Jul-2011 Adam Powell <adamp@google.com> Fix bug 5087980 - MenuItem#expandActionView should work from within
onCreateOptionsMenu

Initialize menu presenters early enough to respond to expanding an
action view within onCreateOptionsMenu.

Have SearchView show the IME as an async post to handle attempts to
show it while the UI is still in initial setup.

Change-Id: I77f3a94ed4397737edb5a7a15bf54993b6723f5e
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
89b09da7b3b1e69264d9ec710c66eb2f891b313e 27-Jul-2011 Adam Powell <adamp@google.com> Bug 5076788 - Optimize the building and invalidation of menus

Fix cases that weren't batching menu presenter changes correctly.

Have FragmentManager invalidate the options menu less often.

Change-Id: Ia66fcd09ada8b0a084ad6b08d4340a8fa0c8fc5d
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
038f1c80af06da55056120e121d43e3ee89ec726 21-Jul-2011 Adam Powell <adamp@google.com> Bug 5061529 - Save/restore action view state for menu items across
invalidations.

This includes expand/collapse state.

Add CollapsibleActionView interface. Views can implement this to have
special behavior when they are presented as an expanding/collapsing
action view. This lets SearchView and others take care of fiddly
behavior (focus stealing; opening the IME) automatically without apps
needing to implement this themselves.

Change-Id: Ibbd1eb5fcf3e3a862419e9344ad50f896bd05e36
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
76559a65ad9d644f10beacf8895ceb217fdd0aeb 07-Jul-2011 Svetoslav Ganov <svetoslavganov@google.com> Polish of the ActivityChooserView and ShareActionProvider.

1. Addressed the UX comments: ActivityChooserView's default selection
popup no longer shows a message, rather hightlights the default
action which now it displays. Alignemnt of the UI.

2. The ShareActionProvider shows a sub-menu if the host item goes
on the overflow menu.

3. Now the heade layout of the activity chooser view is not needed hence
dropped and the item and footer ones are merged.

Change-Id: I0b3de623e4c0a805be9ed73a8541e66b8c00e2d2
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
961dd11895ce72e59bca124ef5bea4e4c1183099 12-Jul-2011 Adam Powell <adamp@google.com> Update ActionProvider to support dynamically building submenus.

Stub out ShareActionProvider for building a submenu of activities to
choose from.

Change-Id: Ibd9ada77a455ed1a296c87b6d967073ca0f676c2
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
11ed1d6cae9214335c92ac38498a4e6c7d1c8324 12-Jul-2011 Adam Powell <adamp@google.com> Fix bugs around restoring submenu state after activity teardown/restore

Change-Id: I6cb5b3cad39b141dff84b8e0ca62f8f0a76a03b1
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
8d02deabac62c4a68a335a7b3141795466362b89 01-Jun-2011 Adam Powell <adamp@google.com> Implement bug 4500971 - Collapsable action views

Action views may now be flagged as 'collapsable'. This means that the
action menu will always show them in the collapsed state by
default. When selected, the action view will "take over" the
navigation/view side of an action bar until dismissed via the home/up
button.

This feature allows for more long-term exclusive modes akin to
ActionModes but less intrusive. The action menu itself remains
unaffected. Collapsable action views are ideal for things such as
search or categories of tool palettes.

Change-Id: Ibafce5631befbfe67c5d834c2e2617d3d7f6da7a
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
640a66eac612b850b5dabd3b93bd94f83ed2d567 29-Apr-2011 Adam Powell <adamp@google.com> Refactoring of action bar internals

Split action bar implementation details. Factor out common components
into AbsActionBar. Layout rules for the lower half of split action
bars.

Change-Id: I6bc39ba6c343055597880a7d4663dd8f30aa4999
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
a86b350977be53146d568bc0736d0f2b4aef8de5 21-Apr-2011 Adam Powell <adamp@google.com> Fix bug 4329016 - Refresh menus properly while in batch update mode

Change-Id: Ia4a4feffb0a77a99e0b241c9cf1d737577d9154d
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
696cba573e651b0e4f18a4718627c8ccecb3bda0 29-Mar-2011 Adam Powell <adamp@google.com> Refactor menu internals.

In the old world, MenuBuilder and MenuItemImpl were responsible for
generating views for any presentation of a menu. MenuBuilder needed to
know any types and resources involved, and the implied caching
semantics did not work well for menus presented within AdapterViews.

In the new world, the MenuPresenter interface takes over the
responsibility of generating views or adapters for menu
items. MenuBuilder/MenuItemImpl still provide extra metadata tracking
used by these presenters. Mutiple presenters may be active for a
single menu at a time. All of this remains internal framework
implementation details.

BaseMenuPresenter provides a simple base for presenters that treats
the host MenuView more like an AdapterView. This allows for less
rebuilding of views when items are added/removed.

Callbacks have been restructured. Calls that relate to the menu itself
are still handled by MenuBuilder.Callback, but calls related to a
specific presentation of a menu are handled by MenuPresenter.Callback
objects attached to a MenuPresenter.

Also add API to programmatically set divider options for LinearLayout
and hidden API so that ActionBarView can have finer-grained control
over divider placement.

Change-Id: I2265b86a084279822908021aec20dfbadc1bb56b
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
1821ff9022f0ea5f5c5d82a96a05f46192d50c26 25-Jan-2011 Adam Powell <adamp@google.com> Fix bug 3178934 - Make MenuBuilder notify its adapters of changes

Change-Id: I28603afbdfdd913aa06f3a07065e27aff1dc524b
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
4192e38827b27416410516d4bb0d545c36f4660e 17-Jan-2011 Adam Powell <adamp@google.com> Fix bug 3362446 - NPE in legacy menus

Change-Id: Icf9a0bec46c74ace3acbc85eea45d1d769b699d1
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
36fced9b211255e2137014e21fb3259042d8da85 17-Jan-2011 Adam Powell <adamp@google.com> Fix bug 3050138 - Action bar does not display correctly when many
action items are added

Rules for action bar overflow:

Items are considered for inclusion in the order specified within the
menu. There is a limit of a total count, optionally including the
overflow menu button itself. This is a soft limit; if an item shares a
group ID with an item previously included as an action item, the new
item will stay with its group and become an action item itself even if
it breaks the max item count limit. This is done to limit the
conceptual complexity of the items presented within an action
bar. Only a few unrelated concepts should be presented to the user in
this space, and groups are treated as a single concept.

There is also a hard limit of consumed measurable space. This limit
may be broken by a single item that exceeds the remaining space, but
no further items may be added. If an item that is part of a group
cannot fit within the remaining measured width, the entire group will
be demoted to overflow. This is done to ensure room for navigation and
other affordances in the action bar as well as reduce general UI
clutter.

The space freed by demoting a full group cannot be consumed by future
menu items. Once items begin to overflow, all future items become
overflow items as well. This is to avoid inadvertent reordering that
may break the app's intended design.

Change-Id: I878f6b15619059258c91c01f4fe838feac161d6d
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
4aed78b5056560f499e5953f659fa90a06ecc38a 15-Jan-2011 Jeff Brown <jeffbrown@google.com> Disable soft keyboard when keyboard attached.

Also hide menu shortcuts everywhere until we can get around to
redesigning the menu UI to be more consistent.

Bug: 3306545
Bug: 3330748
Change-Id: I4d4e19525cdfc93d9aae0dcaa1e6266fb552c5bc
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
be4d68e7b238b8ee879de0481e39c40d3f1683b6 09-Oct-2010 Adam Powell <adamp@google.com> Updated styles and metrics.

* Added preliminary ButtonGroup support for buttons that display as a unit.
* Fixed a bug with MenuBuilder that caused old-style icon menus to fail.
* Added support for explicitly setting line height in text.

Change-Id: I1ba65f09dd9e1bc833d247ebe72052a21e3f99f0
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
2fbf4de64f0ec5052201cea9519c44d5b1789a40 01-Oct-2010 Adam Powell <adamp@google.com> Holo theme progress and assets!

* Light and dark dialogs
* Checkboxes and radio buttons
* Toggle buttons

Warning! This is still a work in progress. This does not include final metrics.
Some assets (specifically dialogs) are currently misaligned.
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
e4679f1ed2ef044468d4a37f6e220c414620685a 28-Sep-2010 Adam Powell <adamp@google.com> Temporary hack to make context menu text visible on holo dialogs.

Real fix for this to come. MenuBuilder needs to not hardcode themes
and dialogs shouldn't either.

Change-Id: I393969acd1ef6956d7299cb2eff46708ce812d1d
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
0b2d306e7000f4c0c6ad4e00d494bb401d8a9fc2 15-Sep-2010 Adam Powell <adamp@google.com> Style new popup widgets.

Change-Id: I208ed292afd9919071778baa9ea61d7ca9e7743c
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
b3f245c30c022de8a26e016b7c9d5f13747b2868 11-Sep-2010 Adam Powell <adamp@google.com> Allow the theme to affect action bar menus

Change-Id: Ie914881de626415886289e830fb1ff166ce13159
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
4d9861e7ec8488634d316b20981464de2ab7b6fe 17-Aug-2010 Adam Powell <adamp@google.com> Bug 2923440 - ActionMode buttons show if room by default - different approach.

This enforces the new policy if menu items are created
programmatically instead of inflated from menu xml.

This reverts commit fbb72fdbe58142e0f1f7ffa17f009b0d829b33c3.

Change-Id: I102e93b80a3248634e98e0d7dc3321bf1d8b263b
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
8028dd32a4a04154050220dd0693583d5b750330 15-Jul-2010 Adam Powell <adamp@google.com> Overflow menu for action bars.

The overflow menu replaces the normal options menu panel for
activities with an action bar. It always appears as the rightmost
action button and is displayed as a dropdown menu. The menu key
summons and dismisses the overflow menu instead of the options panel
where applicable.

Change-Id: I0b4fa7e36f35ab12e2f0c1d12bec79ccab8cc4b1
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
4267534d1c42af847ed0cefd1c88c99f66b36571 10-Jul-2010 Adam Powell <adamp@google.com> Action Bar now supports submenus as popups.

Change-Id: I1691c16081b3474ed6d6e406f91f5f74a2dc8fcb
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
96675b1df3969f2d313b68f60ed9fa36805db8ce 11-Jun-2010 Adam Powell <adamp@google.com> Merging ActionBar menu with options menu.

Options menu items may now specify if they would like to appear in the
action bar. Menu items defined in xml may set the showAsAction
attribute to one of "never"(default), "ifRoom", or "always". Action
buttons are populated as follows:

* All showAsAction="always" items become action buttons, even if it
would crowd the navigation area of the action bar.

* If there is space remaining, showAsAction="ifRoom" items are added
until no more will fit comfortably.

Action button click events are now handled by the
onOptionsItemSelected method used by the standard options menu.

The construction of options menus now happens earlier in order to
provide data to the action bar. Activities with an action bar can now
expect to have onCreateOptionsMenu called when activity start-up is
complete.

Activity#invalidateOptionsMenu can be used to force a refresh of menu
items where the previous API would use ActionBar#updateActionMenu.

Change-Id: If52ddf1cf9f6926206bcdeadf42072ea2c24fab9
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
e0fc838ebc18e327a399902cacae16bdbbc09627 24-Sep-2009 Nicolas Roard <nicolas@android.com> Fix the shortcuts
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
9066cfe9886ac131c34d59ed0e2d287b0e3c0087 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
d83a98f4ce9cfa908f5c54bbd70f03eec07e7553 04-Mar-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //depot/cupcake/@135843
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
22f7dfd23490a3de2f21ff96949ba47003aac8f8 20-Jan-2009 The Android Open Source Project <initial-contribution@android.com> auto import from //branches/cupcake/...@127101
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
f013e1afd1e68af5e3b868c26a653bbfb39538f8 18-Dec-2008 The Android Open Source Project <initial-contribution@android.com> Code drop from //branches/cupcake/...@124589
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java
54b6cfa9a9e5b861a9930af873580d6dc20f773c 21-Oct-2008 The Android Open Source Project <initial-contribution@android.com> Initial Contribution
/frameworks/base/core/java/com/android/internal/view/menu/MenuBuilder.java