diff options
-rw-r--r-- | chrome/browser/views/wrench_menu.cc | 4 | ||||
-rw-r--r-- | views/controls/menu/menu_config_win.cc | 3 | ||||
-rw-r--r-- | views/controls/menu/menu_separator_win.cc | 15 |
3 files changed, 13 insertions, 9 deletions
diff --git a/chrome/browser/views/wrench_menu.cc b/chrome/browser/views/wrench_menu.cc index c191ac7..e1da4d6 100644 --- a/chrome/browser/views/wrench_menu.cc +++ b/chrome/browser/views/wrench_menu.cc @@ -88,9 +88,9 @@ class MenuButtonBorder : public views::Border { } virtual void GetInsets(gfx::Insets* insets) const { - insets->Set(MenuConfig::instance().item_no_icon_top_margin, + insets->Set(MenuConfig::instance().item_top_margin, kHorizontalPadding, - MenuConfig::instance().item_no_icon_bottom_margin, + MenuConfig::instance().item_bottom_margin, kHorizontalPadding); } diff --git a/views/controls/menu/menu_config_win.cc b/views/controls/menu/menu_config_win.cc index 6f1e8fd4a..5adf9eb 100644 --- a/views/controls/menu/menu_config_win.cc +++ b/views/controls/menu/menu_config_win.cc @@ -85,7 +85,8 @@ MenuConfig* MenuConfig::Create() { TS_TRUE, &separator_size) == S_OK) { config->separator_height = separator_size.cy; } else { - config->separator_height = GetSystemMetrics(SM_CYMENU) / 2; + // -1 makes separator centered. + config->separator_height = GetSystemMetrics(SM_CYMENU) / 2 - 1; } ReleaseDC(NULL, dc); diff --git a/views/controls/menu/menu_separator_win.cc b/views/controls/menu/menu_separator_win.cc index 78331bb..3c74192 100644 --- a/views/controls/menu/menu_separator_win.cc +++ b/views/controls/menu/menu_separator_win.cc @@ -19,8 +19,11 @@ void MenuSeparator::Paint(gfx::Canvas* canvas) { const MenuConfig& config = MenuConfig::instance(); // The gutter is rendered before the background. int start_x = 0; - int start_y = height() / 3; + int start_y = height() / 3 + 1; // +1 makes separator centered. HDC dc = canvas->BeginPlatformPaint(); + const gfx::NativeTheme* theme = gfx::NativeTheme::instance(); + // Delta is needed for non-classic to move separator up slightly. + int delta = theme->IsClassicTheme(gfx::NativeTheme::MENU) ? 0 : 1; if (config.render_gutter) { // If render_gutter is true, we're on Vista and need to render the // gutter, then indent the separator from the gutter. @@ -28,13 +31,13 @@ void MenuSeparator::Paint(gfx::Canvas* canvas) { config.gutter_to_label - config.gutter_width, 0, 0, height() }; gutter_bounds.right = gutter_bounds.left + config.gutter_width; - gfx::NativeTheme::instance()->PaintMenuGutter(dc, MENU_POPUPGUTTER, - MPI_NORMAL, &gutter_bounds); + theme->PaintMenuGutter(dc, MENU_POPUPGUTTER, MPI_NORMAL, &gutter_bounds); start_x = gutter_bounds.left + config.gutter_width; - start_y = 0; + start_y = -delta; } - RECT separator_bounds = { start_x, start_y, width(), height() }; - gfx::NativeTheme::instance()->PaintMenuSeparator( + + RECT separator_bounds = { start_x, start_y, width(), height() - delta }; + theme->PaintMenuSeparator( dc, MENU_POPUPSEPARATOR, MPI_NORMAL, &separator_bounds); canvas->EndPlatformPaint(); } |