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

Diff

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


--- branches/safari-600.4-branch/Source/WebKit/mac/ChangeLog	2015-01-28 05:53:53 UTC (rev 179242)
+++ branches/safari-600.4-branch/Source/WebKit/mac/ChangeLog	2015-01-28 07:41:46 UTC (rev 179243)
@@ -1,3 +1,25 @@
+2015-01-27  Babak Shafiei  <[email protected]>
+
+        Merge r179230.
+
+    2015-01-27  Beth Dakin  <[email protected]>
+
+            Immediate action gesture recognizer still doesn't work well with IB
+            https://bugs.webkit.org/show_bug.cgi?id=140967
+            -and corresponding-
+            rdar://problem/19621509
+
+            Reviewed by Tim Horton.
+
+            We should add (or remove) the gesture recognizer in viewDidMoveToWindow because 
+            initWithFrame it too early and IB might mess with it.
+            * WebView/WebImmediateActionController.h:
+            * WebView/WebImmediateActionController.mm:
+            (-[WebImmediateActionController immediateActionRecognizer]):
+            * WebView/WebView.mm:
+            (-[WebView _commonInitializationWithFrameName:groupName:]):
+            (-[WebView viewDidMoveToWindow]):
+
 2015-01-26  Matthew Hanson  <[email protected]>
 
         Merge r179014. rdar://problem/19573674

Modified: branches/safari-600.4-branch/Source/WebKit/mac/WebView/WebImmediateActionController.h (179242 => 179243)


--- branches/safari-600.4-branch/Source/WebKit/mac/WebView/WebImmediateActionController.h	2015-01-28 05:53:53 UTC (rev 179242)
+++ branches/safari-600.4-branch/Source/WebKit/mac/WebView/WebImmediateActionController.h	2015-01-28 07:41:46 UTC (rev 179243)
@@ -53,6 +53,8 @@
 - (void)webView:(WebView *)webView willHandleMouseDown:(NSEvent *)event;
 - (void)webView:(WebView *)webView didHandleScrollWheel:(NSEvent *)event;
 
+- (NSImmediateActionGestureRecognizer *)immediateActionRecognizer;
+
 @end
 
 #endif // PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101000

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


--- branches/safari-600.4-branch/Source/WebKit/mac/WebView/WebImmediateActionController.mm	2015-01-28 05:53:53 UTC (rev 179242)
+++ branches/safari-600.4-branch/Source/WebKit/mac/WebView/WebImmediateActionController.mm	2015-01-28 07:41:46 UTC (rev 179243)
@@ -104,6 +104,11 @@
     [self _clearImmediateActionState];
 }
 
+- (NSImmediateActionGestureRecognizer *)immediateActionRecognizer
+{
+    return _immediateActionRecognizer.get();
+}
+
 - (void)_cancelImmediateAction
 {
     // Reset the recognizer by turning it off and on again.

Modified: branches/safari-600.4-branch/Source/WebKit/mac/WebView/WebView.mm (179242 => 179243)


--- branches/safari-600.4-branch/Source/WebKit/mac/WebView/WebView.mm	2015-01-28 05:53:53 UTC (rev 179242)
+++ branches/safari-600.4-branch/Source/WebKit/mac/WebView/WebView.mm	2015-01-28 07:41:46 UTC (rev 179243)
@@ -902,7 +902,6 @@
         RetainPtr<NSImmediateActionGestureRecognizer> recognizer = adoptNS([(NSImmediateActionGestureRecognizer *)[gestureClass alloc] initWithTarget:nil action:NULL]);
         _private->immediateActionController = [[WebImmediateActionController alloc] initWithWebView:self recognizer:recognizer.get()];
         [recognizer setDelegate:_private->immediateActionController];
-        [self addGestureRecognizer:recognizer.get()];
     }
 #endif
 
@@ -5300,6 +5299,17 @@
     _private->page->setDeviceScaleFactor([self _deviceScaleFactor]);
 #endif
 
+#if PLATFORM(MAC) && __MAC_OS_X_VERSION_MIN_REQUIRED >= 101000
+    if (_private->immediateActionController) {
+        NSImmediateActionGestureRecognizer *recognizer = [_private->immediateActionController immediateActionRecognizer];
+        if ([self window]) {
+            if (![[self gestureRecognizers] containsObject:recognizer])
+                [self addGestureRecognizer:recognizer];
+        } else
+            [self removeGestureRecognizer:recognizer];
+    }
+#endif
+
     [self _updateActiveState];
     [self _updateVisibilityState];
 }

Modified: branches/safari-600.4-branch/Source/WebKit2/ChangeLog (179242 => 179243)


--- branches/safari-600.4-branch/Source/WebKit2/ChangeLog	2015-01-28 05:53:53 UTC (rev 179242)
+++ branches/safari-600.4-branch/Source/WebKit2/ChangeLog	2015-01-28 07:41:46 UTC (rev 179243)
@@ -1,3 +1,22 @@
+2015-01-27  Babak Shafiei  <[email protected]>
+
+        Merge r179230.
+
+    2015-01-27  Beth Dakin  <[email protected]>
+
+            Immediate action gesture recognizer still doesn't work well with IB
+            https://bugs.webkit.org/show_bug.cgi?id=140967
+            -and corresponding-
+            rdar://problem/19621509
+
+            Reviewed by Tim Horton.
+
+            We should add (or remove) the gesture recognizer in viewDidMoveToWindow because 
+            initWithFrame it too early and IB might mess with it.
+            * UIProcess/API/mac/WKView.mm:
+            (-[WKView viewDidMoveToWindow]):
+            (-[WKView initWithFrame:processPool:configuration:webView:]):
+
 2015-01-27  Matthew Hanson  <[email protected]>
 
         Merge r179129. rdar://problem/19489518

Modified: branches/safari-600.4-branch/Source/WebKit2/UIProcess/API/mac/WKView.mm (179242 => 179243)


--- branches/safari-600.4-branch/Source/WebKit2/UIProcess/API/mac/WKView.mm	2015-01-28 05:53:53 UTC (rev 179242)
+++ branches/safari-600.4-branch/Source/WebKit2/UIProcess/API/mac/WKView.mm	2015-01-28 07:41:46 UTC (rev 179243)
@@ -2568,6 +2568,11 @@
         }
 
         [self _accessibilityRegisterUIProcessTokens];
+
+#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101000
+        if (_data->_immediateActionGestureRecognizer && ![[self gestureRecognizers] containsObject:_data->_immediateActionGestureRecognizer.get()] && !_data->_ignoresNonWheelEvents)
+            [self addGestureRecognizer:_data->_immediateActionGestureRecognizer.get()];
+#endif
     } else {
         ViewState::Flags viewStateChanges = ViewState::WindowIsActive | ViewState::IsVisible;
         if ([self isDeferringViewInWindowChanges])
@@ -2580,6 +2585,11 @@
         _data->_flagsChangedEventMonitor = nil;
 
         [self _dismissContentRelativeChildWindows];
+
+#if __MAC_OS_X_VERSION_MIN_REQUIRED >= 101000
+        if (_data->_immediateActionGestureRecognizer)
+            [self removeGestureRecognizer:_data->_immediateActionGestureRecognizer.get()];
+#endif
     }
 
     _data->_page->setIntrinsicDeviceScaleFactor([self _intrinsicDeviceScaleFactor]);
@@ -3624,7 +3634,6 @@
         _data->_immediateActionGestureRecognizer = adoptNS([(NSImmediateActionGestureRecognizer *)[gestureClass alloc] initWithTarget:nil action:NULL]);
         _data->_immediateActionController = adoptNS([[WKImmediateActionController alloc] initWithPage:*_data->_page view:self recognizer:_data->_immediateActionGestureRecognizer.get()]);
         [_data->_immediateActionGestureRecognizer setDelegate:_data->_immediateActionController.get()];
-        [self addGestureRecognizer:_data->_immediateActionGestureRecognizer.get()];
     }
 #endif
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to