Title: [179668] trunk/Source/WebKit2
- Revision
- 179668
- Author
- [email protected]
- Date
- 2015-02-04 20:28:40 -0800 (Wed, 04 Feb 2015)
Log Message
[iOS] Selection callout does not follow selection when double-tap scrolling
https://bugs.webkit.org/show_bug.cgi?id=141214
Patch by Joseph Pecoraro <[email protected]> on 2015-02-04
Reviewed by Benjamin Poulain.
Implement the delegate that gets called after UIScrollView
setContentOffset animations. When scrolling to a rect, do the normal
willScroll, didScroll actions to update the selection assistant.
* UIProcess/API/Cocoa/WKWebView.mm:
(-[WKWebView _scrollToRect:origin:minimumScrollDistance:]):
(-[WKWebView scrollViewDidEndScrollingAnimation:]):
Modified Paths
Diff
Modified: trunk/Source/WebKit2/ChangeLog (179667 => 179668)
--- trunk/Source/WebKit2/ChangeLog 2015-02-05 04:07:08 UTC (rev 179667)
+++ trunk/Source/WebKit2/ChangeLog 2015-02-05 04:28:40 UTC (rev 179668)
@@ -1,3 +1,18 @@
+2015-02-04 Joseph Pecoraro <[email protected]>
+
+ [iOS] Selection callout does not follow selection when double-tap scrolling
+ https://bugs.webkit.org/show_bug.cgi?id=141214
+
+ Reviewed by Benjamin Poulain.
+
+ Implement the delegate that gets called after UIScrollView
+ setContentOffset animations. When scrolling to a rect, do the normal
+ willScroll, didScroll actions to update the selection assistant.
+
+ * UIProcess/API/Cocoa/WKWebView.mm:
+ (-[WKWebView _scrollToRect:origin:minimumScrollDistance:]):
+ (-[WKWebView scrollViewDidEndScrollingAnimation:]):
+
2015-02-04 Simon Fraser <[email protected]>
[iOS WK2] Layers that are created and destroyed in the same transaction shouldn't be encoded
Modified: trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm (179667 => 179668)
--- trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm 2015-02-05 04:07:08 UTC (rev 179667)
+++ trunk/Source/WebKit2/UIProcess/API/Cocoa/WKWebView.mm 2015-02-05 04:28:40 UTC (rev 179668)
@@ -1019,7 +1019,7 @@
- (void)_zoomToRect:(WebCore::FloatRect)targetRect atScale:(double)scale origin:(WebCore::FloatPoint)origin animated:(BOOL)animated
{
- // FIMXE: Some of this could be shared with _scrollToRect.
+ // FIXME: Some of this could be shared with _scrollToRect.
const double visibleRectScaleChange = contentZoomScale(self) / scale;
const WebCore::FloatRect visibleRect([self convertRect:self.bounds toView:self._currentContentView]);
const WebCore::FloatRect unobscuredRect([self _contentRectForUserInteraction]);
@@ -1112,6 +1112,8 @@
if (scrollDistance < minimumScrollDistance)
return false;
+ [_contentView willStartZoomOrScroll];
+
[_scrollView setContentOffset:([_scrollView contentOffset] + scrollViewOffsetDelta) animated:YES];
return true;
}
@@ -1406,6 +1408,11 @@
[_contentView didZoomToScale:scale];
}
+- (void)scrollViewDidEndScrollingAnimation:(UIScrollView *)scrollView
+{
+ [self _didFinishScrolling];
+}
+
- (void)_frameOrBoundsChanged
{
CGRect bounds = self.bounds;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes