WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
121711
Handle panning gestures messages properly on Windows
https://bugs.webkit.org/show_bug.cgi?id=121711
Summary
Handle panning gestures messages properly on Windows
Roger Fong
Reported
2013-09-20 13:47:31 PDT
This bug addresses a couple issues: 1. Two finger panning in one direction can sometimes cause some unexpected scrolling in the other direction when the gesture first begins(directions meaning horizontal and vertical) 2. Single finger horizontal panning should only be disabled when attempting to select text 3. Scrolling via panning should be clamped, other wise we can scroll contents completely out of the scrollview. 4. Horizontal Overpan should work 5. Overpan should work only when the main document is scrolled
Attachments
patch
(11.00 KB, patch)
2013-09-20 17:00 PDT
,
Roger Fong
bfulgham
: review+
Details
Formatted Diff
Diff
follow-up fix
(2.07 KB, patch)
2013-09-20 22:18 PDT
,
Alexey Proskuryakov
andersca
: review+
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Roger Fong
Comment 1
2013-09-20 13:48:17 PDT
Each of these fixes by itself is rather small. I'm not sure if I should just break this up into 5 smaller bugs.
Roger Fong
Comment 2
2013-09-20 14:50:38 PDT
<
rdar://problem/12712495
>
Roger Fong
Comment 3
2013-09-20 17:00:35 PDT
Created
attachment 212245
[details]
patch
Brent Fulgham
Comment 4
2013-09-20 17:17:12 PDT
Comment on
attachment 212245
[details]
patch View in context:
https://bugs.webkit.org/attachment.cgi?id=212245&action=review
Looks great! We might want to add a FIXME for Right-to-left languages if that's something we are likely to encounter for scroll bar support.
> Source/WebKit/win/WebView.cpp:1611 > + || (view->horizontalScrollbar() && (gestureBeginPoint.y > (webViewRect.bottom - view->horizontalScrollbar()->theme()->scrollbarThickness())));
This might not be right for a right-to-left environment.
> Source/WebKit/win/WebView.cpp:1640 > + // Disable single-fingered horizontal panning only if the target node text.
... target node *is* text?
> Source/WebKit/win/WebView.cpp:1741 > + UpdatePanningFeedbackPtr()(m_viewWindow, xpan, ypan, gi.dwFlags & GF_INERTIA);
Nice!
Roger Fong
Comment 5
2013-09-20 18:34:27 PDT
(In reply to
comment #4
)
> (From update of
attachment 212245
[details]
) > View in context:
https://bugs.webkit.org/attachment.cgi?id=212245&action=review
> > Looks great! We might want to add a FIXME for Right-to-left languages if that's something we are likely to encounter for scroll bar support. > > > Source/WebKit/win/WebView.cpp:1611 > > + || (view->horizontalScrollbar() && (gestureBeginPoint.y > (webViewRect.bottom - view->horizontalScrollbar()->theme()->scrollbarThickness()))); > > This might not be right for a right-to-left environment. >
I'll run a quick test.
Roger Fong
Comment 6
2013-09-20 20:25:31 PDT
Committed:
http://trac.webkit.org/changeset/156219
Setting dir=rtl on the document doesn't flip the position of the vertical scrollbar. Perhaps that's actually controlled by the HWND? If that's the case, GetWindowRect might actually take the flipped-ness into account. Will investigate further later.
Roger Fong
Comment 7
2013-09-20 21:10:03 PDT
(In reply to
comment #6
)
> Committed:
http://trac.webkit.org/changeset/156219
> > Setting dir=rtl on the document doesn't flip the position of the vertical scrollbar. > > Perhaps that's actually controlled by the HWND? If that's the case, GetWindowRect might actually take the flipped-ness into account. > > Will investigate further later.
I revoke that statement. It definitely won't work. Even if GetWindowRect flips the left and right values appropriately I'll need to add the scrollbar width, not subtract.
Ryosuke Niwa
Comment 8
2013-09-20 22:01:35 PDT
This patch caused 5 tests to hit assertions on Mac:
http://build.webkit.org/builders/Apple%20MountainLion%20Release%20WK1%20%28Tests%29/builds/13132
Alexey Proskuryakov
Comment 9
2013-09-20 22:18:45 PDT
Created
attachment 212253
[details]
follow-up fix
> This patch caused 5 tests to hit assertions on Mac: >
http://build.webkit.org/builders/Apple%20MountainLion%20Release%20WK1%20%28Tests%29/builds/13132
That warrants either an immediate rollout or an immediate fix. It's not OK to keep crashes in the tree over weekend.
Alexey Proskuryakov
Comment 10
2013-09-20 22:21:09 PDT
EWS didn't catch this because the patch in the bug is not quite what got landed.
Alexey Proskuryakov
Comment 11
2013-09-20 22:34:25 PDT
Landed the follow-up fix in
r156223
.
Brent Fulgham
Comment 12
2013-09-20 23:13:07 PDT
Comment on
attachment 212253
[details]
follow-up fix View in context:
https://bugs.webkit.org/attachment.cgi?id=212253&action=review
> Source/WebCore/rendering/RenderLayer.cpp:-2181 > - *scrolledView = &renderer().view().frameView();
I should have caught this when I reviewed. :(
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug