[SCM] WebKit Debian packaging branch, debian/experimental, updated. debian/1.3.8-1-1049-g2e11a8e

commit-queue at webkit.org commit-queue at webkit.org
Fri Jan 21 15:12:43 UTC 2011


The following commit has been merged in the debian/experimental branch:
commit 5fcd213d0e2e983a3510987fd07d5db1832c88f5
Author: commit-queue at webkit.org <commit-queue at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Sun Jan 9 11:22:47 2011 +0000

    2011-01-09  Xianzhu Wang  <phnixwxz at gmail.com>
    
            Reviewed by Darin Fisher.
    
            https://bugs.webkit.org/show_bug.cgi?id=41441
            createWindow method should only do window-creating without URL navigation.
            Let client APIs know which URL a new window will start with
    
            * loader/FrameLoader.cpp:
            (WebCore::createWindow):
            * page/ContextMenuController.cpp:
            (WebCore::openNewWindow):
            * page/DOMWindow.cpp:
            (WebCore::DOMWindow::createWindow):
    2011-01-09  Xianzhu Wang  <phnixwxz at gmail.com>
    
            Reviewed by Darin Fisher.
    
            https://bugs.webkit.org/show_bug.cgi?id=41441
            createWindow method should only do window-creating without URL navigation.
            Pass URL request to createView.
    
            * public/WebViewClient.h:
            (WebKit::WebViewClient::createView):
            * src/ChromeClientImpl.cpp:
            (WebKit::ChromeClientImpl::createWindow):
    2011-01-09  Xianzhu Wang <phnixwxz at gmail.com>
    
            Reviewed by Darin Fisher.
    
            https://bugs.webkit.org/show_bug.cgi?id=41441
            createWindow method should only do window-creating without URL navigation
    
            * WebCoreSupport/ChromeClientEfl.cpp:
            (WebCore::ChromeClientEfl::createWindow):
    2011-01-09  Xianzhu Wang <phnixwxz at gmail.com>
    
            Reviewed by Darin Fisher.
    
            https://bugs.webkit.org/show_bug.cgi?id=41441
            createWindow method should only do window-creating without URL navigation
    
            * WebCoreSupport/ChromeClientGtk.cpp:
            (WebKit::ChromeClient::createWindow):
    2011-01-09  Xianzhu Wang <phnixwxz at gmail.com>
    
            Reviewed by Darin Fisher.
    
            https://bugs.webkit.org/show_bug.cgi?id=41441
            createWindow method should only do window-creating without URL navigation
    
            * WebCoreSupport/WebChromeClient.mm:
            (WebChromeClient::createWindow):
    2011-01-09  Xianzhu Wang <phnixwxz at gmail.com>
    
            Reviewed by Darin Fisher.
    
            https://bugs.webkit.org/show_bug.cgi?id=41441
            createWindow method should only do window-creating without URL navigation
    
            * Api/qwebpage.cpp:
            (openNewWindow):
            * WebCoreSupport/ChromeClientQt.cpp:
            (WebCore::ChromeClientQt::createWindow):
    2011-01-09  Xianzhu Wang <phnixwxz at gmail.com>
    
            Reviewed by Darin Fisher.
    
            https://bugs.webkit.org/show_bug.cgi?id=41441
            createWindow method should only do window-creating without URL navigation
    
            * WebCoreSupport/WebChromeClient.cpp:
            (WebChromeClient::createWindow):
    2011-01-09  Xianzhu Wang <phnixwxz at gmail.com>
    
            Reviewed by Darin Fisher.
    
            https://bugs.webkit.org/show_bug.cgi?id=41441
            createWindow method should only do window-creating without URL navigation
    
            * WebKitSupport/ChromeClientWx.cpp:
            (WebCore::ChromeClientWx::createWindow):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@75349 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/Source/WebCore/ChangeLog b/Source/WebCore/ChangeLog
index 7cfd724..cfee7d3 100644
--- a/Source/WebCore/ChangeLog
+++ b/Source/WebCore/ChangeLog
@@ -1,3 +1,18 @@
+2011-01-09  Xianzhu Wang  <phnixwxz at gmail.com>
+
+        Reviewed by Darin Fisher.
+
+        https://bugs.webkit.org/show_bug.cgi?id=41441
+        createWindow method should only do window-creating without URL navigation.
+        Let client APIs know which URL a new window will start with
+
+        * loader/FrameLoader.cpp:
+        (WebCore::createWindow):
+        * page/ContextMenuController.cpp:
+        (WebCore::openNewWindow):
+        * page/DOMWindow.cpp:
+        (WebCore::DOMWindow::createWindow):
+
 2011-01-09  Dirk Schulze  <krit at webkit.org>
 
         Unreviewed sort of Xcode project file.
diff --git a/Source/WebCore/loader/FrameLoader.cpp b/Source/WebCore/loader/FrameLoader.cpp
index 3d864be..7f9e913 100644
--- a/Source/WebCore/loader/FrameLoader.cpp
+++ b/Source/WebCore/loader/FrameLoader.cpp
@@ -3474,8 +3474,6 @@ Frame* createWindow(Frame* openerFrame, Frame* lookupFrame, const FrameLoadReque
     if (!request.frameName().isEmpty() && request.frameName() != "_blank") {
         Frame* frame = lookupFrame->tree()->find(request.frameName());
         if (frame && openerFrame->loader()->shouldAllowNavigation(frame)) {
-            if (!request.resourceRequest().url().isEmpty())
-                frame->loader()->loadFrameRequest(request, false, false, 0, 0, SendReferrer);
             if (Page* page = frame->page())
                 page->chrome()->focus();
             created = false;
diff --git a/Source/WebCore/page/ChromeClient.h b/Source/WebCore/page/ChromeClient.h
index cbbaa87..67e1325 100644
--- a/Source/WebCore/page/ChromeClient.h
+++ b/Source/WebCore/page/ChromeClient.h
@@ -100,6 +100,8 @@ namespace WebCore {
         // Frame wants to create the new Page.  Also, the newly created window
         // should not be shown to the user until the ChromeClient of the newly
         // created Page has its show method called.
+        // The FrameLoadRequest parameter is only for ChromeClient to check if the
+        // request could be fulfilled.  The ChromeClient should not load the request.
         virtual Page* createWindow(Frame*, const FrameLoadRequest&, const WindowFeatures&, const NavigationAction&) = 0;
         virtual void show() = 0;
 
diff --git a/Source/WebCore/page/ContextMenuController.cpp b/Source/WebCore/page/ContextMenuController.cpp
index ac89db2..0909f70 100644
--- a/Source/WebCore/page/ContextMenuController.cpp
+++ b/Source/WebCore/page/ContextMenuController.cpp
@@ -158,9 +158,10 @@ static void openNewWindow(const KURL& urlToLoad, Frame* frame)
 {
     if (Page* oldPage = frame->page()) {
         FrameLoadRequest request(frame->document()->securityOrigin(), ResourceRequest(urlToLoad, frame->loader()->outgoingReferrer()));
-        WindowFeatures features;
-        if (Page* newPage = oldPage->chrome()->createWindow(frame, request, features, NavigationAction()))
+        if (Page* newPage = oldPage->chrome()->createWindow(frame, request, WindowFeatures(), NavigationAction())) {
+            newPage->mainFrame()->loader()->loadFrameRequest(request, false, false, 0, 0, SendReferrer);   
             newPage->chrome()->show();
+        }
     }
 }
 
diff --git a/Source/WebCore/page/DOMWindow.cpp b/Source/WebCore/page/DOMWindow.cpp
index 9988be4..02140d5 100644
--- a/Source/WebCore/page/DOMWindow.cpp
+++ b/Source/WebCore/page/DOMWindow.cpp
@@ -1696,17 +1696,11 @@ Frame* DOMWindow::createWindow(const String& urlString, const AtomicString& fram
 {
     Frame* activeFrame = activeWindow->frame();
 
-    // FIXME: It's much better for client API if a new window starts with a URL, here where we
-    // know what URL we are going to open. Unfortunately, this code passes the empty string
-    // for the URL, but there's a reason for that. Before loading we have to set up the opener,
-    // openedByDOM, and dialogArguments values. Also, to decide whether to use the URL we currently
-    // do an isInsecureScriptAccess call using the window we create, which can't be done before
-    // creating it. We'd have to resolve all those issues to pass the URL instead of an empty string.
-
     // For whatever reason, Firefox uses the first frame to determine the outgoingReferrer. We replicate that behavior here.
     String referrer = firstFrame->loader()->outgoingReferrer();
 
-    ResourceRequest request(KURL(), referrer);
+    KURL completedURL = urlString.isEmpty() ? KURL(ParsedURLString, "") : firstFrame->document()->completeURL(urlString);
+    ResourceRequest request(completedURL, referrer);
     FrameLoader::addHTTPOriginIfNeeded(request, firstFrame->loader()->outgoingOrigin());
     FrameLoadRequest frameRequest(activeWindow->securityOrigin(), request, frameName);
 
@@ -1726,8 +1720,6 @@ Frame* DOMWindow::createWindow(const String& urlString, const AtomicString& fram
     if (function)
         function(newFrame->domWindow(), functionContext);
 
-    KURL completedURL = urlString.isEmpty() ? KURL(ParsedURLString, "") : firstFrame->document()->completeURL(urlString);
-
     if (created)
         newFrame->loader()->changeLocation(activeWindow->securityOrigin(), completedURL, referrer, false, false);
     else if (!urlString.isEmpty()) {
diff --git a/WebKit/chromium/ChangeLog b/WebKit/chromium/ChangeLog
index 9ffc03c..9348814 100644
--- a/WebKit/chromium/ChangeLog
+++ b/WebKit/chromium/ChangeLog
@@ -1,3 +1,16 @@
+2011-01-09  Xianzhu Wang  <phnixwxz at gmail.com>
+
+        Reviewed by Darin Fisher.
+
+        https://bugs.webkit.org/show_bug.cgi?id=41441
+        createWindow method should only do window-creating without URL navigation.
+        Pass URL request to createView.
+
+        * public/WebViewClient.h:
+        (WebKit::WebViewClient::createView):
+        * src/ChromeClientImpl.cpp:
+        (WebKit::ChromeClientImpl::createWindow):
+
 2011-01-08  Adam Barth  <abarth at webkit.org>
 
         Update Chromium DEPS to pickup new GYP files.
diff --git a/WebKit/chromium/public/WebViewClient.h b/WebKit/chromium/public/WebViewClient.h
index 033e120..a07d340 100644
--- a/WebKit/chromium/public/WebViewClient.h
+++ b/WebKit/chromium/public/WebViewClient.h
@@ -64,6 +64,7 @@ class WebSpeechInputController;
 class WebSpeechInputListener;
 class WebStorageNamespace;
 class WebURL;
+class WebURLRequest;
 class WebView;
 class WebWidget;
 struct WebConsoleMessage;
@@ -82,10 +83,28 @@ public:
     // Create a new related WebView.  This method must clone its session storage
     // so any subsequent calls to createSessionStorageNamespace conform to the
     // WebStorage specification.
+    // FIXME: This method is DEPRECATED and should be removed once the new
+    // createView() (the next method) is implemented at Chromium side.
     virtual WebView* createView(WebFrame* creator,
                                 const WebWindowFeatures& features,
                                 const WebString& name) { return 0; }
 
+    // Create a new related WebView.  This method must clone its session storage
+    // so any subsequent calls to createSessionStorageNamespace conform to the
+    // WebStorage specification.
+    // The request parameter is only for the client to check if the request
+    // could be fulfilled.  The client should not load the request.
+    virtual WebView* createView(WebFrame* creator,
+                                const WebURLRequest& request,
+                                const WebWindowFeatures& features,
+                                const WebString& name) {
+        // FIXME: This is a temporary default implementation which calls the old
+        // version of createView(). Should change to 'return 0' when the old one
+        // is removed.
+        (void)request;
+        return createView(creator, features, name); 
+    }
+
     // Create a new WebPopupMenu.  In the second form, the client is
     // responsible for rendering the contents of the popup menu.
     virtual WebWidget* createPopupMenu(WebPopupType) { return 0; }
diff --git a/WebKit/chromium/src/ChromeClientImpl.cpp b/WebKit/chromium/src/ChromeClientImpl.cpp
index 28d78d0..2bf4b7a 100644
--- a/WebKit/chromium/src/ChromeClientImpl.cpp
+++ b/WebKit/chromium/src/ChromeClientImpl.cpp
@@ -263,18 +263,14 @@ Page* ChromeClientImpl::createWindow(
     if (!m_webView->client())
         return 0;
 
+    WrappedResourceRequest request;
+    if (!r.resourceRequest().isEmpty())
+        request.bind(r.resourceRequest());
     WebViewImpl* newView = static_cast<WebViewImpl*>(
-        m_webView->client()->createView(WebFrameImpl::fromFrame(frame), features, r.frameName()));
+        m_webView->client()->createView(WebFrameImpl::fromFrame(frame), request, features, r.frameName()));
     if (!newView)
         return 0;
 
-    // The request is empty when we are just being asked to open a blank window.
-    // This corresponds to window.open(""), for example.
-    if (!r.resourceRequest().isEmpty()) {
-        WrappedResourceRequest request(r.resourceRequest());
-        newView->mainFrame()->loadRequest(request);
-    }
-
     return newView->page();
 }
 
diff --git a/WebKit/efl/ChangeLog b/WebKit/efl/ChangeLog
index c9d6bfe..6219b41 100644
--- a/WebKit/efl/ChangeLog
+++ b/WebKit/efl/ChangeLog
@@ -1,3 +1,13 @@
+2011-01-09  Xianzhu Wang <phnixwxz at gmail.com>
+
+        Reviewed by Darin Fisher.
+
+        https://bugs.webkit.org/show_bug.cgi?id=41441
+        createWindow method should only do window-creating without URL navigation
+
+        * WebCoreSupport/ChromeClientEfl.cpp:
+        (WebCore::ChromeClientEfl::createWindow):
+
 2010-12-27  Rafael Antognolli  <antognolli at profusion.mobi>
 
         Reviewed by Kenneth Rohde Christiansen.
diff --git a/WebKit/efl/WebCoreSupport/ChromeClientEfl.cpp b/WebKit/efl/WebCoreSupport/ChromeClientEfl.cpp
index 1aac4ff..e9904c6 100644
--- a/WebKit/efl/WebCoreSupport/ChromeClientEfl.cpp
+++ b/WebKit/efl/WebCoreSupport/ChromeClientEfl.cpp
@@ -154,9 +154,6 @@ Page* ChromeClientEfl::createWindow(Frame*, const FrameLoadRequest& frameLoadReq
     if (!newView)
         return 0;
 
-    if (!frameLoadRequest.isEmpty())
-        ewk_view_uri_set(newView, frameLoadRequest.resourceRequest().url().string().utf8().data());
-
     return ewk_view_core_page_get(newView);
 }
 
diff --git a/WebKit/gtk/ChangeLog b/WebKit/gtk/ChangeLog
index e76c515..c4909b4 100644
--- a/WebKit/gtk/ChangeLog
+++ b/WebKit/gtk/ChangeLog
@@ -1,3 +1,13 @@
+2011-01-09  Xianzhu Wang <phnixwxz at gmail.com>
+
+        Reviewed by Darin Fisher.
+
+        https://bugs.webkit.org/show_bug.cgi?id=41441
+        createWindow method should only do window-creating without URL navigation
+
+        * WebCoreSupport/ChromeClientGtk.cpp:
+        (WebKit::ChromeClient::createWindow):
+
 2011-01-08  Martin Robinson  <mrobinson at igalia.com>
 
         GTK+ build fix. Adding missing headers to the source list, fixing make dist.
diff --git a/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp b/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp
index 7f39d37..8b6a483 100644
--- a/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp
+++ b/WebKit/gtk/WebCoreSupport/ChromeClientGtk.cpp
@@ -160,9 +160,6 @@ Page* ChromeClient::createWindow(Frame* frame, const FrameLoadRequest& frameLoad
     GRefPtr<WebKitWebWindowFeatures> webWindowFeatures(adoptGRef(kitNew(coreFeatures)));
     g_object_set(webView, "window-features", webWindowFeatures.get(), NULL);
 
-    if (!frameLoadRequest.isEmpty())
-        webkit_web_view_open(webView, frameLoadRequest.resourceRequest().url().string().utf8().data());
-
     return core(webView);
 }
 
diff --git a/WebKit/mac/ChangeLog b/WebKit/mac/ChangeLog
index 4aefad0..490bbbc 100644
--- a/WebKit/mac/ChangeLog
+++ b/WebKit/mac/ChangeLog
@@ -1,3 +1,13 @@
+2011-01-09  Xianzhu Wang <phnixwxz at gmail.com>
+
+        Reviewed by Darin Fisher.
+
+        https://bugs.webkit.org/show_bug.cgi?id=41441
+        createWindow method should only do window-creating without URL navigation
+
+        * WebCoreSupport/WebChromeClient.mm:
+        (WebChromeClient::createWindow):
+
 2011-01-08  Dan Bernstein  <mitz at apple.com>
 
         Try to fix the Leopard build.
diff --git a/WebKit/mac/WebCoreSupport/WebChromeClient.mm b/WebKit/mac/WebCoreSupport/WebChromeClient.mm
index a2c4ee5..74c513d 100644
--- a/WebKit/mac/WebCoreSupport/WebChromeClient.mm
+++ b/WebKit/mac/WebCoreSupport/WebChromeClient.mm
@@ -197,12 +197,8 @@ void WebChromeClient::focusedFrameChanged(Frame*)
 {
 }
 
-Page* WebChromeClient::createWindow(Frame* frame, const FrameLoadRequest& request, const WindowFeatures& features, const NavigationAction&)
+Page* WebChromeClient::createWindow(Frame* frame, const FrameLoadRequest&, const WindowFeatures& features, const NavigationAction&)
 {
-    NSURLRequest *URLRequest = nil;
-    if (!request.isEmpty())
-        URLRequest = request.resourceRequest().nsURLRequest();
-    
     id delegate = [m_webView UIDelegate];
     WebView *newWebView;
     
@@ -238,7 +234,7 @@ Page* WebChromeClient::createWindow(Frame* frame, const FrameLoadRequest& reques
         if (height)
             [dictFeatures setObject:height forKey:@"height"];
         
-        newWebView = CallUIDelegate(m_webView, @selector(webView:createWebViewWithRequest:windowFeatures:), URLRequest, dictFeatures);
+        newWebView = CallUIDelegate(m_webView, @selector(webView:createWebViewWithRequest:windowFeatures:), nil, dictFeatures);
         
         [dictFeatures release];
         [x release];
@@ -253,9 +249,9 @@ Page* WebChromeClient::createWindow(Frame* frame, const FrameLoadRequest& reques
         [fullscreen release];
         [dialog release];
     } else if (features.dialog && [delegate respondsToSelector:@selector(webView:createWebViewModalDialogWithRequest:)]) {
-        newWebView = CallUIDelegate(m_webView, @selector(webView:createWebViewModalDialogWithRequest:), URLRequest);
+        newWebView = CallUIDelegate(m_webView, @selector(webView:createWebViewModalDialogWithRequest:), nil);
     } else {
-        newWebView = CallUIDelegate(m_webView, @selector(webView:createWebViewWithRequest:), URLRequest);
+        newWebView = CallUIDelegate(m_webView, @selector(webView:createWebViewWithRequest:), nil);
     }
 
 #if USE(PLUGIN_HOST_PROCESS) && ENABLE(NETSCAPE_PLUGIN_API)
diff --git a/WebKit/qt/Api/qwebpage.cpp b/WebKit/qt/Api/qwebpage.cpp
index eab514b..687c7a3 100644
--- a/WebKit/qt/Api/qwebpage.cpp
+++ b/WebKit/qt/Api/qwebpage.cpp
@@ -2262,9 +2262,11 @@ static void openNewWindow(const QUrl& url, WebCore::Frame* frame)
     if (Page* oldPage = frame->page()) {
         WindowFeatures features;
         NavigationAction action;
-        if (Page* newPage = oldPage->chrome()->createWindow(frame,
-                frameLoadRequest(url, frame), features, action))
+        FrameLoadRequest request = frameLoadRequest(url, frame);
+        if (Page* newPage = oldPage->chrome()->createWindow(frame, request, features, action)) {
+            newPage->mainFrame()->loader()->loadFrameRequest(request, false, false, 0, 0, SendReferrer);
             newPage->chrome()->show();
+        }
     }
 }
 
diff --git a/WebKit/qt/ChangeLog b/WebKit/qt/ChangeLog
index b8c2215..d4e1b8c 100644
--- a/WebKit/qt/ChangeLog
+++ b/WebKit/qt/ChangeLog
@@ -1,3 +1,15 @@
+2011-01-09  Xianzhu Wang <phnixwxz at gmail.com>
+
+        Reviewed by Darin Fisher.
+
+        https://bugs.webkit.org/show_bug.cgi?id=41441
+        createWindow method should only do window-creating without URL navigation
+
+        * Api/qwebpage.cpp:
+        (openNewWindow):
+        * WebCoreSupport/ChromeClientQt.cpp:
+        (WebCore::ChromeClientQt::createWindow):
+
 2011-01-08  Benjamin Poulain  <benjamin.poulain at nokia.com>
 
         Reviewed by Kenneth Rohde Christiansen.
diff --git a/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp b/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp
index a26d6e2..6116ae7 100644
--- a/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp
+++ b/WebKit/qt/WebCoreSupport/ChromeClientQt.cpp
@@ -182,10 +182,7 @@ Page* ChromeClientQt::createWindow(Frame*, const FrameLoadRequest& request, cons
 
     // A call to QWebPage::mainFrame() implicitly creates the main frame.
     // Make sure it exists, as WebCore expects it when returning from this call.
-    QWebFrame* mainFrame = newPage->mainFrame();
-
-    if (!request.isEmpty())
-        mainFrame->load(request.resourceRequest().url());
+    newPage->mainFrame();
     return newPage->d->page;
 }
 
diff --git a/WebKit/win/ChangeLog b/WebKit/win/ChangeLog
index de26c59..e07224a 100644
--- a/WebKit/win/ChangeLog
+++ b/WebKit/win/ChangeLog
@@ -1,3 +1,13 @@
+2011-01-09  Xianzhu Wang <phnixwxz at gmail.com>
+
+        Reviewed by Darin Fisher.
+
+        https://bugs.webkit.org/show_bug.cgi?id=41441
+        createWindow method should only do window-creating without URL navigation
+
+        * WebCoreSupport/WebChromeClient.cpp:
+        (WebChromeClient::createWindow):
+
 2011-01-07  Adam Barth  <abarth at webkit.org>
 
         Rubber-stamped by Eric Seidel.
diff --git a/WebKit/win/WebCoreSupport/WebChromeClient.cpp b/WebKit/win/WebCoreSupport/WebChromeClient.cpp
index 9446e15..3e73c62 100644
--- a/WebKit/win/WebCoreSupport/WebChromeClient.cpp
+++ b/WebKit/win/WebCoreSupport/WebChromeClient.cpp
@@ -196,13 +196,14 @@ static COMPtr<IPropertyBag> createWindowFeaturesPropertyBag(const WindowFeatures
     return COMPtr<IPropertyBag>(AdoptCOM, COMPropertyBag<COMVariant>::adopt(map));
 }
 
-Page* WebChromeClient::createWindow(Frame*, const FrameLoadRequest& frameLoadRequest, const WindowFeatures& features, const NavigationAction&)
+Page* WebChromeClient::createWindow(Frame*, const FrameLoadRequest&, const WindowFeatures& features, const NavigationAction&)
 {
     COMPtr<IWebUIDelegate> delegate = uiDelegate();
     if (!delegate)
         return 0;
 
-    COMPtr<IWebMutableURLRequest> request(AdoptCOM, WebMutableURLRequest::createInstance(frameLoadRequest.resourceRequest()));
+    // Just create a blank request because createWindow() is only required to create window but not to load URL.
+    COMPtr<IWebMutableURLRequest> request(AdoptCOM, WebMutableURLRequest::createInstance());
 
     COMPtr<IWebUIDelegatePrivate2> delegatePrivate(Query, delegate);
     if (delegatePrivate) {
diff --git a/WebKit/wx/ChangeLog b/WebKit/wx/ChangeLog
index e1a6dad..e175b92 100644
--- a/WebKit/wx/ChangeLog
+++ b/WebKit/wx/ChangeLog
@@ -1,3 +1,13 @@
+2011-01-09  Xianzhu Wang <phnixwxz at gmail.com>
+
+        Reviewed by Darin Fisher.
+
+        https://bugs.webkit.org/show_bug.cgi?id=41441
+        createWindow method should only do window-creating without URL navigation
+
+        * WebKitSupport/ChromeClientWx.cpp:
+        (WebCore::ChromeClientWx::createWindow):
+
 2011-01-07  Adam Barth  <abarth at webkit.org>
 
         Rubber-stamped by Eric Seidel.
diff --git a/WebKit/wx/WebKitSupport/ChromeClientWx.cpp b/WebKit/wx/WebKitSupport/ChromeClientWx.cpp
index 65f0eea..c89bb17 100644
--- a/WebKit/wx/WebKitSupport/ChromeClientWx.cpp
+++ b/WebKit/wx/WebKitSupport/ChromeClientWx.cpp
@@ -141,11 +141,10 @@ void ChromeClientWx::focusedFrameChanged(Frame*)
 {
 }
 
-Page* ChromeClientWx::createWindow(Frame*, const FrameLoadRequest& request, const WindowFeatures& features, const NavigationAction&)
+Page* ChromeClientWx::createWindow(Frame*, const FrameLoadRequest&, const WindowFeatures& features, const NavigationAction&)
 {
     Page* myPage = 0;
     wxWebViewNewWindowEvent wkEvent(m_webView);
-    wkEvent.SetURL(request.resourceRequest().url().string());
     
     wxWebKitWindowFeatures wkFeatures = wkFeaturesforWindowFeatures(features);
     wkEvent.SetWindowFeatures(wkFeatures);

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list