flutter/examples/api/lib/material
Greg Spencer 8c271e5cb8
Implement Material MenuBar and MenuAnchor (#112239)
This implements a MenuBar widget that can render a Material menu bar, and a MenuAnchor widget used to create a cascading menu in a region. The menus are drawn in the overlay, while the menu bar itself is in the regular widget tree. Keyboard traversal works between the two.

This implementation of the MenuBar uses MenuAnchor to create a cascading menu that contains widgets representing the menu items. These menu items can be any kind of widget, but are typically SubmenuButtons that host submenus, or MenuItemButtons that have shortcut hints (but don't actually activate the shortcuts) and don't host submenus.

Cascading menus can be created outside of a MenuBar by using a MenuAnchor. They can be either given a specific location to appear (a coordinate), or they can be located by the MenuAnchor region that wraps the control that opens them.

The developer may also create a MenuController to pass to the various menu primitives (MenuBar or MenuAnchor) to associate menus so that they can be traversed together and closed together. Creating a controller is not required.
2022-09-28 14:10:18 -07:00
..
about Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
action_chip Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
app_bar Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
autocomplete Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
banner Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
bottom_app_bar Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
bottom_navigation_bar Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
bottom_sheet Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
button_style Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
card Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
checkbox Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
checkbox_list_tile Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
chip Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
choice_chip Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
data_table Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
date_picker Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
dialog Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
divider Revert "Add support for Material 3 Divider and VerticalDivider" (#112471) 2022-09-27 15:15:59 +00:00
dropdown Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
elevated_button Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
expansion_panel Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
expansion_tile Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
filled_button Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
filter_chip Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
flexible_space_bar Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
floating_action_button Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
floating_action_button_location Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
icon_button Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
ink Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
ink_well Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
input_chip Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
input_decorator Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
list_tile Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
material_state Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
menu_anchor Implement Material MenuBar and MenuAnchor (#112239) 2022-09-28 14:10:18 -07:00
navigation_bar Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
navigation_rail Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
outlined_button Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
platform_menu_bar Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
popupmenu Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
progress_indicator Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
radio Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
radio_list_tile Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
range_slider Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
refresh_indicator Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
reorderable_list Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
scaffold Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
scrollbar Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
selectable_region Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
selection_area Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
selection_container Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
slider Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
snack_bar Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
stepper Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
switch Some miscellaneous changes found while making another PR (#111620) 2022-09-20 21:03:02 +00:00
switch_list_tile Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
tab_controller Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
tabs Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
text_button Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
text_field Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
text_form_field Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
theme Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
toggle_buttons Normalize examples (#111223) 2022-09-09 21:17:11 +00:00
tooltip Normalize examples (#111223) 2022-09-09 21:17:11 +00:00