Title: [111721] trunk/Source/WebKit2
Revision
111721
Author
[email protected]
Date
2012-03-22 10:22:38 -0700 (Thu, 22 Mar 2012)

Log Message

[Qt][WK2] Pass Origin information to the DatabaseQuotaDialogContextObject https://bugs.webkit.org/show_bug.cgi?id=81910

Reviewed by Simon Hausmann.

* UIProcess/API/qt/qquickwebview.cpp:
(QQuickWebViewPrivate::exceededDatabaseQuota):
* UIProcess/API/qt/qquickwebview_p_p.h:
(QQuickWebViewPrivate):
* UIProcess/qt/QtDialogRunner.cpp:
(DatabaseQuotaDialogContextObject):
(DatabaseQuotaDialogContextObject::DatabaseQuotaDialogContextObject):
(DatabaseQuotaDialogContextObject::securityOrigin):
(QtDialogRunner::initForDatabaseQuotaDialog):
* UIProcess/qt/QtDialogRunner.h:
(QtDialogRunner):
* UIProcess/qt/QtWebPageUIClient.cpp:
(QtWebPageUIClient::exceededDatabaseQuota):
* UIProcess/qt/QtWebPageUIClient.h:

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (111720 => 111721)


--- trunk/Source/WebKit2/ChangeLog	2012-03-22 17:16:30 UTC (rev 111720)
+++ trunk/Source/WebKit2/ChangeLog	2012-03-22 17:22:38 UTC (rev 111721)
@@ -1,3 +1,25 @@
+2012-03-22  Alexander Færøy  <[email protected]>
+
+        [Qt][WK2] Pass Origin information to the DatabaseQuotaDialogContextObject
+        https://bugs.webkit.org/show_bug.cgi?id=81910
+
+        Reviewed by Simon Hausmann.
+
+        * UIProcess/API/qt/qquickwebview.cpp:
+        (QQuickWebViewPrivate::exceededDatabaseQuota):
+        * UIProcess/API/qt/qquickwebview_p_p.h:
+        (QQuickWebViewPrivate):
+        * UIProcess/qt/QtDialogRunner.cpp:
+        (DatabaseQuotaDialogContextObject):
+        (DatabaseQuotaDialogContextObject::DatabaseQuotaDialogContextObject):
+        (DatabaseQuotaDialogContextObject::securityOrigin):
+        (QtDialogRunner::initForDatabaseQuotaDialog):
+        * UIProcess/qt/QtDialogRunner.h:
+        (QtDialogRunner):
+        * UIProcess/qt/QtWebPageUIClient.cpp:
+        (QtWebPageUIClient::exceededDatabaseQuota):
+        * UIProcess/qt/QtWebPageUIClient.h:
+
 2012-03-22  Jocelyn Turcotte  <[email protected]>
 
         [Qt] Don't resume the suspended page if the user is continuously flicking.

Modified: trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp (111720 => 111721)


--- trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp	2012-03-22 17:16:30 UTC (rev 111720)
+++ trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview.cpp	2012-03-22 17:22:38 UTC (rev 111721)
@@ -399,14 +399,14 @@
 
 }
 
-quint64 QQuickWebViewPrivate::exceededDatabaseQuota(const QString& databaseName, const QString& displayName, quint64 currentQuota, quint64 currentOriginUsage, quint64 currentDatabaseUsage, quint64 expectedUsage)
+quint64 QQuickWebViewPrivate::exceededDatabaseQuota(const QString& databaseName, const QString& displayName, WKSecurityOriginRef securityOrigin, quint64 currentQuota, quint64 currentOriginUsage, quint64 currentDatabaseUsage, quint64 expectedUsage)
 {
     if (!databaseQuotaDialog)
         return 0;
 
     Q_Q(QQuickWebView);
     QtDialogRunner dialogRunner;
-    if (!dialogRunner.initForDatabaseQuotaDialog(databaseQuotaDialog, q, databaseName, displayName, currentQuota, currentOriginUsage, currentDatabaseUsage, expectedUsage))
+    if (!dialogRunner.initForDatabaseQuotaDialog(databaseQuotaDialog, q, databaseName, displayName, securityOrigin, currentQuota, currentOriginUsage, currentDatabaseUsage, expectedUsage))
         return 0;
 
     execDialogRunner(dialogRunner);

Modified: trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview_p_p.h (111720 => 111721)


--- trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview_p_p.h	2012-03-22 17:16:30 UTC (rev 111720)
+++ trunk/Source/WebKit2/UIProcess/API/qt/qquickwebview_p_p.h	2012-03-22 17:22:38 UTC (rev 111721)
@@ -96,7 +96,7 @@
     void _q_onIconChangedForPageURL(const QUrl& pageURL, const QUrl& iconURLString);
 
     void chooseFiles(WKOpenPanelResultListenerRef, const QStringList& selectedFileNames, QtWebPageUIClient::FileChooserType);
-    quint64 exceededDatabaseQuota(const QString& databaseName, const QString& displayName, quint64 currentQuota, quint64 currentOriginUsage, quint64 currentDatabaseUsage, quint64 expectedUsage);
+    quint64 exceededDatabaseQuota(const QString& databaseName, const QString& displayName, WKSecurityOriginRef securityOrigin, quint64 currentQuota, quint64 currentOriginUsage, quint64 currentDatabaseUsage, quint64 expectedUsage);
     void runJavaScriptAlert(const QString&);
     bool runJavaScriptConfirm(const QString&);
     QString runJavaScriptPrompt(const QString&, const QString& defaultValue, bool& ok);

Modified: trunk/Source/WebKit2/UIProcess/qt/QtDialogRunner.cpp (111720 => 111721)


--- trunk/Source/WebKit2/UIProcess/qt/QtDialogRunner.cpp	2012-03-22 17:16:30 UTC (rev 111720)
+++ trunk/Source/WebKit2/UIProcess/qt/QtDialogRunner.cpp	2012-03-22 17:22:38 UTC (rev 111721)
@@ -20,6 +20,9 @@
 
 #include "config.h"
 #include "QtDialogRunner.h"
+#include "WKRetainPtr.h"
+#include "WKStringQt.h"
+#include "qwebpermissionrequest_p.h"
 
 #include <QtDeclarative/QDeclarativeComponent>
 #include <QtDeclarative/QDeclarativeContext>
@@ -190,9 +193,10 @@
     Q_PROPERTY(quint64 currentOriginUsage READ currentOriginUsage CONSTANT)
     Q_PROPERTY(quint64 currentDatabaseUsage READ currentDatabaseUsage CONSTANT)
     Q_PROPERTY(quint64 expectedUsage READ expectedUsage CONSTANT)
+    Q_PROPERTY(QtWebSecurityOrigin* origin READ securityOrigin CONSTANT)
 
 public:
-    DatabaseQuotaDialogContextObject(const QString& databaseName, const QString& displayName, quint64 currentQuota, quint64 currentOriginUsage, quint64 currentDatabaseUsage, quint64 expectedUsage)
+    DatabaseQuotaDialogContextObject(const QString& databaseName, const QString& displayName, WKSecurityOriginRef securityOrigin, quint64 currentQuota, quint64 currentOriginUsage, quint64 currentDatabaseUsage, quint64 expectedUsage)
         : QObject()
         , m_databaseName(databaseName)
         , m_displayName(displayName)
@@ -201,6 +205,12 @@
         , m_currentDatabaseUsage(currentDatabaseUsage)
         , m_expectedUsage(expectedUsage)
     {
+        WKRetainPtr<WKStringRef> scheme = adoptWK(WKSecurityOriginCopyProtocol(securityOrigin));
+        WKRetainPtr<WKStringRef> host = adoptWK(WKSecurityOriginCopyHost(securityOrigin));
+
+        m_securityOrigin.setScheme(WKStringCopyQString(scheme.get()));
+        m_securityOrigin.setHost(WKStringCopyQString(host.get()));
+        m_securityOrigin.setPort(static_cast<int>(WKSecurityOriginGetPort(securityOrigin)));
     }
 
     QString databaseName() const { return m_databaseName; }
@@ -209,6 +219,7 @@
     quint64 currentOriginUsage() const { return m_currentOriginUsage; }
     quint64 currentDatabaseUsage() const { return m_currentDatabaseUsage; }
     quint64 expectedUsage() const { return m_expectedUsage; }
+    QtWebSecurityOrigin* securityOrigin() { return &m_securityOrigin; }
 
 public slots:
     void accept(quint64 size) { emit accepted(size); }
@@ -225,6 +236,7 @@
     quint64 m_currentOriginUsage;
     quint64 m_currentDatabaseUsage;
     quint64 m_expectedUsage;
+    QtWebSecurityOrigin m_securityOrigin;
 };
 
 bool QtDialogRunner::initForAlert(QDeclarativeComponent* component, QQuickItem* dialogParent, const QString& message)
@@ -313,9 +325,9 @@
     return true;
 }
 
-bool QtDialogRunner::initForDatabaseQuotaDialog(QDeclarativeComponent* component, QQuickItem* dialogParent, const QString& databaseName, const QString& displayName, quint64 currentQuota, quint64 currentOriginUsage, quint64 currentDatabaseUsage, quint64 expectedUsage)
+bool QtDialogRunner::initForDatabaseQuotaDialog(QDeclarativeComponent* component, QQuickItem* dialogParent, const QString& databaseName, const QString& displayName, WKSecurityOriginRef securityOrigin, quint64 currentQuota, quint64 currentOriginUsage, quint64 currentDatabaseUsage, quint64 expectedUsage)
 {
-    DatabaseQuotaDialogContextObject* contextObject = new DatabaseQuotaDialogContextObject(databaseName, displayName, currentQuota, currentOriginUsage, currentDatabaseUsage, expectedUsage);
+    DatabaseQuotaDialogContextObject* contextObject = new DatabaseQuotaDialogContextObject(databaseName, displayName, securityOrigin, currentQuota, currentOriginUsage, currentDatabaseUsage, expectedUsage);
     if (!createDialog(component, dialogParent, contextObject))
         return false;
 

Modified: trunk/Source/WebKit2/UIProcess/qt/QtDialogRunner.h (111720 => 111721)


--- trunk/Source/WebKit2/UIProcess/qt/QtDialogRunner.h	2012-03-22 17:16:30 UTC (rev 111720)
+++ trunk/Source/WebKit2/UIProcess/qt/QtDialogRunner.h	2012-03-22 17:22:38 UTC (rev 111721)
@@ -21,6 +21,7 @@
 #ifndef QtDialogRunner_h
 #define QtDialogRunner_h
 
+#include "WKSecurityOrigin.h"
 #include <QtCore/QEventLoop>
 #include <QtCore/QStringList>
 #include <wtf/OwnPtr.h>
@@ -43,7 +44,7 @@
     bool initForCertificateVerification(QDeclarativeComponent*, QQuickItem*, const QString& hostname);
     bool initForProxyAuthentication(QDeclarativeComponent*, QQuickItem*, const QString& hostname, uint16_t port, const QString& prefilledUsername);
     bool initForFilePicker(QDeclarativeComponent*, QQuickItem*, const QStringList& selectedFiles);
-    bool initForDatabaseQuotaDialog(QDeclarativeComponent*, QQuickItem*, const QString& databaseName, const QString& displayName, quint64 currentQuota, quint64 currentOriginUsage, quint64 currentDatabaseUsage, quint64 expectedUsage);
+    bool initForDatabaseQuotaDialog(QDeclarativeComponent*, QQuickItem*, const QString& databaseName, const QString& displayName, WKSecurityOriginRef, quint64 currentQuota, quint64 currentOriginUsage, quint64 currentDatabaseUsage, quint64 expectedUsage);
 
     QQuickItem* dialog() const { return m_dialog.get(); }
 

Modified: trunk/Source/WebKit2/UIProcess/qt/QtWebPageUIClient.cpp (111720 => 111721)


--- trunk/Source/WebKit2/UIProcess/qt/QtWebPageUIClient.cpp	2012-03-22 17:16:30 UTC (rev 111720)
+++ trunk/Source/WebKit2/UIProcess/qt/QtWebPageUIClient.cpp	2012-03-22 17:22:38 UTC (rev 111721)
@@ -48,9 +48,9 @@
     WKPageSetPageUIClient(pageRef, &uiClient);
 }
 
-quint64 QtWebPageUIClient::exceededDatabaseQuota(const QString& databaseName, const QString& displayName, quint64 currentQuota, quint64 currentOriginUsage, quint64 currentDatabaseUsage, quint64 expectedUsage)
+quint64 QtWebPageUIClient::exceededDatabaseQuota(const QString& databaseName, const QString& displayName, WKSecurityOriginRef securityOrigin, quint64 currentQuota, quint64 currentOriginUsage, quint64 currentDatabaseUsage, quint64 expectedUsage)
 {
-    return m_webView->d_func()->exceededDatabaseQuota(databaseName, displayName, currentQuota, currentOriginUsage, currentDatabaseUsage, expectedUsage);
+    return m_webView->d_func()->exceededDatabaseQuota(databaseName, displayName, securityOrigin, currentQuota, currentOriginUsage, currentDatabaseUsage, expectedUsage);
 }
 
 void QtWebPageUIClient::runJavaScriptAlert(const QString& message)
@@ -94,11 +94,11 @@
     return reinterpret_cast<QtWebPageUIClient*>(const_cast<void*>(clientInfo));
 }
 
-unsigned long long QtWebPageUIClient::exceededDatabaseQuota(WKPageRef page, WKFrameRef frame, WKSecurityOriginRef, WKStringRef databaseName, WKStringRef displayName, unsigned long long currentQuota, unsigned long long currentOriginUsage, unsigned long long currentDatabaseUsage, unsigned long long expectedUsage, const void *clientInfo)
+unsigned long long QtWebPageUIClient::exceededDatabaseQuota(WKPageRef, WKFrameRef, WKSecurityOriginRef securityOrigin, WKStringRef databaseName, WKStringRef displayName, unsigned long long currentQuota, unsigned long long currentOriginUsage, unsigned long long currentDatabaseUsage, unsigned long long expectedUsage, const void *clientInfo)
 {
     QString qDisplayName = WKStringCopyQString(displayName);
     QString qDatabaseName = WKStringCopyQString(databaseName);
-    return toQtWebPageUIClient(clientInfo)->exceededDatabaseQuota(qDatabaseName, qDisplayName, currentQuota, currentOriginUsage, currentDatabaseUsage, expectedUsage);
+    return toQtWebPageUIClient(clientInfo)->exceededDatabaseQuota(qDatabaseName, qDisplayName, securityOrigin, currentQuota, currentOriginUsage, currentDatabaseUsage, expectedUsage);
 }
 
 void QtWebPageUIClient::runJavaScriptAlert(WKPageRef, WKStringRef alertText, WKFrameRef, const void* clientInfo)

Modified: trunk/Source/WebKit2/UIProcess/qt/QtWebPageUIClient.h (111720 => 111721)


--- trunk/Source/WebKit2/UIProcess/qt/QtWebPageUIClient.h	2012-03-22 17:16:30 UTC (rev 111720)
+++ trunk/Source/WebKit2/UIProcess/qt/QtWebPageUIClient.h	2012-03-22 17:22:38 UTC (rev 111721)
@@ -41,7 +41,7 @@
     QtWebPageUIClient(WKPageRef, QQuickWebView*);
 
 private:
-    quint64 exceededDatabaseQuota(const QString& databaseName, const QString& displayName, quint64 currentQuota, quint64 currentOriginUsage, quint64 currentDatabaseUsage, quint64 expectedUsage);
+    quint64 exceededDatabaseQuota(const QString& databaseName, const QString& displayName, WKSecurityOriginRef, quint64 currentQuota, quint64 currentOriginUsage, quint64 currentDatabaseUsage, quint64 expectedUsage);
     void runJavaScriptAlert(const QString& message);
     bool runJavaScriptConfirm(const QString& message);
     QString runJavaScriptPrompt(const QString& message, const QString& defaultValue, bool& ok);
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to