Title: [122284] trunk/Source/WebKit/chromium
Revision
122284
Author
ad...@chromium.org
Date
2012-07-10 18:13:16 -0700 (Tue, 10 Jul 2012)

Log Message

[Chromium] REGRESSION(r121909): m_currentInputEvent never set
https://bugs.webkit.org/show_bug.cgi?id=90914

Reviewed by Abhishek Arya.

The always-null m_currentInputEvent causes a regression when
middle-clicking on a link that calls window.open('...', '_blank');
that new tab should open in the background, but instead opens in the
foreground (see code in ChromeClientImpl::getNavigationPolicy()).

Fix usage of TemporaryChange to specify a local variable name so that
m_currentInputEvent is actually set for the duration of handleInputEvent.

* src/WebViewImpl.cpp:
(WebKit::WebViewImpl::handleInputEvent): Name the TemporaryChange instance.

Modified Paths

Diff

Modified: trunk/Source/WebKit/chromium/ChangeLog (122283 => 122284)


--- trunk/Source/WebKit/chromium/ChangeLog	2012-07-11 01:07:49 UTC (rev 122283)
+++ trunk/Source/WebKit/chromium/ChangeLog	2012-07-11 01:13:16 UTC (rev 122284)
@@ -1,3 +1,21 @@
+2012-07-10  Adam Klein  <ad...@chromium.org>
+
+        [Chromium] REGRESSION(r121909): m_currentInputEvent never set
+        https://bugs.webkit.org/show_bug.cgi?id=90914
+
+        Reviewed by Abhishek Arya.
+
+        The always-null m_currentInputEvent causes a regression when
+        middle-clicking on a link that calls window.open('...', '_blank');
+        that new tab should open in the background, but instead opens in the
+        foreground (see code in ChromeClientImpl::getNavigationPolicy()).
+
+        Fix usage of TemporaryChange to specify a local variable name so that
+        m_currentInputEvent is actually set for the duration of handleInputEvent.
+
+        * src/WebViewImpl.cpp:
+        (WebKit::WebViewImpl::handleInputEvent): Name the TemporaryChange instance.
+
 2012-07-10  Adam Barth  <aba...@webkit.org>
 
         WebCore::Settings for Hixie76 WebSocket protocol doesn't do anything and should be removed

Modified: trunk/Source/WebKit/chromium/src/WebViewImpl.cpp (122283 => 122284)


--- trunk/Source/WebKit/chromium/src/WebViewImpl.cpp	2012-07-11 01:07:49 UTC (rev 122283)
+++ trunk/Source/WebKit/chromium/src/WebViewImpl.cpp	2012-07-11 01:13:16 UTC (rev 122284)
@@ -1761,7 +1761,7 @@
     if (m_ignoreInputEvents)
         return false;
 
-    TemporaryChange<const WebInputEvent*>(m_currentInputEvent, &inputEvent);
+    TemporaryChange<const WebInputEvent*> currentEventChange(m_currentInputEvent, &inputEvent);
 
 #if ENABLE(POINTER_LOCK)
     if (isPointerLocked() && WebInputEvent::isMouseEventType(inputEvent.type)) {
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to