diff options
author | benhenry@google.com <benhenry@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-10-16 15:54:36 +0000 |
---|---|---|
committer | benhenry@google.com <benhenry@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-10-16 15:54:36 +0000 |
commit | 5bb96ea0b1fdc620be4a19f7c1e1a40ec5747cf5 (patch) | |
tree | 0078806a188dd9d3ae59a64e4b67d2e15c6ac0b8 | |
parent | 4ba9b0486299bc62e3ec0464a7f39140f581ddf5 (diff) | |
download | chromium_src-5bb96ea0b1fdc620be4a19f7c1e1a40ec5747cf5.zip chromium_src-5bb96ea0b1fdc620be4a19f7c1e1a40ec5747cf5.tar.gz chromium_src-5bb96ea0b1fdc620be4a19f7c1e1a40ec5747cf5.tar.bz2 |
Merge 226767 "Do not transform scroll event ordinal values"
> Do not transform scroll event ordinal values
>
> We don't need to transform scroll event ordinal values anymore as
> we now interpret them as DIPs across the whole stack. Otherwise,
> high-DPI devices (e.g. Pixel) would see the overscroll sensitivity
> downscaled by the device scale factor.
>
> Contributed by sheckylin@chromium.org
>
> BUG=300059
> TEST=Make sure it takes roughly the same distance to scroll on the
> touchpad to trigger the back/forward history navigation gesture on
> both Pixel and other low-res devices.
>
> Review URL: https://codereview.chromium.org/25373005
TBR=sheckylin@chromium.org
Review URL: https://codereview.chromium.org/27520004
git-svn-id: svn://svn.chromium.org/chrome/branches/1650/src@228921 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r-- | ash/display/display_controller_unittest.cc | 6 | ||||
-rw-r--r-- | ash/display/root_window_transformers_unittest.cc | 6 | ||||
-rw-r--r-- | ui/events/event.cc | 12 | ||||
-rw-r--r-- | ui/events/event.h | 4 |
4 files changed, 6 insertions, 22 deletions
diff --git a/ash/display/display_controller_unittest.cc b/ash/display/display_controller_unittest.cc index 287b0e4..c2e3e7d 100644 --- a/ash/display/display_controller_unittest.cc +++ b/ash/display/display_controller_unittest.cc @@ -1148,11 +1148,11 @@ TEST_F(DisplayControllerTest, TouchScale) { base::TimeDelta::FromMilliseconds(100), 10.0, 1.0, 5, 1); - // With device scale factor = 2, ordinal_offset * 2 = offset. + // ordinal_offset is invariant to the device scale factor. EXPECT_EQ(event_handler.scroll_x_offset(), - event_handler.scroll_x_offset_ordinal() * 2); + event_handler.scroll_x_offset_ordinal()); EXPECT_EQ(event_handler.scroll_y_offset(), - event_handler.scroll_y_offset_ordinal() * 2); + event_handler.scroll_y_offset_ordinal()); Shell::GetInstance()->RemovePreTargetHandler(&event_handler); } diff --git a/ash/display/root_window_transformers_unittest.cc b/ash/display/root_window_transformers_unittest.cc index d426a63..b300036 100644 --- a/ash/display/root_window_transformers_unittest.cc +++ b/ash/display/root_window_transformers_unittest.cc @@ -298,11 +298,11 @@ TEST_F(RootWindowTransformersTest, MAYBE_TouchScaleAndMagnify) { base::TimeDelta::FromMilliseconds(100), 10.0, 1.0, 5, 1); - // With device scale factor = 2, ordinal_offset * 2 = offset. + // ordinal_offset is invariant to the device scale factor. EXPECT_FLOAT_EQ(event_handler.scroll_x_offset(), - event_handler.scroll_x_offset_ordinal() * 2 * 2.5f); + event_handler.scroll_x_offset_ordinal()); EXPECT_FLOAT_EQ(event_handler.scroll_y_offset(), - event_handler.scroll_y_offset_ordinal() * 2 * 2.5f); + event_handler.scroll_y_offset_ordinal()); magnifier->SetEnabled(false); Shell::GetInstance()->RemovePreTargetHandler(&event_handler); diff --git a/ui/events/event.cc b/ui/events/event.cc index 46c31a6..7c3e6d5 100644 --- a/ui/events/event.cc +++ b/ui/events/event.cc @@ -741,18 +741,6 @@ void ScrollEvent::Scale(const float factor) { y_offset_ordinal_ *= factor; } -void ScrollEvent::UpdateForRootTransform( - const gfx::Transform& inverted_root_transform) { - LocatedEvent::UpdateForRootTransform(inverted_root_transform); - gfx::DecomposedTransform decomp; - bool success = gfx::DecomposeTransform(&decomp, inverted_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 diff --git a/ui/events/event.h b/ui/events/event.h index 2a8c0df..358e3ee 100644 --- a/ui/events/event.h +++ b/ui/events/event.h @@ -656,10 +656,6 @@ class EVENTS_EXPORT ScrollEvent : public MouseEvent { float y_offset_ordinal() const { return y_offset_ordinal_; } int finger_count() const { return finger_count_; } - // Overridden from LocatedEvent. - virtual void UpdateForRootTransform( - const gfx::Transform& inverted_root_transform) OVERRIDE; - private: // Potential accelerated offsets. float x_offset_; |