Title: [188054] branches/safari-601.1.46-branch/Source/WebKit2
- Revision
- 188054
- Author
- bshaf...@apple.com
- Date
- 2015-08-06 13:33:15 -0700 (Thu, 06 Aug 2015)
Log Message
Merged r188053. rdar://problem/22128839
Modified Paths
Diff
Modified: branches/safari-601.1.46-branch/Source/WebKit2/ChangeLog (188053 => 188054)
--- branches/safari-601.1.46-branch/Source/WebKit2/ChangeLog 2015-08-06 20:14:58 UTC (rev 188053)
+++ branches/safari-601.1.46-branch/Source/WebKit2/ChangeLog 2015-08-06 20:33:15 UTC (rev 188054)
@@ -1,5 +1,29 @@
2015-08-06 Babak Shafiei <bshaf...@apple.com>
+ Merge r188053.
+
+ 2015-08-06 Enrica Casucci <enr...@apple.com>
+
+ Allow long press to cancel link preview.
+ https://bugs.webkit.org/show_bug.cgi?id=147743
+ rdar://problem/22128839
+
+ Reviewed by Tim Horton.
+
+ We should be able to show the context menu at the beginnig of link preview.
+
+ * UIProcess/ios/WKContentViewInteraction.h:
+ * UIProcess/ios/WKContentViewInteraction.mm:
+ (-[WKContentView _removeDefaultGestureRecognizers]):
+ (-[WKContentView _addDefaultGestureRecognizers]):
+ (-[WKContentView gestureRecognizer:shouldRecognizeSimultaneouslyWithGestureRecognizer:]):
+ (-[WKContentView _longPressRecognized:]):
+ (-[WKContentView _singleTapRecognized:]):
+ (-[WKContentView _registerPreview]):
+ (-[WKContentView _unregisterPreview]):
+
+2015-08-06 Babak Shafiei <bshaf...@apple.com>
+
Merge r186849.
2015-07-14 Enrica Casucci <enr...@apple.com>
Modified: branches/safari-601.1.46-branch/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.h (188053 => 188054)
--- branches/safari-601.1.46-branch/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.h 2015-08-06 20:14:58 UTC (rev 188053)
+++ branches/safari-601.1.46-branch/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.h 2015-08-06 20:33:15 UTC (rev 188054)
@@ -121,6 +121,7 @@
RetainPtr<WKFormInputSession> _formInputSession;
RetainPtr<WKFileUploadPanel> _fileUploadPanel;
RetainPtr<UIGestureRecognizer> _previewGestureRecognizer;
+ RetainPtr<UIGestureRecognizer> _previewSecondaryGestureRecognizer;
#if HAVE(LINK_PREVIEW)
RetainPtr<UIPreviewItemController> _previewItemController;
#endif
Modified: branches/safari-601.1.46-branch/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm (188053 => 188054)
--- branches/safari-601.1.46-branch/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm 2015-08-06 20:14:58 UTC (rev 188053)
+++ branches/safari-601.1.46-branch/Source/WebKit2/UIProcess/ios/WKContentViewInteraction.mm 2015-08-06 20:33:15 UTC (rev 188054)
@@ -416,7 +416,6 @@
[self removeGestureRecognizer:_touchEventGestureRecognizer.get()];
[self removeGestureRecognizer:_singleTapGestureRecognizer.get()];
[self removeGestureRecognizer:_highlightLongPressGestureRecognizer.get()];
- [self removeGestureRecognizer:_longPressGestureRecognizer.get()];
[self removeGestureRecognizer:_doubleTapGestureRecognizer.get()];
[self removeGestureRecognizer:_twoFingerDoubleTapGestureRecognizer.get()];
}
@@ -426,7 +425,6 @@
[self addGestureRecognizer:_touchEventGestureRecognizer.get()];
[self addGestureRecognizer:_singleTapGestureRecognizer.get()];
[self addGestureRecognizer:_highlightLongPressGestureRecognizer.get()];
- [self addGestureRecognizer:_longPressGestureRecognizer.get()];
[self addGestureRecognizer:_doubleTapGestureRecognizer.get()];
[self addGestureRecognizer:_twoFingerDoubleTapGestureRecognizer.get()];
}
@@ -876,6 +874,9 @@
if (isSamePair(gestureRecognizer, otherGestureRecognizer, _singleTapGestureRecognizer.get(), _textSelectionAssistant.get().singleTapGesture))
return YES;
+ if (isSamePair(gestureRecognizer, otherGestureRecognizer, _highlightLongPressGestureRecognizer.get(), _previewSecondaryGestureRecognizer.get()))
+ return YES;
+
if (isSamePair(gestureRecognizer, otherGestureRecognizer, _highlightLongPressGestureRecognizer.get(), _previewGestureRecognizer.get()))
return YES;
@@ -1076,21 +1077,25 @@
{
ASSERT(gestureRecognizer == _longPressGestureRecognizer);
-#if HAVE(LINK_PREVIEW)
- if ([_previewItemController interactionInProgress])
- return;
-#endif
-
_lastInteractionLocation = gestureRecognizer.startPoint;
- if ([gestureRecognizer state] == UIGestureRecognizerStateBegan) {
+ switch ([gestureRecognizer state]) {
+ case UIGestureRecognizerStateBegan:
+ {
SEL action = "" _actionForLongPress];
if (action) {
[self performSelector:action];
[self _cancelLongPressGestureRecognizer];
- [UIApp _cancelAllTouches];
}
}
+ break;
+ case UIGestureRecognizerStateCancelled:
+ case UIGestureRecognizerStateEnded:
+ [_actionSheetAssistant cleanupSheet];
+ break;
+ default:
+ break;
+ }
}
- (void)_singleTapRecognized:(UITapGestureRecognizer *)gestureRecognizer
@@ -3216,12 +3221,14 @@
_previewItemController = adoptNS([[UIPreviewItemController alloc] initWithView:self]);
[_previewItemController setDelegate:self];
_previewGestureRecognizer = _previewItemController.get().presentationGestureRecognizer;
+ _previewSecondaryGestureRecognizer = _previewItemController.get().presentationSecondaryGestureRecognizer;
}
- (void)_unregisterPreview
{
[_previewItemController setDelegate:nil];
_previewGestureRecognizer = nil;
+ _previewSecondaryGestureRecognizer = nil;
_previewItemController = nil;
}
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes