Title: [134654] trunk/Source/WebKit/chromium
Revision
134654
Author
[email protected]
Date
2012-11-14 12:52:56 -0800 (Wed, 14 Nov 2012)

Log Message

[chromium] Don't let shift-click turn popup into tab.
https://bugs.webkit.org/show_bug.cgi?id=102254

Reviewed by Adam Barth.

Change http://trac.webkit.org/changeset/132399 broke shift-click on
compose in GMail.  We didn't want to change behavior that people were
depending on, and this quick fix seems a good compromise between user
intent and developer intent.

* src/ChromeClientImpl.cpp:
(WebKit::updatePolicyForEvent):

Modified Paths

Diff

Modified: trunk/Source/WebKit/chromium/ChangeLog (134653 => 134654)


--- trunk/Source/WebKit/chromium/ChangeLog	2012-11-14 20:51:45 UTC (rev 134653)
+++ trunk/Source/WebKit/chromium/ChangeLog	2012-11-14 20:52:56 UTC (rev 134654)
@@ -1,3 +1,18 @@
+2012-11-14  Eric Uhrhane  <[email protected]>
+
+        [chromium] Don't let shift-click turn popup into tab.
+        https://bugs.webkit.org/show_bug.cgi?id=102254
+
+        Reviewed by Adam Barth.
+
+        Change http://trac.webkit.org/changeset/132399 broke shift-click on
+        compose in GMail.  We didn't want to change behavior that people were
+        depending on, and this quick fix seems a good compromise between user
+        intent and developer intent.
+
+        * src/ChromeClientImpl.cpp:
+        (WebKit::updatePolicyForEvent):
+
 2012-11-14  Mike Reed  <[email protected]>
 
         Dynamically create canvas in Setup() to avoid calling DEPRECATED function setDevice().

Modified: trunk/Source/WebKit/chromium/src/ChromeClientImpl.cpp (134653 => 134654)


--- trunk/Source/WebKit/chromium/src/ChromeClientImpl.cpp	2012-11-14 20:51:45 UTC (rev 134653)
+++ trunk/Source/WebKit/chromium/src/ChromeClientImpl.cpp	2012-11-14 20:52:56 UTC (rev 134654)
@@ -293,7 +293,12 @@
     bool alt = mouseEvent->modifiers & WebMouseEvent::AltKey;
     bool meta = mouseEvent->modifiers & WebMouseEvent::MetaKey;
 
-    WebViewImpl::navigationPolicyFromMouseEvent(buttonNumber, ctrl, shift, alt, meta, policy);
+    WebNavigationPolicy userPolicy = *policy;
+    WebViewImpl::navigationPolicyFromMouseEvent(buttonNumber, ctrl, shift, alt, meta, &userPolicy);
+    // User and app agree that we want a new window; let the app override the decorations.
+    if (userPolicy == WebNavigationPolicyNewWindow && *policy == WebNavigationPolicyNewPopup)
+        return;
+    *policy = userPolicy;
 }
 
 WebNavigationPolicy ChromeClientImpl::getNavigationPolicy()
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to