Title: [178938] trunk/Source
- Revision
- 178938
- Author
- bda...@apple.com
- Date
- 2015-01-22 13:40:02 -0800 (Thu, 22 Jan 2015)
Log Message
ibtoold crash below -[WebView close]
https://bugs.webkit.org/show_bug.cgi?id=140782
-and corresponding-
rdar://problem/19558472
Reviewed by Tim Horton.
Retain the NSImmediateActionGestureRecognizer. This should not be necessary, but
Source/WebKit/mac:
it is because interface builder is messing with our views.
* WebView/WebImmediateActionController.h:
* WebView/WebImmediateActionController.mm:
(-[WebImmediateActionController webViewClosed]):
(-[WebImmediateActionController _cancelImmediateAction]):
(-[WebImmediateActionController immediateActionRecognizerWillPrepare:]):
(-[WebImmediateActionController _updateImmediateActionItem]):
Source/WebKit2:
it is because interface builder can mess with our views.
* UIProcess/mac/WKImmediateActionController.h:
* UIProcess/mac/WKImmediateActionController.mm:
(-[WKImmediateActionController willDestroyView:]):
(-[WKImmediateActionController _cancelImmediateAction]):
(-[WKImmediateActionController _cancelImmediateActionIfNeeded]):
(-[WKImmediateActionController _updateImmediateActionItem]):
Modified Paths
Diff
Modified: trunk/Source/WebKit/mac/ChangeLog (178937 => 178938)
--- trunk/Source/WebKit/mac/ChangeLog 2015-01-22 21:04:39 UTC (rev 178937)
+++ trunk/Source/WebKit/mac/ChangeLog 2015-01-22 21:40:02 UTC (rev 178938)
@@ -1,3 +1,21 @@
+2015-01-22 Beth Dakin <bda...@apple.com>
+
+ ibtoold crash below -[WebView close]
+ https://bugs.webkit.org/show_bug.cgi?id=140782
+ -and corresponding-
+ rdar://problem/19558472
+
+ Reviewed by Tim Horton.
+
+ Retain the NSImmediateActionGestureRecognizer. This should not be necessary, but
+ it is because interface builder is messing with our views.
+ * WebView/WebImmediateActionController.h:
+ * WebView/WebImmediateActionController.mm:
+ (-[WebImmediateActionController webViewClosed]):
+ (-[WebImmediateActionController _cancelImmediateAction]):
+ (-[WebImmediateActionController immediateActionRecognizerWillPrepare:]):
+ (-[WebImmediateActionController _updateImmediateActionItem]):
+
2015-01-21 Beth Dakin <bda...@apple.com>
Crash in QuickLook preview delegate method
Modified: trunk/Source/WebKit/mac/WebView/WebImmediateActionController.h (178937 => 178938)
--- trunk/Source/WebKit/mac/WebView/WebImmediateActionController.h 2015-01-22 21:04:39 UTC (rev 178937)
+++ trunk/Source/WebKit/mac/WebView/WebImmediateActionController.h 2015-01-22 21:40:02 UTC (rev 178938)
@@ -38,7 +38,7 @@
WebView *_webView;
WebImmediateActionType _type;
WebCore::HitTestResult _hitTestResult;
- NSImmediateActionGestureRecognizer *_immediateActionRecognizer;
+ RetainPtr<NSImmediateActionGestureRecognizer> _immediateActionRecognizer;
RetainPtr<DDActionContext> _currentActionContext;
BOOL _isShowingTextIndicator;
Modified: trunk/Source/WebKit/mac/WebView/WebImmediateActionController.mm (178937 => 178938)
--- trunk/Source/WebKit/mac/WebView/WebImmediateActionController.mm 2015-01-22 21:04:39 UTC (rev 178937)
+++ trunk/Source/WebKit/mac/WebView/WebImmediateActionController.mm 2015-01-22 21:40:02 UTC (rev 178938)
@@ -83,7 +83,7 @@
{
_webView = nil;
- id animationController = _immediateActionRecognizer.animationController;
+ id animationController = [_immediateActionRecognizer animationController];
if ([animationController isKindOfClass:NSClassFromString(@"QLPreviewMenuItem")]) {
QLPreviewMenuItem *menuItem = (QLPreviewMenuItem *)animationController;
menuItem.delegate = nil;
@@ -101,8 +101,8 @@
- (void)_cancelImmediateAction
{
// Reset the recognizer by turning it off and on again.
- _immediateActionRecognizer.enabled = NO;
- _immediateActionRecognizer.enabled = YES;
+ [_immediateActionRecognizer setEnabled:NO];
+ [_immediateActionRecognizer setEnabled:YES];
[self _clearImmediateActionState];
}
@@ -140,7 +140,7 @@
[self performHitTestAtPoint:locationInDocumentView];
[self _updateImmediateActionItem];
- if (!_immediateActionRecognizer.animationController) {
+ if (![_immediateActionRecognizer animationController]) {
// FIXME: We should be able to remove the dispatch_async when rdar://problem/19502927 is resolved.
dispatch_async(dispatch_get_main_queue(), ^{
[self _cancelImmediateAction];
@@ -241,9 +241,9 @@
return;
}
if (customClientAnimationController && [customClientAnimationController conformsToProtocol:@protocol(NSImmediateActionAnimationController)])
- _immediateActionRecognizer.animationController = (id <NSImmediateActionAnimationController>)customClientAnimationController;
+ [_immediateActionRecognizer setAnimationController:(id <NSImmediateActionAnimationController>)customClientAnimationController];
else
- _immediateActionRecognizer.animationController = defaultAnimationController;
+ [_immediateActionRecognizer setAnimationController:defaultAnimationController];
}
#pragma mark QLPreviewMenuItemDelegate implementation
Modified: trunk/Source/WebKit2/ChangeLog (178937 => 178938)
--- trunk/Source/WebKit2/ChangeLog 2015-01-22 21:04:39 UTC (rev 178937)
+++ trunk/Source/WebKit2/ChangeLog 2015-01-22 21:40:02 UTC (rev 178938)
@@ -1,3 +1,21 @@
+2015-01-22 Beth Dakin <bda...@apple.com>
+
+ ibtoold crash below -[WebView close]
+ https://bugs.webkit.org/show_bug.cgi?id=140782
+ -and corresponding-
+ rdar://problem/19558472
+
+ Reviewed by Tim Horton.
+
+ Retain the NSImmediateActionGestureRecognizer. This should not be necessary, but
+ it is because interface builder can mess with our views.
+ * UIProcess/mac/WKImmediateActionController.h:
+ * UIProcess/mac/WKImmediateActionController.mm:
+ (-[WKImmediateActionController willDestroyView:]):
+ (-[WKImmediateActionController _cancelImmediateAction]):
+ (-[WKImmediateActionController _cancelImmediateActionIfNeeded]):
+ (-[WKImmediateActionController _updateImmediateActionItem]):
+
2015-01-22 David Kilzer <ddkil...@apple.com>
[iOS] Fix iphoneos SDK builds for ios-ews queue
Modified: trunk/Source/WebKit2/UIProcess/mac/WKImmediateActionController.h (178937 => 178938)
--- trunk/Source/WebKit2/UIProcess/mac/WKImmediateActionController.h 2015-01-22 21:04:39 UTC (rev 178937)
+++ trunk/Source/WebKit2/UIProcess/mac/WKImmediateActionController.h 2015-01-22 21:40:02 UTC (rev 178938)
@@ -56,7 +56,7 @@
WebKit::ActionMenuHitTestResult _hitTestResult;
RefPtr<API::Object> _userData;
_WKImmediateActionType _type;
- NSImmediateActionGestureRecognizer *_immediateActionRecognizer;
+ RetainPtr<NSImmediateActionGestureRecognizer> _immediateActionRecognizer;
BOOL _hasActivatedActionContext;
RetainPtr<DDActionContext> _currentActionContext;
Modified: trunk/Source/WebKit2/UIProcess/mac/WKImmediateActionController.mm (178937 => 178938)
--- trunk/Source/WebKit2/UIProcess/mac/WKImmediateActionController.mm 2015-01-22 21:04:39 UTC (rev 178937)
+++ trunk/Source/WebKit2/UIProcess/mac/WKImmediateActionController.mm 2015-01-22 21:40:02 UTC (rev 178938)
@@ -76,7 +76,7 @@
_wkView = nil;
_hitTestResult = ActionMenuHitTestResult();
- id animationController = _immediateActionRecognizer.animationController;
+ id animationController = [_immediateActionRecognizer animationController];
if ([animationController isKindOfClass:NSClassFromString(@"QLPreviewMenuItem")]) {
QLPreviewMenuItem *menuItem = (QLPreviewMenuItem *)animationController;
menuItem.delegate = nil;
@@ -94,15 +94,15 @@
- (void)_cancelImmediateAction
{
// Reset the recognizer by turning it off and on again.
- _immediateActionRecognizer.enabled = NO;
- _immediateActionRecognizer.enabled = YES;
+ [_immediateActionRecognizer setEnabled:NO];
+ [_immediateActionRecognizer setEnabled:YES];
[self _clearImmediateActionState];
}
- (void)_cancelImmediateActionIfNeeded
{
- if (!_immediateActionRecognizer.animationController)
+ if (![_immediateActionRecognizer animationController])
[self _cancelImmediateAction];
if (_currentActionContext) {
@@ -268,9 +268,9 @@
return;
}
if (customClientAnimationController && [customClientAnimationController conformsToProtocol:@protocol(NSImmediateActionAnimationController)])
- _immediateActionRecognizer.animationController = (id <NSImmediateActionAnimationController>)customClientAnimationController;
+ [_immediateActionRecognizer setAnimationController:(id <NSImmediateActionAnimationController>)customClientAnimationController];
else
- _immediateActionRecognizer.animationController = defaultAnimationController;
+ [_immediateActionRecognizer setAnimationController:defaultAnimationController];
}
#pragma mark QLPreviewMenuItemDelegate implementation
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes