Reviewed by Eric Seidel.
authortreat <treat@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 2 Oct 2007 16:21:57 +0000 (16:21 +0000)
committertreat <treat@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 2 Oct 2007 16:21:57 +0000 (16:21 +0000)
Open the requested url on the newly created window.
Implement createModalDialog and provide new API for this.
Patch by M. Mehdi Salem Naraghi (momesana) with additions by me.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@25924 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebKitQt/Api/qwebpage.cpp
WebKitQt/Api/qwebpage.h
WebKitQt/ChangeLog
WebKitQt/WebCoreSupport/ChromeClientQt.cpp

index d47afe9..25a59be 100644 (file)
@@ -264,6 +264,11 @@ QWebPage *QWebPage::createWindow()
     return 0;
 }
 
+QWebPage *QWebPage::createModalDialog()
+{
+    return 0;
+}
+
 QObject *QWebPage::createPlugin(const QString &classid, const QUrl &url, const QStringList &paramNames, const QStringList &paramValues)
 {
     Q_UNUSED(classid)
index 79162ea..19424ad 100644 (file)
@@ -177,6 +177,7 @@ private slots:
 protected:
     virtual QWebFrame *createFrame(QWebFrame *parentFrame, QWebFrameData *frameData);
     virtual QWebPage *createWindow();
+    virtual QWebPage *createModalDialog();
     virtual QObject *createPlugin(const QString &classid, const QUrl &url, const QStringList &paramNames, const QStringList &paramValues);
 
     virtual NavigationRequestResponse navigationRequested(QWebFrame *frame, const QWebNetworkRequest &request, NavigationType type);
index 6da123a..ee6df0b 100644 (file)
@@ -1,3 +1,18 @@
+2007-10-02  Adam Treat  <treat@kde.org>
+
+        Reviewed by Eric Seidel.
+
+        Open the requested url on the newly created window.
+        Implement createModalDialog and provide new API for this.
+        Patch by M. Mehdi Salem Naraghi (momesana) with additions by me.
+
+        * Api/qwebpage.cpp:
+        (QWebPage::createModalDialog):
+        * Api/qwebpage.h:
+        * WebCoreSupport/ChromeClientQt.cpp:
+        (WebCore::ChromeClientQt::createWindow):
+        (WebCore::ChromeClientQt::createModalDialog):
+
 2007-10-02  Lars Knoll  <lars@trolltech.com>
 
         Reviewed by bdash.
index a76d0cf..ee516f2 100644 (file)
@@ -122,14 +122,20 @@ Page* ChromeClientQt::createWindow(Frame*, const FrameLoadRequest& request)
     QWebPage *newPage = m_webPage->createWindow();
     if (!newPage)
         return 0;
+    KURL url = request.resourceRequest().url();
+    newPage->open(QUrl(url.prettyURL()));
     return newPage->d->page;
 }
 
 
-Page* ChromeClientQt::createModalDialog(Frame*, const FrameLoadRequest&)
+Page* ChromeClientQt::createModalDialog(Frame*, const FrameLoadRequest& request)
 {
-    notImplemented();
-    return 0;
+    QWebPage *newPage = m_webPage->createModalDialog();
+    if (!newPage)
+        return 0;
+    KURL url = request.resourceRequest().url();
+    newPage->open(QUrl(url.prettyURL()));
+    return newPage->d->page;
 }