diff options
-rw-r--r-- | ui/views/controls/menu/menu_config.cc | 4 | ||||
-rw-r--r-- | ui/views/controls/menu/menu_item_view.cc | 9 |
2 files changed, 10 insertions, 3 deletions
diff --git a/ui/views/controls/menu/menu_config.cc b/ui/views/controls/menu/menu_config.cc index 01e4546..4311ac1 100644 --- a/ui/views/controls/menu/menu_config.cc +++ b/ui/views/controls/menu/menu_config.cc @@ -61,8 +61,8 @@ MenuConfig::~MenuConfig() {} void MenuConfig::AdjustForCommonTheme() { render_gutter = false; - item_top_margin = 5; - item_bottom_margin = 5; + item_top_margin = 7; + item_bottom_margin = 6; item_no_icon_top_margin = 7; item_no_icon_bottom_margin = 7; separator_height = 15; diff --git a/ui/views/controls/menu/menu_item_view.cc b/ui/views/controls/menu/menu_item_view.cc index dc49ea9..8dbef92 100644 --- a/ui/views/controls/menu/menu_item_view.cc +++ b/ui/views/controls/menu/menu_item_view.cc @@ -941,7 +941,14 @@ MenuItemView::MenuItemDimensions MenuItemView::GetPreferredDimensions() { MenuItemDimensions dimensions; // Get the container height. dimensions.children_width = child_size.width(); - dimensions.height = child_size.height() + GetBottomMargin() + GetTopMargin(); + dimensions.height = child_size.height(); + // Adjust item content height if menu has both items with and without icons. + // This way all menu items will have the same height. + if (!icon_view_ && GetRootMenuItem()->has_icons()) { + dimensions.height = std::max(dimensions.height, + GetMenuConfig().check_height); + } + dimensions.height += GetBottomMargin() + GetTopMargin(); // In case of a container, only the container size needs to be filled. if (IsContainer()) |