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

Unified Diff: ui/base/events/event.cc

Issue 13594009: Correct scale for touch radius & scroll offset ordinal (Closed) Base URL: http://git.chromium.org/chromium/src.git@master
Patch Set: add const for "DesktopBackgroundView" Created 7 years, 9 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
« no previous file with comments | « ui/base/events/event.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: ui/base/events/event.cc
diff --git a/ui/base/events/event.cc b/ui/base/events/event.cc
index 552699e04ff8d287640c652ff3efef4a51ee4106..38967d74865ed8846804a938efc7833d3f6ad644 100644
--- a/ui/base/events/event.cc
+++ b/ui/base/events/event.cc
@@ -462,15 +462,16 @@ void TouchEvent::Relocate(const gfx::Point& origin) {
root_location_ -= origin.OffsetFromOrigin();
}
-void TouchEvent::UpdateForRootTransform(const gfx::Transform& root_transform) {
- LocatedEvent::UpdateForRootTransform(root_transform);
+void TouchEvent::UpdateForRootTransform(
+ const gfx::Transform& inverted_root_transform) {
+ LocatedEvent::UpdateForRootTransform(inverted_root_transform);
gfx::DecomposedTransform decomp;
- bool success = gfx::DecomposeTransform(&decomp, root_transform);
+ bool success = gfx::DecomposeTransform(&decomp, inverted_root_transform);
DCHECK(success);
if (decomp.scale[0])
- radius_x_ /= decomp.scale[0];
+ radius_x_ *= decomp.scale[0];
if (decomp.scale[1])
- radius_y_ /= decomp.scale[1];
+ radius_y_ *= decomp.scale[1];
}
////////////////////////////////////////////////////////////////////////////////
@@ -690,15 +691,16 @@ void ScrollEvent::Scale(const float factor) {
y_offset_ordinal_ *= factor;
}
-void ScrollEvent::UpdateForRootTransform(const gfx::Transform& root_transform) {
- LocatedEvent::UpdateForRootTransform(root_transform);
+void ScrollEvent::UpdateForRootTransform(
+ const gfx::Transform& inverted_root_transform) {
+ LocatedEvent::UpdateForRootTransform(inverted_root_transform);
gfx::DecomposedTransform decomp;
- bool success = gfx::DecomposeTransform(&decomp, root_transform);
+ bool success = gfx::DecomposeTransform(&decomp, inverted_root_transform);
DCHECK(success);
if (decomp.scale[0])
- x_offset_ordinal_ /= decomp.scale[0];
+ x_offset_ordinal_ *= decomp.scale[0];
if (decomp.scale[1])
- y_offset_ordinal_ /= decomp.scale[1];
+ y_offset_ordinal_ *= decomp.scale[1];
}
////////////////////////////////////////////////////////////////////////////////
« no previous file with comments | « ui/base/events/event.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698