Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(8584)

Unified Diff: chrome/browser/ui/views/detachable_toolbar_view.cc

Issue 11418217: Add skia::RefPtr class to wrap ref counted classes from Skia. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Drop TNoRef Created 8 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/views/detachable_toolbar_view.cc
diff --git a/chrome/browser/ui/views/detachable_toolbar_view.cc b/chrome/browser/ui/views/detachable_toolbar_view.cc
index 354af9fac055e5979e2853922d0d59e2e3a77f98..07ae8ccb0e2c47f031a114ed963c17a956ba9bf7 100644
--- a/chrome/browser/ui/views/detachable_toolbar_view.cc
+++ b/chrome/browser/ui/views/detachable_toolbar_view.cc
@@ -6,6 +6,7 @@
#include "chrome/browser/themes/theme_service.h"
#include "grit/theme_resources.h"
+#include "skia/ext/refptr.h"
#include "third_party/skia/include/core/SkShader.h"
#include "ui/base/resource/resource_bundle.h"
#include "ui/gfx/canvas.h"
@@ -119,12 +120,13 @@ void DetachableToolbarView::PaintVerticalDivider(gfx::Canvas* canvas,
SkColor top_color,
SkColor middle_color,
SkColor bottom_color) {
+ skia::RefPtr<SkShader> gradient;
+
// Draw the upper half of the divider.
SkPaint paint;
- SkSafeUnref(paint.setShader(gfx::CreateGradientShader(vertical_padding + 1,
- height / 2,
- top_color,
- middle_color)));
+ gradient = gfx::CreateGradientShader(vertical_padding + 1, height / 2,
+ top_color, middle_color);
+ paint.setShader(gradient.get());
SkRect rc = { SkIntToScalar(x),
SkIntToScalar(vertical_padding + 1),
SkIntToScalar(x + 1),
@@ -133,8 +135,9 @@ void DetachableToolbarView::PaintVerticalDivider(gfx::Canvas* canvas,
// Draw the lower half of the divider.
SkPaint paint_down;
- SkSafeUnref(paint_down.setShader(gfx::CreateGradientShader(
- height / 2, height - vertical_padding, middle_color, bottom_color)));
+ gradient = gfx::CreateGradientShader(height / 2, height - vertical_padding,
+ middle_color, bottom_color);
+ paint_down.setShader(gradient.get());
SkRect rc_down = { SkIntToScalar(x),
SkIntToScalar(height / 2),
SkIntToScalar(x + 1),

Powered by Google App Engine
This is Rietveld 408576698