Chromium Code Reviews| Index: ui/native_theme/native_theme_aura.cc |
| diff --git a/ui/native_theme/native_theme_aura.cc b/ui/native_theme/native_theme_aura.cc |
| index 6382593f3e63d8752143d4a6c46efb3c3d263115..fc8cfb50c5e0cdb3e257f659ca1e12dc9193806d 100644 |
| --- a/ui/native_theme/native_theme_aura.cc |
| +++ b/ui/native_theme/native_theme_aura.cc |
| @@ -9,10 +9,13 @@ |
| #include "ui/base/layout.h" |
| #include "ui/base/resource/resource_bundle.h" |
| #include "ui/gfx/image/image_skia.h" |
| +#include "ui/gfx/path.h" |
| #include "ui/gfx/rect.h" |
| #include "ui/gfx/size.h" |
| #include "ui/gfx/skbitmap_operations.h" |
| #include "ui/native_theme/common_theme.h" |
| +#include "ui/views/controls/menu/menu_config.h" |
|
sky
2013/01/25 16:10:52
ui shouldn't depend upon views like this. Otherwis
varunjain
2013/01/25 18:50:40
Done as discussed offline.
|
| +#include "ui/views/round_rect_painter.h" |
| namespace { |
| @@ -195,7 +198,19 @@ SkColor NativeThemeAura::GetSystemColor(ColorId color_id) const { |
| void NativeThemeAura::PaintMenuPopupBackground(SkCanvas* canvas, |
| const gfx::Size& size) const { |
| - canvas->drawColor(kMenuBackgroundColor, SkXfermode::kSrc_Mode); |
| + if (views::MenuConfig::instance(instance()).has_rounded_corners) { |
| + SkPaint paint; |
| + paint.setStyle(SkPaint::kFill_Style); |
| + paint.setFlags(SkPaint::kAntiAlias_Flag); |
| + paint.setColor(kMenuBackgroundColor); |
| + |
| + gfx::Path path; |
| + views::RoundRectPainter::CreateRoundRectPath(gfx::Rect(size), &path); |
| + |
| + canvas->drawPath(path, paint); |
| + } else { |
| + canvas->drawColor(kMenuBackgroundColor, SkXfermode::kSrc_Mode); |
| + } |
| } |
| void NativeThemeAura::PaintScrollbarTrack( |