Title: [179152] branches/safari-600.4-branch/Source

Diff

Modified: branches/safari-600.4-branch/Source/WebKit/mac/ChangeLog (179151 => 179152)


--- branches/safari-600.4-branch/Source/WebKit/mac/ChangeLog	2015-01-27 00:19:10 UTC (rev 179151)
+++ branches/safari-600.4-branch/Source/WebKit/mac/ChangeLog	2015-01-27 00:19:12 UTC (rev 179152)
@@ -1,5 +1,22 @@
 2015-01-26  Matthew Hanson  <[email protected]>
 
+        Merge r179013. rdar://problem/19571601
+
+    2015-01-23  Timothy Horton  <[email protected]>
+
+            Infinite recursion in _clearImmediateActionState
+            https://bugs.webkit.org/show_bug.cgi?id=140807
+            <rdar://problem/19571601>
+
+            Reviewed by Anders Carlsson.
+
+            * WebView/WebImmediateActionController.mm:
+            (-[WebImmediateActionController _clearImmediateActionState]):
+            Use this opportunity to bring identical code to WebKit1, to avoid
+            getting DataDetectors stuck when an immediate action is canceled.
+
+2015-01-26  Matthew Hanson  <[email protected]>
+
         Merge r178938. rdar://problem/19558472
 
     2015-01-22  Beth Dakin  <[email protected]>

Modified: branches/safari-600.4-branch/Source/WebKit/mac/WebView/WebImmediateActionController.mm (179151 => 179152)


--- branches/safari-600.4-branch/Source/WebKit/mac/WebView/WebImmediateActionController.mm	2015-01-27 00:19:10 UTC (rev 179151)
+++ branches/safari-600.4-branch/Source/WebKit/mac/WebView/WebImmediateActionController.mm	2015-01-27 00:19:12 UTC (rev 179152)
@@ -110,7 +110,15 @@
 - (void)_clearImmediateActionState
 {
     [_webView _clearTextIndicator];
+    DDActionsManager *actionsManager = [getDDActionsManagerClass() sharedManager];
+    if ([actionsManager respondsToSelector:@selector(requestBubbleClosureUnanchorOnFailure:)])
+        [actionsManager requestBubbleClosureUnanchorOnFailure:YES];
 
+    if (_currentActionContext && _hasActivatedActionContext) {
+        _hasActivatedActionContext = NO;
+        [getDDActionsManagerClass() didUseActions];
+    }
+
     _type = WebImmediateActionNone;
     _currentActionContext = nil;
 }

Modified: branches/safari-600.4-branch/Source/WebKit2/ChangeLog (179151 => 179152)


--- branches/safari-600.4-branch/Source/WebKit2/ChangeLog	2015-01-27 00:19:10 UTC (rev 179151)
+++ branches/safari-600.4-branch/Source/WebKit2/ChangeLog	2015-01-27 00:19:12 UTC (rev 179152)
@@ -1,5 +1,22 @@
 2015-01-26  Matthew Hanson  <[email protected]>
 
+        Merge r179013. rdar://problem/19571601
+
+    2015-01-23  Timothy Horton  <[email protected]>
+
+            Infinite recursion in _clearImmediateActionState
+            https://bugs.webkit.org/show_bug.cgi?id=140807
+            <rdar://problem/19571601>
+
+            Reviewed by Anders Carlsson.
+
+            * UIProcess/mac/WKImmediateActionController.mm:
+            (-[WKImmediateActionController _clearImmediateActionState]):
+            Clear _hasActivatedActionContext before calling didUseActions, because
+            didUseActions can call _clearImmediateActionState.
+
+2015-01-26  Matthew Hanson  <[email protected]>
+
         Merge r178938. rdar://problem/19558472
 
     2015-01-22  Beth Dakin  <[email protected]>

Modified: branches/safari-600.4-branch/Source/WebKit2/UIProcess/mac/WKImmediateActionController.mm (179151 => 179152)


--- branches/safari-600.4-branch/Source/WebKit2/UIProcess/mac/WKImmediateActionController.mm	2015-01-27 00:19:10 UTC (rev 179151)
+++ branches/safari-600.4-branch/Source/WebKit2/UIProcess/mac/WKImmediateActionController.mm	2015-01-27 00:19:12 UTC (rev 179152)
@@ -117,8 +117,8 @@
     _page->clearTextIndicator();
 
     if (_currentActionContext && _hasActivatedActionContext) {
+        _hasActivatedActionContext = NO;
         [getDDActionsManagerClass() didUseActions];
-        _hasActivatedActionContext = NO;
     }
 
     _state = ImmediateActionState::None;
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to