summaryrefslogtreecommitdiffstats
path: root/ui/base/events/event.cc
diff options
context:
space:
mode:
authorsadrul@chromium.org <sadrul@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-28 22:22:52 +0000
committersadrul@chromium.org <sadrul@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2013-02-28 22:22:52 +0000
commitdf1114bbc385a9b1b9341dcc7d1b81faf43fa838 (patch)
treea1b8892ad7481cdc37437b48622c93c88d44f919 /ui/base/events/event.cc
parent983aa814985278db960d7186b1c39c3615d48870 (diff)
downloadchromium_src-df1114bbc385a9b1b9341dcc7d1b81faf43fa838.zip
chromium_src-df1114bbc385a9b1b9341dcc7d1b81faf43fa838.tar.gz
chromium_src-df1114bbc385a9b1b9341dcc7d1b81faf43fa838.tar.bz2
events: Make sure the unaccelerated scroll deltas get adjusted properly for device-scale-factor.
BUG=none Review URL: https://codereview.chromium.org/12321090/ Review URL: https://codereview.chromium.org/12391022 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@185346 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/base/events/event.cc')
-rw-r--r--ui/base/events/event.cc11
1 files changed, 11 insertions, 0 deletions
diff --git a/ui/base/events/event.cc b/ui/base/events/event.cc
index 079e5f7..ad26a24 100644
--- a/ui/base/events/event.cc
+++ b/ui/base/events/event.cc
@@ -679,6 +679,17 @@ void ScrollEvent::Scale(const float factor) {
y_offset_ordinal_ *= factor;
}
+void ScrollEvent::UpdateForRootTransform(const gfx::Transform& root_transform) {
+ LocatedEvent::UpdateForRootTransform(root_transform);
+ gfx::DecomposedTransform decomp;
+ bool success = gfx::DecomposeTransform(&decomp, root_transform);
+ DCHECK(success);
+ if (decomp.scale[0])
+ x_offset_ordinal_ /= decomp.scale[0];
+ if (decomp.scale[1])
+ y_offset_ordinal_ /= decomp.scale[1];
+}
+
////////////////////////////////////////////////////////////////////////////////
// GestureEvent