| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/ui/views/detachable_toolbar_view.h" | 5 #include "chrome/browser/ui/views/detachable_toolbar_view.h" |
| 6 | 6 |
| 7 #include "chrome/browser/themes/theme_service.h" | 7 #include "chrome/browser/themes/theme_service.h" |
| 8 #include "grit/theme_resources.h" | 8 #include "grit/theme_resources.h" |
| 9 #include "grit/theme_resources_standard.h" | 9 #include "grit/theme_resources_standard.h" |
| 10 #include "third_party/skia/include/core/SkBitmap.h" | |
| 11 #include "third_party/skia/include/core/SkShader.h" | 10 #include "third_party/skia/include/core/SkShader.h" |
| 12 #include "ui/base/resource/resource_bundle.h" | 11 #include "ui/base/resource/resource_bundle.h" |
| 13 #include "ui/gfx/canvas.h" | 12 #include "ui/gfx/canvas.h" |
| 13 #include "ui/gfx/image/image_skia.h" |
| 14 #include "ui/gfx/skia_util.h" | 14 #include "ui/gfx/skia_util.h" |
| 15 #include "ui/views/window/non_client_view.h" | 15 #include "ui/views/window/non_client_view.h" |
| 16 | 16 |
| 17 // How round the 'new tab' style bookmarks bar is. | 17 // How round the 'new tab' style bookmarks bar is. |
| 18 static const int kNewtabBarRoundness = 5; | 18 static const int kNewtabBarRoundness = 5; |
| 19 | 19 |
| 20 const SkColor DetachableToolbarView::kEdgeDividerColor = | 20 const SkColor DetachableToolbarView::kEdgeDividerColor = |
| 21 SkColorSetRGB(222, 234, 248); | 21 SkColorSetRGB(222, 234, 248); |
| 22 const SkColor DetachableToolbarView::kMiddleDividerColor = | 22 const SkColor DetachableToolbarView::kMiddleDividerColor = |
| 23 SkColorSetRGB(194, 205, 212); | 23 SkColorSetRGB(194, 205, 212); |
| 24 | 24 |
| 25 // static | 25 // static |
| 26 void DetachableToolbarView::PaintBackgroundAttachedMode( | 26 void DetachableToolbarView::PaintBackgroundAttachedMode( |
| 27 gfx::Canvas* canvas, | 27 gfx::Canvas* canvas, |
| 28 views::View* view, | 28 views::View* view, |
| 29 const gfx::Point& background_origin) { | 29 const gfx::Point& background_origin) { |
| 30 ui::ThemeProvider* tp = view->GetThemeProvider(); | 30 ui::ThemeProvider* tp = view->GetThemeProvider(); |
| 31 canvas->FillRect(view->GetLocalBounds(), | 31 canvas->FillRect(view->GetLocalBounds(), |
| 32 tp->GetColor(ThemeService::COLOR_TOOLBAR)); | 32 tp->GetColor(ThemeService::COLOR_TOOLBAR)); |
| 33 canvas->TileImageInt(*tp->GetBitmapNamed(IDR_THEME_TOOLBAR), | 33 canvas->TileImageInt(*tp->GetImageSkiaNamed(IDR_THEME_TOOLBAR), |
| 34 background_origin.x(), background_origin.y(), 0, 0, | 34 background_origin.x(), background_origin.y(), 0, 0, |
| 35 view->width(), view->height()); | 35 view->width(), view->height()); |
| 36 #if defined(USE_ASH) | 36 #if defined(USE_ASH) |
| 37 // Ash provides additional lightening at the edges of the toolbar. | 37 // Ash provides additional lightening at the edges of the toolbar. |
| 38 SkBitmap* toolbar_left = tp->GetBitmapNamed(IDR_TOOLBAR_SHADE_LEFT); | 38 gfx::ImageSkia* toolbar_left = tp->GetImageSkiaNamed(IDR_TOOLBAR_SHADE_LEFT); |
| 39 canvas->TileImageInt(*toolbar_left, | 39 canvas->TileImageInt(*toolbar_left, |
| 40 0, 0, | 40 0, 0, |
| 41 0, 0, | 41 0, 0, |
| 42 toolbar_left->width(), view->height()); | 42 toolbar_left->width(), view->height()); |
| 43 SkBitmap* toolbar_right = tp->GetBitmapNamed(IDR_TOOLBAR_SHADE_RIGHT); | 43 gfx::ImageSkia* toolbar_right = |
| 44 tp->GetImageSkiaNamed(IDR_TOOLBAR_SHADE_RIGHT); |
| 44 canvas->TileImageInt(*toolbar_right, | 45 canvas->TileImageInt(*toolbar_right, |
| 45 0, 0, | 46 0, 0, |
| 46 view->width() - toolbar_right->width(), 0, | 47 view->width() - toolbar_right->width(), 0, |
| 47 toolbar_right->width(), view->height()); | 48 toolbar_right->width(), view->height()); |
| 48 #endif | 49 #endif |
| 49 } | 50 } |
| 50 | 51 |
| 51 // static | 52 // static |
| 52 void DetachableToolbarView::CalculateContentArea( | 53 void DetachableToolbarView::CalculateContentArea( |
| 53 double animation_state, double horizontal_padding, | 54 double animation_state, double horizontal_padding, |
| (...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 126 // Draw the lower half of the divider. | 127 // Draw the lower half of the divider. |
| 127 SkPaint paint_down; | 128 SkPaint paint_down; |
| 128 SkSafeUnref(paint_down.setShader(gfx::CreateGradientShader( | 129 SkSafeUnref(paint_down.setShader(gfx::CreateGradientShader( |
| 129 height / 2, height - vertical_padding, middle_color, bottom_color))); | 130 height / 2, height - vertical_padding, middle_color, bottom_color))); |
| 130 SkRect rc_down = { SkIntToScalar(x), | 131 SkRect rc_down = { SkIntToScalar(x), |
| 131 SkIntToScalar(height / 2), | 132 SkIntToScalar(height / 2), |
| 132 SkIntToScalar(x + 1), | 133 SkIntToScalar(x + 1), |
| 133 SkIntToScalar(height - vertical_padding) }; | 134 SkIntToScalar(height - vertical_padding) }; |
| 134 canvas->sk_canvas()->drawRect(rc_down, paint_down); | 135 canvas->sk_canvas()->drawRect(rc_down, paint_down); |
| 135 } | 136 } |
| OLD | NEW |