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

Side by Side Diff: ui/views/button_drag_utils.cc

Issue 2877483003: Implements core logic for Pixel Canvas (Closed)
Patch Set: Update tests Created 3 years, 5 months 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 unified diff | Download patch
OLDNEW
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 "ui/views/button_drag_utils.h" 5 #include "ui/views/button_drag_utils.h"
6 6
7 #include "base/strings/utf_string_conversions.h" 7 #include "base/strings/utf_string_conversions.h"
8 #include "ui/base/dragdrop/os_exchange_data.h" 8 #include "ui/base/dragdrop/os_exchange_data.h"
9 #include "ui/base/resource/resource_bundle.h" 9 #include "ui/base/resource/resource_bundle.h"
10 #include "ui/compositor/canvas_painter.h" 10 #include "ui/compositor/canvas_painter.h"
11 #include "ui/compositor/paint_context.h"
12 #include "ui/compositor/paint_info.h"
11 #include "ui/gfx/canvas.h" 13 #include "ui/gfx/canvas.h"
12 #include "ui/gfx/geometry/point.h" 14 #include "ui/gfx/geometry/point.h"
13 #include "ui/gfx/geometry/vector2d.h" 15 #include "ui/gfx/geometry/vector2d.h"
14 #include "ui/gfx/image/image.h" 16 #include "ui/gfx/image/image.h"
15 #include "ui/resources/grit/ui_resources.h" 17 #include "ui/resources/grit/ui_resources.h"
16 #include "ui/views/background.h" 18 #include "ui/views/background.h"
17 #include "ui/views/border.h" 19 #include "ui/views/border.h"
18 #include "ui/views/controls/button/label_button.h" 20 #include "ui/views/controls/button/label_button.h"
19 #include "ui/views/controls/button/label_button_border.h" 21 #include "ui/views/controls/button/label_button_border.h"
20 #include "ui/views/drag_utils.h" 22 #include "ui/views/drag_utils.h"
(...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after
76 78
77 gfx::Vector2d press_point; 79 gfx::Vector2d press_point;
78 if (press_pt) 80 if (press_pt)
79 press_point = press_pt->OffsetFromOrigin(); 81 press_point = press_pt->OffsetFromOrigin();
80 else 82 else
81 press_point = gfx::Vector2d(size.width() / 2, size.height() / 2); 83 press_point = gfx::Vector2d(size.width() / 2, size.height() / 2);
82 84
83 SkBitmap bitmap; 85 SkBitmap bitmap;
84 float raster_scale = ScaleFactorForDragFromWidget(&widget); 86 float raster_scale = ScaleFactorForDragFromWidget(&widget);
85 SkColor color = SK_ColorTRANSPARENT; 87 SkColor color = SK_ColorTRANSPARENT;
86 button.Paint(ui::CanvasPainter(&bitmap, size, raster_scale, color).context()); 88 button.Paint(ui::PaintInfo(
89 ui::CanvasPainter(&bitmap, size, raster_scale, color).context(), size));
87 gfx::ImageSkia image(gfx::ImageSkiaRep(bitmap, raster_scale)); 90 gfx::ImageSkia image(gfx::ImageSkiaRep(bitmap, raster_scale));
88 data->provider().SetDragImage(image, press_point); 91 data->provider().SetDragImage(image, press_point);
89 } 92 }
90 93
91 } // namespace button_drag_utils 94 } // namespace button_drag_utils
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698