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

Unified Diff: ui/gfx/transform.cc

Issue 11275089: SkRect to gfx::Rect type conversions. (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: Created 8 years, 2 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 side-by-side diff with in-line comments
Download patch
Index: ui/gfx/transform.cc
diff --git a/ui/gfx/transform.cc b/ui/gfx/transform.cc
index d34c9076f1d5d19a9403725fe059d444f55b1205..fe69a87658560a218c4067f4c89a8db919e0c684 100644
--- a/ui/gfx/transform.cc
+++ b/ui/gfx/transform.cc
@@ -6,6 +6,8 @@
#include "ui/gfx/point3_f.h"
#include "ui/gfx/rect.h"
+#include "ui/gfx/rect_f.h"
+#include "ui/gfx/rect_conversions.h"
#include "ui/gfx/safe_integer_conversions.h"
#include "ui/gfx/skia_util.h"
@@ -151,24 +153,36 @@ bool Transform::TransformPointReverse(Point3F& point) const {
return true;
}
-void Transform::TransformRect(Rect* rect) const {
- SkRect src = RectToSkRect(*rect);
+void Transform::TransformRect(RectF* rect) const {
+ SkRect src = RectFToSkRect(*rect);
const SkMatrix& matrix = matrix_;
matrix.mapRect(&src);
- *rect = SkRectToRect(src);
+ *rect = SkRectToRectF(src);
+}
+
+void Transform::TransformRect(Rect* rect) const {
+ RectF rect_f = *rect;
+ TransformRect(&rect_f);
+ *rect = gfx::ToEnclosingRect(rect_f);
}
-bool Transform::TransformRectReverse(Rect* rect) const {
+bool Transform::TransformRectReverse(RectF* rect) const {
SkMatrix44 inverse;
if (!matrix_.invert(&inverse))
return false;
const SkMatrix& matrix = inverse;
- SkRect src = RectToSkRect(*rect);
+ SkRect src = RectFToSkRect(*rect);
matrix.mapRect(&src);
- *rect = SkRectToRect(src);
+ *rect = SkRectToRectF(src);
return true;
}
+void Transform::TransformRectReverse(Rect* rect) const {
+ RectF rect_f = *rect;
+ TransformRectReverse(&rect_f);
+ *rect = gfx::ToEnclosingRect(rect_f);
+}
+
void Transform::TransformPointInternal(const SkMatrix44& xform,
Point3F& point) const {
SkScalar p[4] = {

Powered by Google App Engine
This is Rietveld 408576698