[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
kenneth at webkit.org
kenneth at webkit.org
Wed Dec 22 13:44:47 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit 22dbcf9ae1948f5ec577a02e3419ddbf37d26e4a
Author: kenneth at webkit.org <kenneth at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Fri Sep 24 19:43:17 2010 +0000
Make it possible to get the page preferences for Qt WebKit2 port.
Reviewed by Antonio Gomes.
* UIProcess/API/qt/qwkpage.cpp:
(QWKPagePrivate::QWKPagePrivate):
(QWKPage::preferences):
* UIProcess/API/qt/qwkpage.h:
* UIProcess/API/qt/qwkpage_p.h:
* UIProcess/API/qt/qwkpreferences.cpp:
(QWKPreferencesPrivate::createPreferences):
(QWKPreferencesPrivate::createSharedPreferences):
(QWKPreferences::sharedPreferences):
(QWKPreferences::QWKPreferences):
* UIProcess/API/qt/qwkpreferences.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@68284 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit2/ChangeLog b/WebKit2/ChangeLog
index 9abec86..3611d09 100644
--- a/WebKit2/ChangeLog
+++ b/WebKit2/ChangeLog
@@ -1,5 +1,23 @@
2010-09-24 Kenneth Rohde Christiansen <kenneth.christiansen at openbossa.org>
+ Reviewed by Antonio Gomes.
+
+ Make it possible to get the page preferences for Qt WebKit2 port.
+
+ * UIProcess/API/qt/qwkpage.cpp:
+ (QWKPagePrivate::QWKPagePrivate):
+ (QWKPage::preferences):
+ * UIProcess/API/qt/qwkpage.h:
+ * UIProcess/API/qt/qwkpage_p.h:
+ * UIProcess/API/qt/qwkpreferences.cpp:
+ (QWKPreferencesPrivate::createPreferences):
+ (QWKPreferencesPrivate::createSharedPreferences):
+ (QWKPreferences::sharedPreferences):
+ (QWKPreferences::QWKPreferences):
+ * UIProcess/API/qt/qwkpreferences.h:
+
+2010-09-24 Kenneth Rohde Christiansen <kenneth.christiansen at openbossa.org>
+
Reviewed by Sam Weinig.
Add WebKit2 C API for setting/getting frame flattening and plugin settings.
diff --git a/WebKit2/UIProcess/API/qt/qwkpage.cpp b/WebKit2/UIProcess/API/qt/qwkpage.cpp
index 843f395..8ec943f 100644
--- a/WebKit2/UIProcess/API/qt/qwkpage.cpp
+++ b/WebKit2/UIProcess/API/qt/qwkpage.cpp
@@ -21,6 +21,8 @@
#include "qwkpage.h"
#include "qwkpage_p.h"
+#include "qwkpreferences_p.h"
+
#include "ClientImpl.h"
#include "LocalizedStrings.h"
#include "WebContext.h"
@@ -46,6 +48,7 @@ using namespace WebCore;
QWKPagePrivate::QWKPagePrivate(QWKPage* qq, WKPageNamespaceRef namespaceRef)
: q(qq)
+ , preferences(0)
, createNewPageFn(0)
{
// We want to use the LocalizationStrategy at the UI side as well.
@@ -55,6 +58,7 @@ QWKPagePrivate::QWKPagePrivate(QWKPage* qq, WKPageNamespaceRef namespaceRef)
memset(actions, 0, sizeof(actions));
page = toWK(namespaceRef)->createWebPage();
page->setPageClient(this);
+ pageNamespaceRef = namespaceRef;
}
QWKPagePrivate::~QWKPagePrivate()
@@ -364,6 +368,16 @@ WKPageRef QWKPage::pageRef() const
return toRef(d->page.get());
}
+QWKPreferences* QWKPage::preferences() const
+{
+ if (!d->preferences) {
+ WKContextRef contextRef = WKPageNamespaceGetContext(d->pageNamespaceRef);
+ d->preferences = QWKPreferencesPrivate::createPreferences(contextRef);
+ }
+
+ return d->preferences;
+}
+
void QWKPage::setCreateNewPageFunction(CreateNewPageFn function)
{
d->createNewPageFn = function;
diff --git a/WebKit2/UIProcess/API/qt/qwkpage.h b/WebKit2/UIProcess/API/qt/qwkpage.h
index e762757..b96e04a 100644
--- a/WebKit2/UIProcess/API/qt/qwkpage.h
+++ b/WebKit2/UIProcess/API/qt/qwkpage.h
@@ -14,6 +14,7 @@
class QCursor;
class QWKGraphicsWidget;
+class QWKPreferences;
class QWKPagePrivate;
class QtViewportConfigurationPrivate;
@@ -69,6 +70,8 @@ public:
WKPageRef pageRef() const;
+ QWKPreferences* preferences() const;
+
void load(const QUrl& url);
void setUrl(const QUrl& url);
QUrl url() const;
diff --git a/WebKit2/UIProcess/API/qt/qwkpage_p.h b/WebKit2/UIProcess/API/qt/qwkpage_p.h
index 06a5668..c10447d 100644
--- a/WebKit2/UIProcess/API/qt/qwkpage_p.h
+++ b/WebKit2/UIProcess/API/qt/qwkpage_p.h
@@ -32,6 +32,8 @@
#include <QGraphicsView>
#include <QKeyEvent>
+class QWKPreferences;
+
class QWKPagePrivate : WebKit::PageClient {
public:
QWKPagePrivate(QWKPage*, WKPageNamespaceRef);
@@ -74,10 +76,13 @@ public:
void touchEvent(QTouchEvent*);
#endif
+ QWKPage* q;
+
QAction* actions[QWKPage::WebActionCount];
+ QWKPreferences* preferences;
- QWKPage* q;
RefPtr<WebKit::WebPageProxy> page;
+ WKPageNamespaceRef pageNamespaceRef;
QWKPage::CreateNewPageFn createNewPageFn;
diff --git a/WebKit2/UIProcess/API/qt/qwkpreferences.cpp b/WebKit2/UIProcess/API/qt/qwkpreferences.cpp
index 5432ab8..c3fb5bb 100644
--- a/WebKit2/UIProcess/API/qt/qwkpreferences.cpp
+++ b/WebKit2/UIProcess/API/qt/qwkpreferences.cpp
@@ -18,26 +18,37 @@
*/
#include "qwkpreferences.h"
+
+#include "WKContext.h"
#include "WKPreferences.h"
+#include "qwkpreferences_p.h"
+
+QWKPreferences* QWKPreferencesPrivate::createPreferences(WKContextRef contextRef)
+{
+ QWKPreferences* prefs = new QWKPreferences;
+ prefs->d->ref = WKContextGetPreferences(contextRef);
+ return prefs;
+}
-class QWKPreferencesPrivate {
-public:
- WKPreferencesRef ref;
-};
+QWKPreferences* QWKPreferencesPrivate::createSharedPreferences()
+{
+ QWKPreferences* prefs = new QWKPreferences;
+ prefs->d->ref = WKPreferencesCreate();
+ return prefs;
+}
-QWKPreferences* QWKPreferences::globalPreferences()
+QWKPreferences* QWKPreferences::sharedPreferences()
{
static QWKPreferences* instance = 0;
if (!instance)
- instance = new QWKPreferences;
+ instance = QWKPreferencesPrivate::createSharedPreferences();
return instance;
}
QWKPreferences::QWKPreferences()
: d(new QWKPreferencesPrivate)
{
- d->ref = WKPreferencesCreate();
}
QWKPreferences::~QWKPreferences()
diff --git a/WebKit2/UIProcess/API/qt/qwkpreferences.h b/WebKit2/UIProcess/API/qt/qwkpreferences.h
index 4fe4ee8..40f5b18 100644
--- a/WebKit2/UIProcess/API/qt/qwkpreferences.h
+++ b/WebKit2/UIProcess/API/qt/qwkpreferences.h
@@ -22,6 +22,7 @@
#include "qwebkitglobal.h"
+class QWKPage;
class QWKPreferencesPrivate;
class QWEBKIT_EXPORT QWKPreferences {
@@ -34,7 +35,7 @@ public:
XSSAuditingEnabled
};
- static QWKPreferences* globalPreferences();
+ static QWKPreferences* sharedPreferences();
void setAttribute(WebAttribute attr, bool on);
bool testAttribute(WebAttribute attr) const;
@@ -46,6 +47,9 @@ private:
~QWKPreferences();
QWKPreferencesPrivate *d;
+
+ friend class QWKPage;
+ friend class QWKPreferencesPrivate;
};
#endif // QWKPREFERENCES_H
diff --git a/WebKit2/UIProcess/API/qt/qwkpreferences_p.h b/WebKit2/UIProcess/API/qt/qwkpreferences_p.h
new file mode 100644
index 0000000..7030c55
--- /dev/null
+++ b/WebKit2/UIProcess/API/qt/qwkpreferences_p.h
@@ -0,0 +1,28 @@
+/*
+ Copyright (C) 2010 Nokia Corporation and/or its subsidiary(-ies)
+
+ This library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Library General Public
+ License as published by the Free Software Foundation; either
+ version 2 of the License, or (at your option) any later version.
+
+ This library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Library General Public License for more details.
+
+ You should have received a copy of the GNU Library General Public License
+ along with this library; see the file COPYING.LIB. If not, write to
+ the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
+ Boston, MA 02110-1301, USA.
+*/
+
+#include "WKPreferences.h"
+
+class QWKPreferencesPrivate {
+public:
+ static QWKPreferences* createPreferences(WKContextRef contextRef);
+ static QWKPreferences* createSharedPreferences();
+
+ WKPreferencesRef ref;
+};
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list