[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-10851-g50815da
weinig at apple.com
weinig at apple.com
Wed Dec 22 18:33:20 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit 456429db43b1e700fd93cefcdfcac6cd11555a93
Author: weinig at apple.com <weinig at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Mon Dec 13 22:38:27 2010 +0000
Change the WebKit2 public API so there is no explicit WKPageNamespace object
https://bugs.webkit.org/show_bug.cgi?id=50898
Reviewed by Anders Carlsson.
WebKit2:
* Shared/API/c/WKBase.h: Remove definition of WKPageNamespaceRef.
* UIProcess/API/C/WKAPICast.h: Remove toAPI/toImpl for WKPageNamespaceRef.
* UIProcess/API/C/WKPage.cpp:
* UIProcess/API/C/WKPage.h:
Replace WKPageGetPageNamespace with WKPageGetContext.
* UIProcess/API/C/WKPageNamespace.cpp: Removed.
* UIProcess/API/C/WKPageNamespace.h: Removed.
* UIProcess/API/C/WebKit2.h: Remove #include of WKPageNamespace.h.
* UIProcess/API/C/win/WKView.cpp:
(WKViewCreate): Changed to take a WKContextRef instead of a WKPageNamespaceRef.
(WKViewCreateUsingSharedProcess): Added. Similar to WKViewCreate except that
all callers of it will have their views end up in the same shared process, whereas
with WKViewCreate, a new internal page namespace will be created and could place
the view's WebPage into a new process.
(WKViewCreateForAssociatedPage): Added. Creates a view that is forced to use the
same process as the passed in page.
* UIProcess/win/WebView.cpp:
(WebKit::WebView::WebView):
(WebKit::WebView::initialize):
* UIProcess/win/WebView.h:
(WebKit::WebView::create):
(WebKit::WebView::createUsingSharedProcess):
(WebKit::WebView::createForAssociatedPage):
Implementation of the WKView create functions.
* UIProcess/API/C/win/WKView.h:
* UIProcess/API/mac/WKView.h:
* UIProcess/API/mac/WKView.mm:
(-[WKView initWithFrame:]):
(-[WKView initWithFrame:contextRef:]):
(-[WKView initWithFrame:contextRef:pageGroupRef:]):
(-[WKView initWithFrame:contextRef:usingSharedProcess:]):
(-[WKView initWithFrame:contextRef:pageGroupRef:usingSharedProcess:]):
(-[WKView initWithFrame:forAssociatedPageRef:]):
(-[WKView initWithFrame:forAssociatedPageRef:pageGroupRef:]):
(-[WKView initWithFrame:pageNamespace:pageGroup:]):
Add new initializers for the objective-c WKView. It follows the same
pattern as WKViewRef.
* UIProcess/API/qt/qwkcontext.cpp:
(QWKContext::QWKContext):
* UIProcess/API/qt/qwkcontext.h:
Remove uses of WKPageNamespaceRef.
* UIProcess/WebContext.cpp:
(WebKit::WebContext::sharedPageNamespace): Returns a shared
page namespace used by the view's createUsingSharedProcess constructions.
(WebKit::WebContext::createPageNamespace): Change to return
a PassRefPtr to make things clearer.
(WebKit::WebContext::pageNamespaceWasDestroyed): Clear the shared
namespace if it is cleared.
* UIProcess/WebContext.h:
* UIProcess/WebPageNamespace.h: Remove unused "struct WKContextStatistics".
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::context):
* UIProcess/WebPageProxy.h:
Add context getter.
* UIProcess/mac/WebInspectorProxyMac.mm:
(WebKit::WebInspectorProxy::platformCreateInspectorPage):
* UIProcess/win/WebInspectorProxyWin.cpp:
(WebKit::WebInspectorProxy::platformCreateInspectorPage):
Use forAssociatedPageRef constructor for the WebInspector view.
* WebKit2.pro:
* WebKit2.xcodeproj/project.pbxproj:
* win/WebKit2.vcproj:
* win/WebKit2Generated.make:
Remove WKPageNamespace.h/cpp.
WebKitTools:
* MiniBrowser/mac/AppDelegate.h:
* MiniBrowser/mac/AppDelegate.m:
* MiniBrowser/mac/BrowserWindowController.h:
* MiniBrowser/mac/BrowserWindowController.m:
* MiniBrowser/win/BrowserView.cpp:
Convert MiniBrowser to not use PageNamespaces.
* TestWebKitAPI/PlatformWebView.h:
* TestWebKitAPI/Tests/WebKit2/DocumentStartUserScriptAlertCrash.cpp:
* TestWebKitAPI/Tests/WebKit2/EvaluateJavaScript.cpp:
* TestWebKitAPI/Tests/WebKit2/FailedLoad.cpp:
* TestWebKitAPI/Tests/WebKit2/Find.cpp:
* TestWebKitAPI/Tests/WebKit2/FrameMIMETypeHTML.cpp:
* TestWebKitAPI/Tests/WebKit2/FrameMIMETypePNG.cpp:
* TestWebKitAPI/Tests/WebKit2/InjectedBundleBasic.cpp:
* TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp:
* TestWebKitAPI/Tests/WebKit2/PageLoadDidChangeLocationWithinPageForFrame.cpp:
* TestWebKitAPI/Tests/WebKit2/PreventEmptyUserAgent.cpp:
* TestWebKitAPI/Tests/WebKit2/SpacebarScrolling.cpp:
* TestWebKitAPI/Tests/WebKit2/win/AltKeyGeneratesWMSysCommand.cpp:
* TestWebKitAPI/Tests/WebKit2/win/WMCloseCallsUIClientClose.cpp:
* TestWebKitAPI/mac/PlatformWebViewMac.mm:
* TestWebKitAPI/win/PlatformWebViewWin.cpp:
Convert TestWebKitAPI to not use PageNamespaces.
* WebKitTestRunner/PlatformWebView.h:
* WebKitTestRunner/TestController.cpp:
* WebKitTestRunner/TestController.h:
* WebKitTestRunner/mac/PlatformWebViewMac.mm:
* WebKitTestRunner/qt/PlatformWebViewQt.cpp:
* WebKitTestRunner/win/PlatformWebViewWin.cpp:
Convert WebKitTestRunner to not use PageNamespaces.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@73965 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebKit2/ChangeLog b/WebKit2/ChangeLog
index 35446a3..ab56ff9 100644
--- a/WebKit2/ChangeLog
+++ b/WebKit2/ChangeLog
@@ -1,3 +1,87 @@
+2010-12-13 Sam Weinig <sam at webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ Change the WebKit2 public API so there is no explicit WKPageNamespace object
+ https://bugs.webkit.org/show_bug.cgi?id=50898
+
+ * Shared/API/c/WKBase.h: Remove definition of WKPageNamespaceRef.
+ * UIProcess/API/C/WKAPICast.h: Remove toAPI/toImpl for WKPageNamespaceRef.
+
+ * UIProcess/API/C/WKPage.cpp:
+ * UIProcess/API/C/WKPage.h:
+ Replace WKPageGetPageNamespace with WKPageGetContext.
+
+ * UIProcess/API/C/WKPageNamespace.cpp: Removed.
+ * UIProcess/API/C/WKPageNamespace.h: Removed.
+
+ * UIProcess/API/C/WebKit2.h: Remove #include of WKPageNamespace.h.
+
+ * UIProcess/API/C/win/WKView.cpp:
+ (WKViewCreate): Changed to take a WKContextRef instead of a WKPageNamespaceRef.
+ (WKViewCreateUsingSharedProcess): Added. Similar to WKViewCreate except that
+ all callers of it will have their views end up in the same shared process, whereas
+ with WKViewCreate, a new internal page namespace will be created and could place
+ the view's WebPage into a new process.
+ (WKViewCreateForAssociatedPage): Added. Creates a view that is forced to use the
+ same process as the passed in page.
+
+ * UIProcess/win/WebView.cpp:
+ (WebKit::WebView::WebView):
+ (WebKit::WebView::initialize):
+ * UIProcess/win/WebView.h:
+ (WebKit::WebView::create):
+ (WebKit::WebView::createUsingSharedProcess):
+ (WebKit::WebView::createForAssociatedPage):
+ Implementation of the WKView create functions.
+
+ * UIProcess/API/C/win/WKView.h:
+ * UIProcess/API/mac/WKView.h:
+ * UIProcess/API/mac/WKView.mm:
+ (-[WKView initWithFrame:]):
+ (-[WKView initWithFrame:contextRef:]):
+ (-[WKView initWithFrame:contextRef:pageGroupRef:]):
+ (-[WKView initWithFrame:contextRef:usingSharedProcess:]):
+ (-[WKView initWithFrame:contextRef:pageGroupRef:usingSharedProcess:]):
+ (-[WKView initWithFrame:forAssociatedPageRef:]):
+ (-[WKView initWithFrame:forAssociatedPageRef:pageGroupRef:]):
+ (-[WKView initWithFrame:pageNamespace:pageGroup:]):
+ Add new initializers for the objective-c WKView. It follows the same
+ pattern as WKViewRef.
+
+ * UIProcess/API/qt/qwkcontext.cpp:
+ (QWKContext::QWKContext):
+ * UIProcess/API/qt/qwkcontext.h:
+ Remove uses of WKPageNamespaceRef.
+
+ * UIProcess/WebContext.cpp:
+ (WebKit::WebContext::sharedPageNamespace): Returns a shared
+ page namespace used by the view's createUsingSharedProcess constructions.
+ (WebKit::WebContext::createPageNamespace): Change to return
+ a PassRefPtr to make things clearer.
+ (WebKit::WebContext::pageNamespaceWasDestroyed): Clear the shared
+ namespace if it is cleared.
+ * UIProcess/WebContext.h:
+
+ * UIProcess/WebPageNamespace.h: Remove unused "struct WKContextStatistics".
+
+ * UIProcess/WebPageProxy.cpp:
+ (WebKit::WebPageProxy::context):
+ * UIProcess/WebPageProxy.h:
+ Add context getter.
+
+ * UIProcess/mac/WebInspectorProxyMac.mm:
+ (WebKit::WebInspectorProxy::platformCreateInspectorPage):
+ * UIProcess/win/WebInspectorProxyWin.cpp:
+ (WebKit::WebInspectorProxy::platformCreateInspectorPage):
+ Use forAssociatedPageRef constructor for the WebInspector view.
+
+ * WebKit2.pro:
+ * WebKit2.xcodeproj/project.pbxproj:
+ * win/WebKit2.vcproj:
+ * win/WebKit2Generated.make:
+ Remove WKPageNamespace.h/cpp.
+
2010-12-13 Brent Fulgham <bfulgham at webkit.org>
Unreviewed build fix.
diff --git a/WebKit2/Shared/API/c/WKBase.h b/WebKit2/Shared/API/c/WKBase.h
index f8d025d..08eb5e3 100644
--- a/WebKit2/Shared/API/c/WKBase.h
+++ b/WebKit2/Shared/API/c/WKBase.h
@@ -75,7 +75,6 @@ typedef const struct OpaqueWKInspector* WKInspectorRef;
typedef const struct OpaqueWKNavigationData* WKNavigationDataRef;
typedef const struct OpaqueWKPage* WKPageRef;
typedef const struct OpaqueWKPageGroup* WKPageGroupRef;
-typedef const struct OpaqueWKPageNamespace* WKPageNamespaceRef;
typedef const struct OpaqueWKPreferences* WKPreferencesRef;
typedef const struct OpaqueWKProtectionSpace* WKProtectionSpaceRef;
diff --git a/WebKit2/UIProcess/API/C/WKAPICast.h b/WebKit2/UIProcess/API/C/WKAPICast.h
index a29d040..93c28a6 100644
--- a/WebKit2/UIProcess/API/C/WKAPICast.h
+++ b/WebKit2/UIProcess/API/C/WKAPICast.h
@@ -54,7 +54,6 @@ class WebFrameProxy;
class WebInspectorProxy;
class WebNavigationData;
class WebPageGroup;
-class WebPageNamespace;
class WebPageProxy;
class WebPreferences;
class WebProtectionSpace;
@@ -70,16 +69,16 @@ WK_ADD_API_MAPPING(WKDownloadRef, DownloadProxy)
WK_ADD_API_MAPPING(WKFormSubmissionListenerRef, WebFormSubmissionListenerProxy)
WK_ADD_API_MAPPING(WKFramePolicyListenerRef, WebFramePolicyListenerProxy)
WK_ADD_API_MAPPING(WKFrameRef, WebFrameProxy)
-#if ENABLE(INSPECTOR)
-WK_ADD_API_MAPPING(WKInspectorRef, WebInspectorProxy)
-#endif
WK_ADD_API_MAPPING(WKNavigationDataRef, WebNavigationData)
WK_ADD_API_MAPPING(WKPageGroupRef, WebPageGroup)
-WK_ADD_API_MAPPING(WKPageNamespaceRef, WebPageNamespace)
WK_ADD_API_MAPPING(WKPageRef, WebPageProxy)
WK_ADD_API_MAPPING(WKPreferencesRef, WebPreferences)
WK_ADD_API_MAPPING(WKProtectionSpaceRef, WebProtectionSpace)
+#if ENABLE(INSPECTOR)
+WK_ADD_API_MAPPING(WKInspectorRef, WebInspectorProxy)
+#endif
+
/* Enum conversions */
inline CacheModel toCacheModel(WKCacheModel wkCacheModel)
diff --git a/WebKit2/UIProcess/API/C/WKPage.cpp b/WebKit2/UIProcess/API/C/WKPage.cpp
index 2d44c81..6d09856 100644
--- a/WebKit2/UIProcess/API/C/WKPage.cpp
+++ b/WebKit2/UIProcess/API/C/WKPage.cpp
@@ -42,9 +42,9 @@ WKTypeID WKPageGetTypeID()
return toAPI(WebPageProxy::APIType);
}
-WKPageNamespaceRef WKPageGetPageNamespace(WKPageRef pageRef)
+WKContextRef WKPageGetContext(WKPageRef pageRef)
{
- return toAPI(toImpl(pageRef)->pageNamespace());
+ return toAPI(toImpl(pageRef)->context());
}
WKPageGroupRef WKPageGetPageGroup(WKPageRef pageRef)
diff --git a/WebKit2/UIProcess/API/C/WKPage.h b/WebKit2/UIProcess/API/C/WKPage.h
index c97b8aa..07ae075 100644
--- a/WebKit2/UIProcess/API/C/WKPage.h
+++ b/WebKit2/UIProcess/API/C/WKPage.h
@@ -217,7 +217,7 @@ typedef struct WKPageContextMenuClient WKPageContextMenuClient;
WK_EXPORT WKTypeID WKPageGetTypeID();
-WK_EXPORT WKPageNamespaceRef WKPageGetPageNamespace(WKPageRef page);
+WK_EXPORT WKContextRef WKPageGetContext(WKPageRef page);
WK_EXPORT WKPageGroupRef WKPageGetPageGroup(WKPageRef page);
WK_EXPORT void WKPageLoadURL(WKPageRef page, WKURLRef url);
diff --git a/WebKit2/UIProcess/API/C/WKPageNamespace.cpp b/WebKit2/UIProcess/API/C/WKPageNamespace.cpp
deleted file mode 100644
index e587a5f..0000000
--- a/WebKit2/UIProcess/API/C/WKPageNamespace.cpp
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (C) 2010 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#include "WKPageNamespace.h"
-
-#include "WKAPICast.h"
-#include "WebPageNamespace.h"
-#include <wtf/PassRefPtr.h>
-#include <wtf/RefPtr.h>
-
-using namespace WebKit;
-
-WKTypeID WKPageNamespaceGetTypeID()
-{
- return toAPI(WebPageNamespace::APIType);
-}
-
-WKPageNamespaceRef WKPageNamespaceCreate(WKContextRef ownerContextRef)
-{
- return toAPI(toImpl(ownerContextRef)->createPageNamespace());
-}
-
-WKContextRef WKPageNamespaceGetContext(WKPageNamespaceRef pageNamespaceRef)
-{
- return toAPI(toImpl(pageNamespaceRef)->context());
-}
diff --git a/WebKit2/UIProcess/API/C/WKPageNamespace.h b/WebKit2/UIProcess/API/C/WKPageNamespace.h
deleted file mode 100644
index b348c76..0000000
--- a/WebKit2/UIProcess/API/C/WKPageNamespace.h
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * Copyright (C) 2010 Apple Inc. All rights reserved.
- *
- * Redistribution and use in source and binary forms, with or without
- * modification, are permitted provided that the following conditions
- * are met:
- * 1. Redistributions of source code must retain the above copyright
- * notice, this list of conditions and the following disclaimer.
- * 2. Redistributions in binary form must reproduce the above copyright
- * notice, this list of conditions and the following disclaimer in the
- * documentation and/or other materials provided with the distribution.
- *
- * THIS SOFTWARE IS PROVIDED BY APPLE INC. AND ITS CONTRIBUTORS ``AS IS''
- * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
- * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
- * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR ITS CONTRIBUTORS
- * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
- * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
- * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
- * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
- * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
- * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF
- * THE POSSIBILITY OF SUCH DAMAGE.
- */
-
-#ifndef WKPageNamespace_h
-#define WKPageNamespace_h
-
-#include <WebKit2/WKBase.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-WK_EXPORT WKTypeID WKPageNamespaceGetTypeID();
-
-WK_EXPORT WKPageNamespaceRef WKPageNamespaceCreate(WKContextRef ownerContext);
-
-WK_EXPORT WKContextRef WKPageNamespaceGetContext(WKPageNamespaceRef pageNamespace);
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* WKPageNamespace_h */
diff --git a/WebKit2/UIProcess/API/C/WebKit2.h b/WebKit2/UIProcess/API/C/WebKit2.h
index 215addb..70d8aaf 100644
--- a/WebKit2/UIProcess/API/C/WebKit2.h
+++ b/WebKit2/UIProcess/API/C/WebKit2.h
@@ -45,7 +45,6 @@
#include <WebKit2/WKNumber.h>
#include <WebKit2/WKPage.h>
#include <WebKit2/WKPageGroup.h>
-#include <WebKit2/WKPageNamespace.h>
#include <WebKit2/WKPreferences.h>
#include <WebKit2/WKString.h>
#include <WebKit2/WKURL.h>
diff --git a/WebKit2/UIProcess/API/C/win/WKView.cpp b/WebKit2/UIProcess/API/C/win/WKView.cpp
index dca3139..1cb9ae6 100644
--- a/WebKit2/UIProcess/API/C/win/WKView.cpp
+++ b/WebKit2/UIProcess/API/C/win/WKView.cpp
@@ -35,9 +35,21 @@ WKTypeID WKViewGetTypeID()
return toAPI(APIObject::TypeView);
}
-WKViewRef WKViewCreate(RECT rect, WKPageNamespaceRef pageNamespaceRef, WKPageGroupRef pageGroupRef, HWND parentWindow)
+WKViewRef WKViewCreate(RECT rect, WKContextRef contextRef, WKPageGroupRef pageGroupRef, HWND parentWindow)
{
- RefPtr<WebView> view = WebView::create(rect, toImpl(pageNamespaceRef), toImpl(pageGroupRef), parentWindow);
+ RefPtr<WebView> view = WebView::create(rect, toImpl(contextRef), toImpl(pageGroupRef), parentWindow);
+ return toAPI(view.release().releaseRef());
+}
+
+WKViewRef WKViewCreateUsingSharedProcess(RECT rect, WKContextRef contextRef, WKPageGroupRef pageGroupRef, HWND parentWindow)
+{
+ RefPtr<WebView> view = WebView::createUsingSharedProcess(rect, toImpl(contextRef), toImpl(pageGroupRef), parentWindow);
+ return toAPI(view.release().releaseRef());
+}
+
+WKViewRef WKViewCreateForAssociatedPage(RECT rect, WKPageRef pageRef, WKPageGroupRef pageGroupRef, HWND parentWindow)
+{
+ RefPtr<WebView> view = WebView::createForAssociatedPage(rect, toImpl(pageRef), toImpl(pageGroupRef), parentWindow);
return toAPI(view.release().releaseRef());
}
diff --git a/WebKit2/UIProcess/API/C/win/WKView.h b/WebKit2/UIProcess/API/C/win/WKView.h
index 2b7be05..a02d98a 100644
--- a/WebKit2/UIProcess/API/C/win/WKView.h
+++ b/WebKit2/UIProcess/API/C/win/WKView.h
@@ -35,7 +35,9 @@ extern "C" {
WK_EXPORT WKTypeID WKViewGetTypeID();
-WK_EXPORT WKViewRef WKViewCreate(RECT rect, WKPageNamespaceRef pageNamespace, WKPageGroupRef pageGroup, HWND parentWindow);
+WK_EXPORT WKViewRef WKViewCreate(RECT rect, WKContextRef context, WKPageGroupRef pageGroup, HWND parentWindow);
+WK_EXPORT WKViewRef WKViewCreateUsingSharedProcess(RECT rect, WKContextRef context, WKPageGroupRef pageGroup, HWND parentWindow);
+WK_EXPORT WKViewRef WKViewCreateForAssociatedPage(RECT rect, WKPageRef page, WKPageGroupRef pageGroup, HWND parentWindow);
WK_EXPORT HWND WKViewGetWindow(WKViewRef view);
diff --git a/WebKit2/UIProcess/API/mac/WKView.h b/WebKit2/UIProcess/API/mac/WKView.h
index 64dbf83..dabf4dc 100644
--- a/WebKit2/UIProcess/API/mac/WKView.h
+++ b/WebKit2/UIProcess/API/mac/WKView.h
@@ -33,15 +33,18 @@ WK_EXPORT
WKViewData *_data;
}
-- (id)initWithFrame:(NSRect)frame pageNamespaceRef:(WKPageNamespaceRef)pageNamespaceRef;
-- (id)initWithFrame:(NSRect)frame pageNamespaceRef:(WKPageNamespaceRef)pageNamespaceRef pageGroupRef:(WKPageGroupRef)pageGroupRef;
+- (id)initWithFrame:(NSRect)frame contextRef:(WKContextRef)contextRef;
+- (id)initWithFrame:(NSRect)frame contextRef:(WKContextRef)contextRef pageGroupRef:(WKPageGroupRef)pageGroupRef;
-- (WKPageRef)pageRef;
+- (id)initWithFrame:(NSRect)frame contextRef:(WKContextRef)contextRef usingSharedProcess:(BOOL)usingSharedProcess;
+- (id)initWithFrame:(NSRect)frame contextRef:(WKContextRef)contextRef pageGroupRef:(WKPageGroupRef)pageGroupRef usingSharedProcess:(BOOL)usingSharedProcess;;
-- (void)setDrawsBackground:(BOOL)flag;
-- (BOOL)drawsBackground;
+- (id)initWithFrame:(NSRect)frame forAssociatedPageRef:(WKPageRef)pageRef;
+- (id)initWithFrame:(NSRect)frame forAssociatedPageRef:(WKPageRef)pageRef pageGroupRef:(WKPageGroupRef)pageGroupRef;
-- (void)setDrawsTransparentBackground:(BOOL)flag;
-- (BOOL)drawsTransparentBackground;
+ at property(readonly) WKPageRef pageRef;
+
+ at property BOOL drawsBackground;
+ at property BOOL drawsTransparentBackground;
@end
diff --git a/WebKit2/UIProcess/API/mac/WKView.mm b/WebKit2/UIProcess/API/mac/WKView.mm
index c75e8a3..5d37a77 100644
--- a/WebKit2/UIProcess/API/mac/WKView.mm
+++ b/WebKit2/UIProcess/API/mac/WKView.mm
@@ -127,9 +127,54 @@ struct EditCommandState {
- (BOOL)handleMouseEvent:(NSEvent *)event;
@end
+ at interface WKView ()
+- (id)initWithFrame:(NSRect)frame pageNamespace:(WebPageNamespace*)pageNamespace pageGroup:(WebPageGroup*)pageGroup;
+ at end
+
@implementation WKView
-- (id)initWithFrame:(NSRect)frame pageNamespaceRef:(WKPageNamespaceRef)pageNamespaceRef pageGroupRef:(WKPageGroupRef)pageGroupRef
+- (id)initWithFrame:(NSRect)frame
+{
+ return [self initWithFrame:frame contextRef:toAPI(WebContext::sharedProcessContext())];
+}
+
+- (id)initWithFrame:(NSRect)frame contextRef:(WKContextRef)contextRef
+{
+ return [self initWithFrame:frame contextRef:contextRef pageGroupRef:nil];
+}
+
+- (id)initWithFrame:(NSRect)frame contextRef:(WKContextRef)contextRef pageGroupRef:(WKPageGroupRef)pageGroupRef
+{
+ return [self initWithFrame:frame contextRef:contextRef pageGroupRef:pageGroupRef usingSharedProcess:NO];
+}
+
+- (id)initWithFrame:(NSRect)frame contextRef:(WKContextRef)contextRef usingSharedProcess:(BOOL)usingSharedProcess
+{
+ return [self initWithFrame:frame contextRef:contextRef pageGroupRef:nil usingSharedProcess:usingSharedProcess];
+}
+
+- (id)initWithFrame:(NSRect)frame contextRef:(WKContextRef)contextRef pageGroupRef:(WKPageGroupRef)pageGroupRef usingSharedProcess:(BOOL)usingSharedProcess
+{
+ RefPtr<WebPageNamespace> pageNamespace;
+ if (usingSharedProcess)
+ pageNamespace = toImpl(contextRef)->sharedPageNamespace();
+ else
+ pageNamespace = toImpl(contextRef)->createPageNamespace();
+
+ return [self initWithFrame:frame pageNamespace:pageNamespace.get() pageGroup:toImpl(pageGroupRef)];
+}
+
+- (id)initWithFrame:(NSRect)frame forAssociatedPageRef:(WKPageRef)pageRef
+{
+ return [self initWithFrame:frame forAssociatedPageRef:pageRef pageGroupRef:nil];
+}
+
+- (id)initWithFrame:(NSRect)frame forAssociatedPageRef:(WKPageRef)pageRef pageGroupRef:(WKPageGroupRef)pageGroupRef
+{
+ return [self initWithFrame:frame pageNamespace:toImpl(pageRef)->pageNamespace() pageGroup:toImpl(pageGroupRef)];
+}
+
+- (id)initWithFrame:(NSRect)frame pageNamespace:(WebPageNamespace*)pageNamespace pageGroup:(WebPageGroup*)pageGroup
{
self = [super initWithFrame:frame];
if (!self)
@@ -148,7 +193,7 @@ struct EditCommandState {
_data = [[WKViewData alloc] init];
_data->_pageClient = PageClientImpl::create(self);
- _data->_page = toImpl(pageNamespaceRef)->createWebPage(toImpl(pageGroupRef));
+ _data->_page = pageNamespace->createWebPage(pageGroup);
_data->_page->setPageClient(_data->_pageClient.get());
_data->_page->setDrawingArea(ChunkedUpdateDrawingAreaProxy::create(self));
_data->_page->initializeWebPage(IntSize(frame.size));
@@ -168,17 +213,6 @@ struct EditCommandState {
return self;
}
-- (id)initWithFrame:(NSRect)frame pageNamespaceRef:(WKPageNamespaceRef)pageNamespaceRef
-{
- return [self initWithFrame:frame pageNamespaceRef:pageNamespaceRef pageGroupRef:nil];
-}
-
-- (id)initWithFrame:(NSRect)frame
-{
- WebContext* context = WebContext::sharedProcessContext();
- return [self initWithFrame:frame pageNamespaceRef:toAPI(context->createPageNamespace())];
-}
-
- (void)dealloc
{
_data->_page->close();
diff --git a/WebKit2/UIProcess/API/qt/qwkcontext.cpp b/WebKit2/UIProcess/API/qt/qwkcontext.cpp
index 5334183..9950f82 100644
--- a/WebKit2/UIProcess/API/qt/qwkcontext.cpp
+++ b/WebKit2/UIProcess/API/qt/qwkcontext.cpp
@@ -50,15 +50,23 @@ QWKContext::QWKContext(QObject* parent)
, d(new QWKContextPrivate(this))
{
d->context = WebContext::create(String());
- d->pageNamespace = d->context->createPageNamespace();
+ d->pageNamespace = d->context->sharedPageNamespace();
}
-QWKContext::QWKContext(WKPageNamespaceRef pageNamespaceRef, QObject* parent)
+QWKContext::QWKContext(WKContextRef contextRef, QObject* parent)
: QObject(parent)
, d(new QWKContextPrivate(this))
{
- d->pageNamespace = toImpl(pageNamespaceRef);
- d->context = d->pageNamespace->context();
+ d->context = toImpl(contextRef);
+ d->pageNamespace = d->context->sharedPageNamespace();
+}
+
+QWKContext::QWKContext(WKPageRef pageRef, QObject* parent)
+ : QObject(parent)
+ , d(new QWKContextPrivate(this))
+{
+ d->context = toImpl(pageRef)->context();
+ d->pageNamespace = d->context->sharedPageNamespace();
}
QWKContext::~QWKContext()
diff --git a/WebKit2/UIProcess/API/qt/qwkcontext.h b/WebKit2/UIProcess/API/qt/qwkcontext.h
index 8dff815..9aed501 100644
--- a/WebKit2/UIProcess/API/qt/qwkcontext.h
+++ b/WebKit2/UIProcess/API/qt/qwkcontext.h
@@ -22,7 +22,8 @@
#include "qwebkitglobal.h"
#include <QObject>
-#include <WebKit2/WKPageNamespace.h>
+#include <WebKit2/WKContext.h>
+#include <WebKit2/WKPage.h>
class QWKContextPrivate;
@@ -33,7 +34,8 @@ public:
virtual ~QWKContext();
// Bridge from the C API
- QWKContext(WKPageNamespaceRef pageNamespaceRef, QObject* parent = 0);
+ QWKContext(WKContextRef contextRef, QObject* parent = 0);
+ QWKContext(WKPageRef pageRef, QObject* parent = 0);
private:
QWKContextPrivate* d;
diff --git a/WebKit2/UIProcess/WebContext.cpp b/WebKit2/UIProcess/WebContext.cpp
index 1b68f0f..6a15c11 100644
--- a/WebKit2/UIProcess/WebContext.cpp
+++ b/WebKit2/UIProcess/WebContext.cpp
@@ -79,6 +79,7 @@ PassRefPtr<WebContext> WebContext::create(const String& injectedBundlePath)
WebContext::WebContext(ProcessModel processModel, const String& injectedBundlePath)
: m_processModel(processModel)
+ , m_sharedNamespace(0)
, m_defaultPageGroup(WebPageGroup::create())
, m_injectedBundlePath(injectedBundlePath)
, m_visitedLinkProvider(this)
@@ -228,15 +229,25 @@ void WebContext::relaunchProcessIfNecessary()
ensureWebProcess();
}
-WebPageNamespace* WebContext::createPageNamespace()
+WebPageNamespace* WebContext::sharedPageNamespace()
+{
+ if (!m_sharedNamespace)
+ m_sharedNamespace = createPageNamespace();
+ return m_sharedNamespace.get();
+}
+
+PassRefPtr<WebPageNamespace> WebContext::createPageNamespace()
{
RefPtr<WebPageNamespace> pageNamespace = WebPageNamespace::create(this);
m_pageNamespaces.add(pageNamespace.get());
- return pageNamespace.release().releaseRef();
+ return pageNamespace.release();
}
void WebContext::pageNamespaceWasDestroyed(WebPageNamespace* pageNamespace)
{
+ if (pageNamespace == m_sharedNamespace)
+ m_sharedNamespace = 0;
+
ASSERT(m_pageNamespaces.contains(pageNamespace));
m_pageNamespaces.remove(pageNamespace);
}
diff --git a/WebKit2/UIProcess/WebContext.h b/WebKit2/UIProcess/WebContext.h
index 7e4b5b1..02f1c48 100644
--- a/WebKit2/UIProcess/WebContext.h
+++ b/WebKit2/UIProcess/WebContext.h
@@ -42,8 +42,6 @@
#include <wtf/text/StringHash.h>
#include <wtf/text/WTFString.h>
-struct WKContextStatistics;
-
namespace WebKit {
class DownloadProxy;
@@ -77,7 +75,8 @@ public:
void relaunchProcessIfNecessary();
- WebPageNamespace* createPageNamespace();
+ WebPageNamespace* sharedPageNamespace();
+ PassRefPtr<WebPageNamespace> createPageNamespace();
void pageNamespaceWasDestroyed(WebPageNamespace*);
const String& injectedBundlePath() const { return m_injectedBundlePath; }
@@ -164,6 +163,7 @@ private:
// FIXME: In the future, this should be one or more WebProcessProxies.
RefPtr<WebProcessProxy> m_process;
+ RefPtr<WebPageNamespace> m_sharedNamespace;
HashSet<WebPageNamespace*> m_pageNamespaces;
RefPtr<WebPageGroup> m_defaultPageGroup;
diff --git a/WebKit2/UIProcess/WebPageNamespace.h b/WebKit2/UIProcess/WebPageNamespace.h
index c852f39..f8955bb 100644
--- a/WebKit2/UIProcess/WebPageNamespace.h
+++ b/WebKit2/UIProcess/WebPageNamespace.h
@@ -31,8 +31,6 @@
#include <wtf/PassRefPtr.h>
#include <wtf/RefPtr.h>
-struct WKContextStatistics;
-
namespace WebKit {
class WebContext;
diff --git a/WebKit2/UIProcess/WebPageProxy.cpp b/WebKit2/UIProcess/WebPageProxy.cpp
index 5ac0991..7751ce3 100644
--- a/WebKit2/UIProcess/WebPageProxy.cpp
+++ b/WebKit2/UIProcess/WebPageProxy.cpp
@@ -133,6 +133,11 @@ WebProcessProxy* WebPageProxy::process() const
return m_pageNamespace->process();
}
+WebContext* WebPageProxy::context() const
+{
+ return m_pageNamespace->context();
+}
+
bool WebPageProxy::isValid()
{
// A page that has been explicitly closed is never valid.
diff --git a/WebKit2/UIProcess/WebPageProxy.h b/WebKit2/UIProcess/WebPageProxy.h
index 7f9a57b..51eeefe 100644
--- a/WebKit2/UIProcess/WebPageProxy.h
+++ b/WebKit2/UIProcess/WebPageProxy.h
@@ -71,8 +71,6 @@ namespace WebCore {
struct WindowFeatures;
}
-struct WKContextStatistics;
-
namespace WebKit {
class DrawingAreaProxy;
@@ -252,6 +250,7 @@ public:
WebProcessProxy* process() const;
WebPageNamespace* pageNamespace() const { return m_pageNamespace.get(); }
+ WebContext* context() const;
WebPageGroup* pageGroup() const { return m_pageGroup.get(); }
diff --git a/WebKit2/UIProcess/mac/WebInspectorProxyMac.mm b/WebKit2/UIProcess/mac/WebInspectorProxyMac.mm
index a889739..5e64536 100644
--- a/WebKit2/UIProcess/mac/WebInspectorProxyMac.mm
+++ b/WebKit2/UIProcess/mac/WebInspectorProxyMac.mm
@@ -78,10 +78,10 @@ WebPageProxy* WebInspectorProxy::platformCreateInspectorPage()
ASSERT(m_page);
ASSERT(!m_inspectorView);
- m_inspectorView.adoptNS([[WKView alloc] initWithFrame:NSZeroRect pageNamespaceRef:toAPI(m_page->pageNamespace()) pageGroupRef:toAPI(inspectorPageGroup())]);
+ m_inspectorView.adoptNS([[WKView alloc] initWithFrame:NSZeroRect forAssociatedPageRef:toAPI(page()) pageGroupRef:toAPI(inspectorPageGroup())]);
ASSERT(m_inspectorView);
- return toImpl([m_inspectorView.get() pageRef]);
+ return toImpl(m_inspectorView.get().pageRef);
}
void WebInspectorProxy::platformOpen()
diff --git a/WebKit2/UIProcess/win/WebInspectorProxyWin.cpp b/WebKit2/UIProcess/win/WebInspectorProxyWin.cpp
index b513b6e..42a41e5 100644
--- a/WebKit2/UIProcess/win/WebInspectorProxyWin.cpp
+++ b/WebKit2/UIProcess/win/WebInspectorProxyWin.cpp
@@ -152,8 +152,8 @@ WebPageProxy* WebInspectorProxy::platformCreateInspectorPage()
ASSERT(!m_inspectorWindow);
RECT emptyRect = {0};
- m_inspectorView = WebView::create(emptyRect, m_page->pageNamespace(), inspectorPageGroup(), 0).leakRef();
-
+ m_inspectorView = WebView::createForAssociatedPage(emptyRect, m_page, inspectorPageGroup(), 0).leakRef();
+
return m_inspectorView->page();
}
diff --git a/WebKit2/UIProcess/win/WebView.cpp b/WebKit2/UIProcess/win/WebView.cpp
index d434a3e..3eac543 100644
--- a/WebKit2/UIProcess/win/WebView.cpp
+++ b/WebKit2/UIProcess/win/WebView.cpp
@@ -182,7 +182,7 @@ bool WebView::registerWebViewWindowClass()
return !!::RegisterClassEx(&wcex);
}
-WebView::WebView(RECT rect, WebPageNamespace* pageNamespace, WebPageGroup* pageGroup, HWND parentWindow)
+WebView::WebView(RECT rect, WebContext* context, WebPageGroup* pageGroup, HWND parentWindow, bool usingSharedProcess)
: m_rect(rect)
, m_topLevelParentWindow(0)
, m_toolTipWindow(0)
@@ -192,6 +192,30 @@ WebView::WebView(RECT rect, WebPageNamespace* pageNamespace, WebPageGroup* pageG
, m_trackingMouseLeave(false)
, m_isBeingDestroyed(false)
{
+ RefPtr<WebPageNamespace> pageNamespace;
+ if (usingSharedProcess)
+ pageNamespace = context->sharedPageNamespace();
+ else
+ pageNamespace = context->createPageNamespace();
+
+ initialize(pageNamespace.get(), pageGroup, parentWindow);
+}
+
+WebView::WebView(RECT rect, WebPageProxy* page, WebPageGroup* pageGroup, HWND parentWindow)
+ : m_rect(rect)
+ , m_topLevelParentWindow(0)
+ , m_toolTipWindow(0)
+ , m_lastCursorSet(0)
+ , m_webCoreCursor(0)
+ , m_overrideCursor(0)
+ , m_trackingMouseLeave(false)
+ , m_isBeingDestroyed(false)
+{
+ initialize(page->pageNamespace(), pageGroup, parentWindow);
+}
+
+void WebView::initialize(WebPageNamespace* pageNamespace, WebPageGroup* pageGroup, HWND parentWindow)
+{
registerWebViewWindowClass();
m_page = pageNamespace->createWebPage(pageGroup);
@@ -199,10 +223,10 @@ WebView::WebView(RECT rect, WebPageNamespace* pageNamespace, WebPageGroup* pageG
m_page->setDrawingArea(ChunkedUpdateDrawingAreaProxy::create(this));
m_window = ::CreateWindowEx(0, kWebKit2WebViewWindowClassName, 0, WS_CHILD | WS_CLIPSIBLINGS | WS_CLIPCHILDREN,
- rect.top, rect.left, rect.right - rect.left, rect.bottom - rect.top, parentWindow ? parentWindow : HWND_MESSAGE, 0, instanceHandle(), this);
+ m_rect.top, m_rect.left, m_rect.right - m_rect.left, m_rect.bottom - m_rect.top, parentWindow ? parentWindow : HWND_MESSAGE, 0, instanceHandle(), this);
ASSERT(::IsWindow(m_window));
- m_page->initializeWebPage(IntRect(rect).size());
+ m_page->initializeWebPage(IntRect(m_rect).size());
::ShowWindow(m_window, SW_SHOW);
diff --git a/WebKit2/UIProcess/win/WebView.h b/WebKit2/UIProcess/win/WebView.h
index 994f23c..a3bf488 100644
--- a/WebKit2/UIProcess/win/WebView.h
+++ b/WebKit2/UIProcess/win/WebView.h
@@ -41,9 +41,17 @@ class WebPageNamespace;
class WebView : public APIObject, public PageClient, WebCore::WindowMessageListener {
public:
- static PassRefPtr<WebView> create(RECT rect, WebPageNamespace* pageNamespace, WebPageGroup* pageGroup, HWND parentWindow)
+ static PassRefPtr<WebView> create(RECT rect, WebContext* context, WebPageGroup* pageGroup, HWND parentWindow)
{
- return adoptRef(new WebView(rect, pageNamespace, pageGroup, parentWindow));
+ return adoptRef(new WebView(rect, context, pageGroup, parentWindow, false));
+ }
+ static PassRefPtr<WebView> createUsingSharedProcess(RECT rect, WebContext* context, WebPageGroup* pageGroup, HWND parentWindow)
+ {
+ return adoptRef(new WebView(rect, context, pageGroup, parentWindow, true));
+ }
+ static PassRefPtr<WebView> createForAssociatedPage(RECT rect, WebPageProxy* page, WebPageGroup* pageGroup, HWND parentWindow)
+ {
+ return adoptRef(new WebView(rect, page, pageGroup, parentWindow));
}
~WebView();
@@ -58,7 +66,10 @@ public:
WebPageProxy* page() const { return m_page.get(); }
private:
- WebView(RECT, WebPageNamespace*, WebPageGroup*, HWND parentWindow);
+ WebView(RECT, WebContext*, WebPageGroup*, HWND parentWindow, bool usingSharedProcess);
+ WebView(RECT, WebPageProxy*, WebPageGroup*, HWND parentWindow);
+
+ void initialize(WebPageNamespace*, WebPageGroup*, HWND parentWindow);
virtual Type type() const { return TypeView; }
diff --git a/WebKit2/WebKit2.pro b/WebKit2/WebKit2.pro
index 61c4977..3d640bc 100644
--- a/WebKit2/WebKit2.pro
+++ b/WebKit2/WebKit2.pro
@@ -288,7 +288,6 @@ HEADERS += \
UIProcess/API/C/WKNavigationData.h \
UIProcess/API/C/WKPage.h \
UIProcess/API/C/WKPageGroup.h \
- UIProcess/API/C/WKPageNamespace.h \
UIProcess/API/C/WKPagePrivate.h \
UIProcess/API/C/WKPreferences.h \
UIProcess/API/C/WKPreferencesPrivate.h \
@@ -488,7 +487,6 @@ SOURCES += \
UIProcess/API/C/WKNavigationData.cpp \
UIProcess/API/C/WKPage.cpp \
UIProcess/API/C/WKPageGroup.cpp \
- UIProcess/API/C/WKPageNamespace.cpp \
UIProcess/API/C/WKPreferences.cpp \
UIProcess/API/C/WKProtectionSpace.cpp \
UIProcess/API/cpp/qt/WKStringQt.cpp \
diff --git a/WebKit2/WebKit2.xcodeproj/project.pbxproj b/WebKit2/WebKit2.xcodeproj/project.pbxproj
index 089e9ab..5126d8b 100644
--- a/WebKit2/WebKit2.xcodeproj/project.pbxproj
+++ b/WebKit2/WebKit2.xcodeproj/project.pbxproj
@@ -541,8 +541,6 @@
BCEE966D112FAF57006BCC24 /* Attachment.h in Headers */ = {isa = PBXBuildFile; fileRef = BCEE966B112FAF57006BCC24 /* Attachment.h */; };
BCEE98C6113314D7006BCC24 /* WebPageNamespace.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCEE98C4113314D7006BCC24 /* WebPageNamespace.cpp */; };
BCEE98C7113314D7006BCC24 /* WebPageNamespace.h in Headers */ = {isa = PBXBuildFile; fileRef = BCEE98C5113314D7006BCC24 /* WebPageNamespace.h */; };
- BCEE98CC1133174C006BCC24 /* WKPageNamespace.cpp in Sources */ = {isa = PBXBuildFile; fileRef = BCEE98CA1133174C006BCC24 /* WKPageNamespace.cpp */; };
- BCEE98CD1133174C006BCC24 /* WKPageNamespace.h in Headers */ = {isa = PBXBuildFile; fileRef = BCEE98CB1133174C006BCC24 /* WKPageNamespace.h */; settings = {ATTRIBUTES = (Public, ); }; };
BCF049E611FE20F600F86A58 /* WKBundleFramePrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = BCF049E411FE20F600F86A58 /* WKBundleFramePrivate.h */; settings = {ATTRIBUTES = (Private, ); }; };
BCF049E711FE20F600F86A58 /* WKBundlePrivate.h in Headers */ = {isa = PBXBuildFile; fileRef = BCF049E511FE20F600F86A58 /* WKBundlePrivate.h */; settings = {ATTRIBUTES = (Private, ); }; };
BCF50121123ED3B3005955AE /* ThreadLauncher.h in Headers */ = {isa = PBXBuildFile; fileRef = BCF5011F123ED3B3005955AE /* ThreadLauncher.h */; };
@@ -1196,8 +1194,6 @@
BCEE966B112FAF57006BCC24 /* Attachment.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = Attachment.h; sourceTree = "<group>"; };
BCEE98C4113314D7006BCC24 /* WebPageNamespace.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WebPageNamespace.cpp; sourceTree = "<group>"; };
BCEE98C5113314D7006BCC24 /* WebPageNamespace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WebPageNamespace.h; sourceTree = "<group>"; };
- BCEE98CA1133174C006BCC24 /* WKPageNamespace.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = WKPageNamespace.cpp; sourceTree = "<group>"; };
- BCEE98CB1133174C006BCC24 /* WKPageNamespace.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKPageNamespace.h; sourceTree = "<group>"; };
BCF049E411FE20F600F86A58 /* WKBundleFramePrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKBundleFramePrivate.h; sourceTree = "<group>"; };
BCF049E511FE20F600F86A58 /* WKBundlePrivate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = WKBundlePrivate.h; sourceTree = "<group>"; };
BCF04C8C11FF9B7D00F86A58 /* APIObject.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = APIObject.h; sourceTree = "<group>"; };
@@ -1970,8 +1966,6 @@
BCD597D5112B56DC00EC8C23 /* WKPage.h */,
BC7B633612A45ABA00D174A4 /* WKPageGroup.cpp */,
BC7B633512A45ABA00D174A4 /* WKPageGroup.h */,
- BCEE98CA1133174C006BCC24 /* WKPageNamespace.cpp */,
- BCEE98CB1133174C006BCC24 /* WKPageNamespace.h */,
BC177464118B9FF4007D9E9A /* WKPagePrivate.h */,
BCD597CF112B56AC00EC8C23 /* WKPreferences.cpp */,
BCD597CE112B56AC00EC8C23 /* WKPreferences.h */,
@@ -2510,7 +2504,6 @@
BCB9F6A51123DD0D00A137E0 /* WKFramePolicyListener.h in Headers */,
BCF69FA91176D1CB00471A52 /* WKNavigationData.h in Headers */,
BCD597D7112B56DC00EC8C23 /* WKPage.h in Headers */,
- BCEE98CD1133174C006BCC24 /* WKPageNamespace.h in Headers */,
BC177465118B9FF4007D9E9A /* WKPagePrivate.h in Headers */,
BCD597D0112B56AC00EC8C23 /* WKPreferences.h in Headers */,
762B748D120BC75C00819339 /* WKPreferencesPrivate.h in Headers */,
@@ -2935,7 +2928,6 @@
BCB9F6A61123DD0D00A137E0 /* WKFramePolicyListener.cpp in Sources */,
BCF69FAA1176D1CB00471A52 /* WKNavigationData.cpp in Sources */,
BCD597D6112B56DC00EC8C23 /* WKPage.cpp in Sources */,
- BCEE98CC1133174C006BCC24 /* WKPageNamespace.cpp in Sources */,
BCD597D1112B56AC00EC8C23 /* WKPreferences.cpp in Sources */,
BC8699B6116AADAA002A925B /* WKView.mm in Sources */,
BC2E6E8D1141971500A63B1E /* WorkQueue.cpp in Sources */,
diff --git a/WebKit2/win/WebKit2.vcproj b/WebKit2/win/WebKit2.vcproj
index 4970ae3..613de38 100755
--- a/WebKit2/win/WebKit2.vcproj
+++ b/WebKit2/win/WebKit2.vcproj
@@ -2281,14 +2281,6 @@
>
</File>
<File
- RelativePath="..\UIProcess\API\C\WKPageNamespace.cpp"
- >
- </File>
- <File
- RelativePath="..\UIProcess\API\C\WKPageNamespace.h"
- >
- </File>
- <File
RelativePath="..\UIProcess\API\C\WKPagePrivate.h"
>
</File>
diff --git a/WebKit2/win/WebKit2Generated.make b/WebKit2/win/WebKit2Generated.make
index a638196..32977b8 100644
--- a/WebKit2/win/WebKit2Generated.make
+++ b/WebKit2/win/WebKit2Generated.make
@@ -51,7 +51,6 @@ all:
xcopy /y /d "..\UIProcess\API\C\WKNavigationData.h" "$(WEBKITOUTPUTDIR)\include\WebKit2"
xcopy /y /d "..\UIProcess\API\C\WKPage.h" "$(WEBKITOUTPUTDIR)\include\WebKit2"
xcopy /y /d "..\UIProcess\API\C\WKPageGroup.h" "$(WEBKITOUTPUTDIR)\include\WebKit2"
- xcopy /y /d "..\UIProcess\API\C\WKPageNamespace.h" "$(WEBKITOUTPUTDIR)\include\WebKit2"
xcopy /y /d "..\UIProcess\API\C\WKPreferences.h" "$(WEBKITOUTPUTDIR)\include\WebKit2"
xcopy /y /d "..\UIProcess\API\C\WKPreferencesPrivate.h" "$(WEBKITOUTPUTDIR)\include\WebKit2"
xcopy /y /d "..\UIProcess\API\C\WKProtectionSpace.h" "$(WEBKITOUTPUTDIR)\include\WebKit2"
diff --git a/WebKitTools/ChangeLog b/WebKitTools/ChangeLog
index 2093405..2cdc1fc 100644
--- a/WebKitTools/ChangeLog
+++ b/WebKitTools/ChangeLog
@@ -1,3 +1,43 @@
+2010-12-13 Sam Weinig <sam at webkit.org>
+
+ Reviewed by Anders Carlsson.
+
+ Change the WebKit2 public API so there is no explicit WKPageNamespace object
+ https://bugs.webkit.org/show_bug.cgi?id=50898
+
+ * MiniBrowser/mac/AppDelegate.h:
+ * MiniBrowser/mac/AppDelegate.m:
+ * MiniBrowser/mac/BrowserWindowController.h:
+ * MiniBrowser/mac/BrowserWindowController.m:
+ * MiniBrowser/win/BrowserView.cpp:
+ Convert MiniBrowser to not use PageNamespaces.
+
+ * TestWebKitAPI/PlatformWebView.h:
+ * TestWebKitAPI/Tests/WebKit2/DocumentStartUserScriptAlertCrash.cpp:
+ * TestWebKitAPI/Tests/WebKit2/EvaluateJavaScript.cpp:
+ * TestWebKitAPI/Tests/WebKit2/FailedLoad.cpp:
+ * TestWebKitAPI/Tests/WebKit2/Find.cpp:
+ * TestWebKitAPI/Tests/WebKit2/FrameMIMETypeHTML.cpp:
+ * TestWebKitAPI/Tests/WebKit2/FrameMIMETypePNG.cpp:
+ * TestWebKitAPI/Tests/WebKit2/InjectedBundleBasic.cpp:
+ * TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp:
+ * TestWebKitAPI/Tests/WebKit2/PageLoadDidChangeLocationWithinPageForFrame.cpp:
+ * TestWebKitAPI/Tests/WebKit2/PreventEmptyUserAgent.cpp:
+ * TestWebKitAPI/Tests/WebKit2/SpacebarScrolling.cpp:
+ * TestWebKitAPI/Tests/WebKit2/win/AltKeyGeneratesWMSysCommand.cpp:
+ * TestWebKitAPI/Tests/WebKit2/win/WMCloseCallsUIClientClose.cpp:
+ * TestWebKitAPI/mac/PlatformWebViewMac.mm:
+ * TestWebKitAPI/win/PlatformWebViewWin.cpp:
+ Convert TestWebKitAPI to not use PageNamespaces.
+
+ * WebKitTestRunner/PlatformWebView.h:
+ * WebKitTestRunner/TestController.cpp:
+ * WebKitTestRunner/TestController.h:
+ * WebKitTestRunner/mac/PlatformWebViewMac.mm:
+ * WebKitTestRunner/qt/PlatformWebViewQt.cpp:
+ * WebKitTestRunner/win/PlatformWebViewWin.cpp:
+ Convert WebKitTestRunner to not use PageNamespaces.
+
2010-12-13 Gabor Rapcsanyi <rgabor at inf.u-szeged.hu>
Reviewed by Eric Seidel.
diff --git a/WebKitTools/MiniBrowser/mac/AppDelegate.h b/WebKitTools/MiniBrowser/mac/AppDelegate.h
index 2173c93..bf79656 100644
--- a/WebKitTools/MiniBrowser/mac/AppDelegate.h
+++ b/WebKitTools/MiniBrowser/mac/AppDelegate.h
@@ -30,12 +30,12 @@ enum ProcessModel {
typedef unsigned long ProcessModel;
@interface BrowserAppDelegate : NSObject <NSApplicationDelegate> {
- ProcessModel currentProcessModel;
- WKPageNamespaceRef threadPageNamespace;
- WKPageNamespaceRef processPageNamespace;
+ ProcessModel _currentProcessModel;
+ WKContextRef _threadContext;
+ WKContextRef _processContext;
}
-- (WKPageNamespaceRef)getCurrentPageNamespace;
+- (WKContextRef)getCurrentContext;
- (IBAction)setSharedProcessProcessModel:(id)sender;
- (IBAction)setSharedThreadProcessModel:(id)sender;
diff --git a/WebKitTools/MiniBrowser/mac/AppDelegate.m b/WebKitTools/MiniBrowser/mac/AppDelegate.m
index 3747e28..a02193b 100644
--- a/WebKitTools/MiniBrowser/mac/AppDelegate.m
+++ b/WebKitTools/MiniBrowser/mac/AppDelegate.m
@@ -114,9 +114,9 @@ static void populateVisitedLinks(WKContextRef context, const void *clientInfo)
self = [super init];
if (self) {
if ([NSEvent modifierFlags] & NSShiftKeyMask)
- currentProcessModel = kProcessModelSharedSecondaryThread;
+ _currentProcessModel = kProcessModelSharedSecondaryThread;
else
- currentProcessModel = kProcessModelSharedSecondaryProcess;
+ _currentProcessModel = kProcessModelSharedSecondaryProcess;
WKContextHistoryClient historyClient = {
0,
@@ -128,17 +128,14 @@ static void populateVisitedLinks(WKContextRef context, const void *clientInfo)
populateVisitedLinks
};
- WKContextRef threadContext = WKContextGetSharedThreadContext();
- WKContextSetHistoryClient(threadContext, &historyClient);
- WKContextSetCacheModel(threadContext, kWKCacheModelPrimaryWebBrowser);
-
- threadPageNamespace = WKPageNamespaceCreate(threadContext);
- WKRelease(threadContext);
+ _threadContext = WKContextGetSharedThreadContext();
+ WKContextSetHistoryClient(_threadContext, &historyClient);
+ WKContextSetCacheModel(_threadContext, kWKCacheModelPrimaryWebBrowser);
CFStringRef bundlePathCF = (CFStringRef)[[NSBundle mainBundle] pathForAuxiliaryExecutable:@"WebBundle.bundle"];
WKStringRef bundlePath = WKStringCreateWithCFString(bundlePathCF);
- WKContextRef processContext = WKContextCreateWithInjectedBundlePath(bundlePath);
+ _processContext = WKContextCreateWithInjectedBundlePath(bundlePath);
WKContextInjectedBundleClient bundleClient = {
0, /* version */
@@ -146,12 +143,9 @@ static void populateVisitedLinks(WKContextRef context, const void *clientInfo)
didRecieveMessageFromInjectedBundle,
0
};
- WKContextSetInjectedBundleClient(processContext, &bundleClient);
- WKContextSetHistoryClient(processContext, &historyClient);
- WKContextSetCacheModel(processContext, kWKCacheModelPrimaryWebBrowser);
-
- processPageNamespace = WKPageNamespaceCreate(processContext);
- WKRelease(processContext);
+ WKContextSetInjectedBundleClient(_processContext, &bundleClient);
+ WKContextSetHistoryClient(_processContext, &historyClient);
+ WKContextSetCacheModel(_processContext, kWKCacheModelPrimaryWebBrowser);
WKRelease(bundlePath);
}
@@ -161,32 +155,32 @@ static void populateVisitedLinks(WKContextRef context, const void *clientInfo)
- (IBAction)newWindow:(id)sender
{
- BrowserWindowController *controller = [[BrowserWindowController alloc] initWithPageNamespace:[self getCurrentPageNamespace]];
+ BrowserWindowController *controller = [[BrowserWindowController alloc] initWithContext:[self getCurrentContext]];
[[controller window] makeKeyAndOrderFront:sender];
[controller loadURLString:defaultURL];
}
-- (WKPageNamespaceRef)getCurrentPageNamespace
+- (WKContextRef)getCurrentContext
{
- return (currentProcessModel == kProcessModelSharedSecondaryThread) ? threadPageNamespace : processPageNamespace;
+ return (_currentProcessModel == kProcessModelSharedSecondaryThread) ? _threadContext : _processContext;
}
- (BOOL)validateMenuItem:(NSMenuItem *)menuItem
{
if ([menuItem action] == @selector(setSharedProcessProcessModel:))
- [menuItem setState:currentProcessModel == kProcessModelSharedSecondaryProcess ? NSOnState : NSOffState];
+ [menuItem setState:_currentProcessModel == kProcessModelSharedSecondaryProcess ? NSOnState : NSOffState];
else if ([menuItem action] == @selector(setSharedThreadProcessModel:))
- [menuItem setState:currentProcessModel == kProcessModelSharedSecondaryThread ? NSOnState : NSOffState];
+ [menuItem setState:_currentProcessModel == kProcessModelSharedSecondaryThread ? NSOnState : NSOffState];
return YES;
}
- (void)_setProcessModel:(ProcessModel)processModel
{
- if (processModel == currentProcessModel)
+ if (processModel == _currentProcessModel)
return;
- currentProcessModel = processModel;
+ _currentProcessModel = processModel;
}
- (IBAction)setSharedProcessProcessModel:(id)sender
@@ -203,8 +197,8 @@ static void populateVisitedLinks(WKContextRef context, const void *clientInfo)
{
static BrowserStatisticsWindowController* windowController;
if (!windowController)
- windowController = [[BrowserStatisticsWindowController alloc] initWithThreadedWKContextRef:WKPageNamespaceGetContext(threadPageNamespace)
- processWKContextRef:WKPageNamespaceGetContext(processPageNamespace)];
+ windowController = [[BrowserStatisticsWindowController alloc] initWithThreadedWKContextRef:_threadContext
+ processWKContextRef:_processContext];
[[windowController window] makeKeyAndOrderFront:self];
}
@@ -224,12 +218,9 @@ static void populateVisitedLinks(WKContextRef context, const void *clientInfo)
[controller applicationTerminating];
}
}
-
- WKRelease(threadPageNamespace);
- threadPageNamespace = 0;
- WKRelease(processPageNamespace);
- processPageNamespace = 0;
+ WKRelease(_processContext);
+ _processContext = 0;
}
- (BrowserWindowController *)frontmostBrowserWindowController
@@ -265,7 +256,7 @@ static void populateVisitedLinks(WKContextRef context, const void *clientInfo)
BrowserWindowController *controller = [self frontmostBrowserWindowController];
if (!controller) {
- controller = [[BrowserWindowController alloc] initWithPageNamespace:[self getCurrentPageNamespace]];
+ controller = [[BrowserWindowController alloc] initWithContext:[self getCurrentContext]];
[[controller window] makeKeyAndOrderFront:self];
}
diff --git a/WebKitTools/MiniBrowser/mac/BrowserWindowController.h b/WebKitTools/MiniBrowser/mac/BrowserWindowController.h
index 6b6aeb8..d132802 100644
--- a/WebKitTools/MiniBrowser/mac/BrowserWindowController.h
+++ b/WebKitTools/MiniBrowser/mac/BrowserWindowController.h
@@ -34,7 +34,7 @@
IBOutlet NSWindow *findPanelWindow;
- WKPageNamespaceRef _pageNamespace;
+ WKContextRef _context;
WKView *_webView;
BOOL _zoomTextOnly;
}
@@ -47,7 +47,7 @@
- (IBAction)showHideWebView:(id)sender;
- (IBAction)removeReinsertWebView:(id)sender;
-- (id)initWithPageNamespace:(WKPageNamespaceRef)pageNamespace;
+- (id)initWithContext:(WKContextRef)context;
- (void)loadURLString:(NSString *)urlString;
- (void)applicationTerminating;
diff --git a/WebKitTools/MiniBrowser/mac/BrowserWindowController.m b/WebKitTools/MiniBrowser/mac/BrowserWindowController.m
index 6033a28..c900a27 100644
--- a/WebKitTools/MiniBrowser/mac/BrowserWindowController.m
+++ b/WebKitTools/MiniBrowser/mac/BrowserWindowController.m
@@ -43,10 +43,10 @@
@implementation BrowserWindowController
-- (id)initWithPageNamespace:(WKPageNamespaceRef)pageNamespace
+- (id)initWithContext:(WKContextRef)context
{
if ((self = [super initWithWindowNibName:@"BrowserWindow"])) {
- _pageNamespace = WKRetain(pageNamespace);
+ _context = WKRetain(context);
_zoomTextOnly = NO;
}
@@ -55,7 +55,7 @@
- (void)dealloc
{
- assert(!_pageNamespace);
+ assert(!_context);
[super dealloc];
}
@@ -157,8 +157,8 @@
- (void)windowWillClose:(NSNotification *)notification
{
- WKRelease(_pageNamespace);
- _pageNamespace = 0;
+ WKRelease(_context);
+ _context = 0;
}
- (void)applicationTerminating
@@ -380,7 +380,7 @@ static void decidePolicyForMIMEType(WKPageRef page, WKStringRef MIMEType, WKURLR
static WKPageRef createNewPage(WKPageRef page, WKDictionaryRef features, WKEventModifiers modifiers, WKEventMouseButton button, const void* clientInfo)
{
LOG(@"createNewPage");
- BrowserWindowController *controller = [[BrowserWindowController alloc] initWithPageNamespace:WKPageGetPageNamespace(page)];
+ BrowserWindowController *controller = [[BrowserWindowController alloc] initWithContext:WKPageGetContext(page)];
[controller loadWindow];
return controller->_webView.pageRef;
@@ -537,7 +537,7 @@ static bool runBeforeUnloadConfirmPanel(WKPageRef page, WKStringRef message, WKF
- (void)awakeFromNib
{
- _webView = [[WKView alloc] initWithFrame:[containerView frame] pageNamespaceRef:_pageNamespace];
+ _webView = [[WKView alloc] initWithFrame:[containerView frame] contextRef:_context];
[containerView addSubview:_webView];
[_webView setFrame:[containerView frame]];
diff --git a/WebKitTools/MiniBrowser/qt/BrowserWindow.cpp b/WebKitTools/MiniBrowser/qt/BrowserWindow.cpp
index bf763a4..743c91a 100644
--- a/WebKitTools/MiniBrowser/qt/BrowserWindow.cpp
+++ b/WebKitTools/MiniBrowser/qt/BrowserWindow.cpp
@@ -28,8 +28,6 @@
#include "BrowserWindow.h"
-#include "WKPageNamespace.h"
-
BrowserWindow::BrowserWindow(QGraphicsWKView::BackingStoreType type)
: m_backingStoreType(type)
{
diff --git a/WebKitTools/MiniBrowser/win/BrowserView.cpp b/WebKitTools/MiniBrowser/win/BrowserView.cpp
index 186dbd6..c89e10c 100644
--- a/WebKitTools/MiniBrowser/win/BrowserView.cpp
+++ b/WebKitTools/MiniBrowser/win/BrowserView.cpp
@@ -90,9 +90,7 @@ void BrowserView::create(RECT webViewRect, BrowserWindow* parentWindow)
else
context = WKContextGetSharedProcessContext();
- WKPageNamespaceRef pageNamespace = WKPageNamespaceCreate(context);
-
- m_webView = WKViewCreate(webViewRect, pageNamespace, 0, parentWindow->window());
+ m_webView = WKViewCreate(webViewRect, context, 0, parentWindow->window());
WKPageUIClient uiClient = {
0, /* version */
diff --git a/WebKitTools/TestWebKitAPI/PlatformWebView.h b/WebKitTools/TestWebKitAPI/PlatformWebView.h
index 349d855..f401037 100644
--- a/WebKitTools/TestWebKitAPI/PlatformWebView.h
+++ b/WebKitTools/TestWebKitAPI/PlatformWebView.h
@@ -51,7 +51,8 @@ class WindowMessageObserver;
class PlatformWebView {
public:
- PlatformWebView(WKPageNamespaceRef, WKPageGroupRef = 0);
+ PlatformWebView(WKContextRef, WKPageGroupRef = 0);
+ PlatformWebView(WKPageRef, WKPageGroupRef = 0);
~PlatformWebView();
WKPageRef page();
diff --git a/WebKitTools/TestWebKitAPI/Tests/WebKit2/DocumentStartUserScriptAlertCrash.cpp b/WebKitTools/TestWebKitAPI/Tests/WebKit2/DocumentStartUserScriptAlertCrash.cpp
index b935b6f..fdda8c7 100644
--- a/WebKitTools/TestWebKitAPI/Tests/WebKit2/DocumentStartUserScriptAlertCrash.cpp
+++ b/WebKitTools/TestWebKitAPI/Tests/WebKit2/DocumentStartUserScriptAlertCrash.cpp
@@ -48,8 +48,7 @@ TEST(WebKit2, DocumentStartUserScriptAlertCrashTest)
WKRetainPtr<WKPageGroupRef> pageGroup(AdoptWK, WKPageGroupCreateWithIdentifier(WKStringCreateWithUTF8CString("DocumentStartUserScriptAlertCrashTestPageGroup")));
WKRetainPtr<WKContextRef> context(AdoptWK, Util::createContextForInjectedBundleTest("DocumentStartUserScriptAlertCrashTest", pageGroup.get()));
- WKRetainPtr<WKPageNamespaceRef> pageNamespace(AdoptWK, WKPageNamespaceCreate(context.get()));
- PlatformWebView webView(pageNamespace.get(), pageGroup.get());
+ PlatformWebView webView(context.get(), pageGroup.get());
WKPageUIClient uiClient;
memset(&uiClient, 0, sizeof(uiClient));
diff --git a/WebKitTools/TestWebKitAPI/Tests/WebKit2/EvaluateJavaScript.cpp b/WebKitTools/TestWebKitAPI/Tests/WebKit2/EvaluateJavaScript.cpp
index bbdece3..32bd563 100644
--- a/WebKitTools/TestWebKitAPI/Tests/WebKit2/EvaluateJavaScript.cpp
+++ b/WebKitTools/TestWebKitAPI/Tests/WebKit2/EvaluateJavaScript.cpp
@@ -49,8 +49,7 @@ static void didRunJavaScript(WKStringRef resultString, WKErrorRef error, void* c
TEST(WebKit2, EvaluateJavaScriptThatThrowsAnException)
{
WKRetainPtr<WKContextRef> context(AdoptWK, WKContextCreate());
- WKRetainPtr<WKPageNamespaceRef> pageNamespace(AdoptWK, WKPageNamespaceCreate(context.get()));
- PlatformWebView webView(pageNamespace.get());
+ PlatformWebView webView(context.get());
WKRetainPtr<WKStringRef> javaScriptString(AdoptWK, WKStringCreateWithUTF8CString("throw 'Hello'"));
WKPageRunJavaScriptInMainFrame(webView.page(), javaScriptString.get(), reinterpret_cast<void*>(0x1234578), didRunJavaScript);
diff --git a/WebKitTools/TestWebKitAPI/Tests/WebKit2/FailedLoad.cpp b/WebKitTools/TestWebKitAPI/Tests/WebKit2/FailedLoad.cpp
index 0ccee5a..fdb3693 100644
--- a/WebKitTools/TestWebKitAPI/Tests/WebKit2/FailedLoad.cpp
+++ b/WebKitTools/TestWebKitAPI/Tests/WebKit2/FailedLoad.cpp
@@ -49,8 +49,7 @@ static void didFailProvisionalLoadWithErrorForFrame(WKPageRef page, WKFrameRef f
TEST(WebKit2, FailedLoad)
{
WKRetainPtr<WKContextRef> context(AdoptWK, WKContextCreate());
- WKRetainPtr<WKPageNamespaceRef> pageNamespace(AdoptWK, WKPageNamespaceCreate(context.get()));
- PlatformWebView webView(pageNamespace.get());
+ PlatformWebView webView(context.get());
WKPageLoaderClient loaderClient;
memset(&loaderClient, 0, sizeof(loaderClient));
diff --git a/WebKitTools/TestWebKitAPI/Tests/WebKit2/Find.cpp b/WebKitTools/TestWebKitAPI/Tests/WebKit2/Find.cpp
index 63bcea8..f22c44d 100644
--- a/WebKitTools/TestWebKitAPI/Tests/WebKit2/Find.cpp
+++ b/WebKitTools/TestWebKitAPI/Tests/WebKit2/Find.cpp
@@ -51,9 +51,7 @@ static void didCountStringMatches(WKPageRef page, WKStringRef string, unsigned n
TEST(WebKit2, Find)
{
WKRetainPtr<WKContextRef> context(AdoptWK, WKContextCreate());
- WKRetainPtr<WKPageNamespaceRef> pageNamespace(AdoptWK, WKPageNamespaceCreate(context.get()));
-
- PlatformWebView webView(pageNamespace.get());
+ PlatformWebView webView(context.get());
WKPageLoaderClient loaderClient;
memset(&loaderClient, 0, sizeof(loaderClient));
diff --git a/WebKitTools/TestWebKitAPI/Tests/WebKit2/FrameMIMETypeHTML.cpp b/WebKitTools/TestWebKitAPI/Tests/WebKit2/FrameMIMETypeHTML.cpp
index a270357..1188bb2 100644
--- a/WebKitTools/TestWebKitAPI/Tests/WebKit2/FrameMIMETypeHTML.cpp
+++ b/WebKitTools/TestWebKitAPI/Tests/WebKit2/FrameMIMETypeHTML.cpp
@@ -57,8 +57,7 @@ static void didFinishLoadForFrame(WKPageRef page, WKFrameRef frame, WKTypeRef us
TEST(WebKit2, FrameMIMETypeHTML)
{
WKRetainPtr<WKContextRef> context(AdoptWK, WKContextCreate());
- WKRetainPtr<WKPageNamespaceRef> pageNamespace(AdoptWK, WKPageNamespaceCreate(context.get()));
- PlatformWebView webView(pageNamespace.get());
+ PlatformWebView webView(context.get());
WKPageLoaderClient loaderClient;
memset(&loaderClient, 0, sizeof(loaderClient));
diff --git a/WebKitTools/TestWebKitAPI/Tests/WebKit2/FrameMIMETypePNG.cpp b/WebKitTools/TestWebKitAPI/Tests/WebKit2/FrameMIMETypePNG.cpp
index 3588940..1b56bae 100644
--- a/WebKitTools/TestWebKitAPI/Tests/WebKit2/FrameMIMETypePNG.cpp
+++ b/WebKitTools/TestWebKitAPI/Tests/WebKit2/FrameMIMETypePNG.cpp
@@ -57,8 +57,7 @@ static void didFinishLoadForFrame(WKPageRef page, WKFrameRef frame, WKTypeRef us
TEST(WebKit2, FrameMIMETypePNG)
{
WKRetainPtr<WKContextRef> context(AdoptWK, WKContextCreate());
- WKRetainPtr<WKPageNamespaceRef> pageNamespace(AdoptWK, WKPageNamespaceCreate(context.get()));
- PlatformWebView webView(pageNamespace.get());
+ PlatformWebView webView(context.get());
WKPageLoaderClient loaderClient;
memset(&loaderClient, 0, sizeof(loaderClient));
diff --git a/WebKitTools/TestWebKitAPI/Tests/WebKit2/InjectedBundleBasic.cpp b/WebKitTools/TestWebKitAPI/Tests/WebKit2/InjectedBundleBasic.cpp
index 1f4cce6..f28971d 100644
--- a/WebKitTools/TestWebKitAPI/Tests/WebKit2/InjectedBundleBasic.cpp
+++ b/WebKitTools/TestWebKitAPI/Tests/WebKit2/InjectedBundleBasic.cpp
@@ -53,7 +53,6 @@ static void didFinishLoadForFrame(WKPageRef page, WKFrameRef frame, WKTypeRef us
TEST(WebKit2, InjectedBundleBasic)
{
WKRetainPtr<WKContextRef> context(AdoptWK, Util::createContextForInjectedBundleTest("InjectedBundleBasicTest"));
- WKRetainPtr<WKPageNamespaceRef> pageNamespace(AdoptWK, WKPageNamespaceCreate(context.get()));
WKContextInjectedBundleClient injectedBundleClient;
memset(&injectedBundleClient, 0, sizeof(injectedBundleClient));
@@ -62,7 +61,7 @@ TEST(WebKit2, InjectedBundleBasic)
injectedBundleClient.didReceiveMessageFromInjectedBundle = didReceiveMessageFromInjectedBundle;
WKContextSetInjectedBundleClient(context.get(), &injectedBundleClient);
- PlatformWebView webView(pageNamespace.get());
+ PlatformWebView webView(context.get());
WKPageLoaderClient loaderClient;
memset(&loaderClient, 0, sizeof(loaderClient));
diff --git a/WebKitTools/TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp b/WebKitTools/TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp
index c3af543..98a636c 100644
--- a/WebKitTools/TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp
+++ b/WebKitTools/TestWebKitAPI/Tests/WebKit2/PageLoadBasic.cpp
@@ -113,9 +113,7 @@ TEST(WebKit2, PageLoadBasic)
State state;
WKRetainPtr<WKContextRef> context(AdoptWK, WKContextCreate());
- WKRetainPtr<WKPageNamespaceRef> pageNamespace(AdoptWK, WKPageNamespaceCreate(context.get()));
-
- PlatformWebView webView(pageNamespace.get());
+ PlatformWebView webView(context.get());
WKPageLoaderClient loaderClient;
memset(&loaderClient, 0, sizeof(loaderClient));
diff --git a/WebKitTools/TestWebKitAPI/Tests/WebKit2/PageLoadDidChangeLocationWithinPageForFrame.cpp b/WebKitTools/TestWebKitAPI/Tests/WebKit2/PageLoadDidChangeLocationWithinPageForFrame.cpp
index bb66950..3cbe113 100644
--- a/WebKitTools/TestWebKitAPI/Tests/WebKit2/PageLoadDidChangeLocationWithinPageForFrame.cpp
+++ b/WebKitTools/TestWebKitAPI/Tests/WebKit2/PageLoadDidChangeLocationWithinPageForFrame.cpp
@@ -60,9 +60,7 @@ static void didSameDocumentNavigationForFrame(WKPageRef, WKFrameRef, WKSameDocum
TEST(WebKit2, PageLoadDidChangeLocationWithinPageForFrame)
{
WKRetainPtr<WKContextRef> context(AdoptWK, WKContextCreate());
- WKRetainPtr<WKPageNamespaceRef> pageNamespace(AdoptWK, WKPageNamespaceCreate(context.get()));
-
- PlatformWebView webView(pageNamespace.get());
+ PlatformWebView webView(context.get());
WKPageLoaderClient loaderClient;
memset(&loaderClient, 0, sizeof(loaderClient));
diff --git a/WebKitTools/TestWebKitAPI/Tests/WebKit2/PreventEmptyUserAgent.cpp b/WebKitTools/TestWebKitAPI/Tests/WebKit2/PreventEmptyUserAgent.cpp
index af3ed12..306174a 100644
--- a/WebKitTools/TestWebKitAPI/Tests/WebKit2/PreventEmptyUserAgent.cpp
+++ b/WebKitTools/TestWebKitAPI/Tests/WebKit2/PreventEmptyUserAgent.cpp
@@ -48,8 +48,7 @@ static void didRunJavaScript(WKStringRef resultString, WKErrorRef error, void* c
TEST(WebKit2, PreventEmptyUserAgent)
{
WKRetainPtr<WKContextRef> context(AdoptWK, WKContextCreate());
- WKRetainPtr<WKPageNamespaceRef> pageNamespace(AdoptWK, WKPageNamespaceCreate(context.get()));
- PlatformWebView webView(pageNamespace.get());
+ PlatformWebView webView(context.get());
WKPageSetCustomUserAgent(webView.page(), WKStringCreateWithUTF8CString(""));
WKRetainPtr<WKStringRef> javaScriptString(AdoptWK, WKStringCreateWithUTF8CString("navigator.userAgent"));
diff --git a/WebKitTools/TestWebKitAPI/Tests/WebKit2/SpacebarScrolling.cpp b/WebKitTools/TestWebKitAPI/Tests/WebKit2/SpacebarScrolling.cpp
index a88db9f..6d4783c 100644
--- a/WebKitTools/TestWebKitAPI/Tests/WebKit2/SpacebarScrolling.cpp
+++ b/WebKitTools/TestWebKitAPI/Tests/WebKit2/SpacebarScrolling.cpp
@@ -79,9 +79,7 @@ static bool runJSTest(WKPageRef page, const char* script, const char* expectedRe
TEST(WebKit2, SpacebarScrolling)
{
WKRetainPtr<WKContextRef> context(AdoptWK, WKContextCreate());
- WKRetainPtr<WKPageNamespaceRef> pageNamespace(AdoptWK, WKPageNamespaceCreate(context.get()));
-
- PlatformWebView webView(pageNamespace.get());
+ PlatformWebView webView(context.get());
WKPageLoaderClient loaderClient;
memset(&loaderClient, 0, sizeof(loaderClient));
diff --git a/WebKitTools/TestWebKitAPI/Tests/WebKit2/win/AltKeyGeneratesWMSysCommand.cpp b/WebKitTools/TestWebKitAPI/Tests/WebKit2/win/AltKeyGeneratesWMSysCommand.cpp
index c463cf0..1bca89b 100644
--- a/WebKitTools/TestWebKitAPI/Tests/WebKit2/win/AltKeyGeneratesWMSysCommand.cpp
+++ b/WebKitTools/TestWebKitAPI/Tests/WebKit2/win/AltKeyGeneratesWMSysCommand.cpp
@@ -61,9 +61,7 @@ static void didNotHandleKeyEventCallback(WKPageRef, WKNativeEventPtr event, cons
TEST(WebKit2, AltKeyGeneratesWMSysCommand)
{
WKRetainPtr<WKContextRef> context(AdoptWK, WKContextCreate());
- WKRetainPtr<WKPageNamespaceRef> pageNamespace(AdoptWK, WKPageNamespaceCreate(context.get()));
-
- PlatformWebView webView(pageNamespace.get());
+ PlatformWebView webView(context.get());
WKPageUIClient uiClient;
memset(&uiClient, 0, sizeof(uiClient));
diff --git a/WebKitTools/TestWebKitAPI/Tests/WebKit2/win/WMCloseCallsUIClientClose.cpp b/WebKitTools/TestWebKitAPI/Tests/WebKit2/win/WMCloseCallsUIClientClose.cpp
index a019f08..56e619e 100644
--- a/WebKitTools/TestWebKitAPI/Tests/WebKit2/win/WMCloseCallsUIClientClose.cpp
+++ b/WebKitTools/TestWebKitAPI/Tests/WebKit2/win/WMCloseCallsUIClientClose.cpp
@@ -41,9 +41,7 @@ static void close(WKPageRef, const void*)
TEST(WebKit2, WMCloseCallsUIClientClose)
{
WKRetainPtr<WKContextRef> context(AdoptWK, WKContextCreate());
- WKRetainPtr<WKPageNamespaceRef> pageNamespace(AdoptWK, WKPageNamespaceCreate(context.get()));
-
- PlatformWebView webView(pageNamespace.get());
+ PlatformWebView webView(context.get());
WKPageUIClient uiClient;
memset(&uiClient, 0, sizeof(uiClient));
diff --git a/WebKitTools/TestWebKitAPI/mac/PlatformWebViewMac.mm b/WebKitTools/TestWebKitAPI/mac/PlatformWebViewMac.mm
index e06e2e6..5219f1b 100644
--- a/WebKitTools/TestWebKitAPI/mac/PlatformWebViewMac.mm
+++ b/WebKitTools/TestWebKitAPI/mac/PlatformWebViewMac.mm
@@ -29,10 +29,24 @@
namespace TestWebKitAPI {
-PlatformWebView::PlatformWebView(WKPageNamespaceRef pageNamespaceRef, WKPageGroupRef pageGroupRef)
+PlatformWebView::PlatformWebView(WKContextRef contextRef, WKPageGroupRef pageGroupRef)
{
NSRect rect = NSMakeRect(0, 0, 800, 600);
- m_view = [[WKView alloc] initWithFrame:rect pageNamespaceRef:pageNamespaceRef pageGroupRef:pageGroupRef];
+ m_view = [[WKView alloc] initWithFrame:rect contextRef:contextRef pageGroupRef:pageGroupRef];
+
+ NSRect windowRect = NSOffsetRect(rect, -10000, [[[NSScreen screens] objectAtIndex:0] frame].size.height - rect.size.height + 10000);
+ m_window = [[NSWindow alloc] initWithContentRect:windowRect styleMask:NSBorderlessWindowMask backing:NSBackingStoreBuffered defer:YES];
+ [m_window setColorSpace:[[NSScreen mainScreen] colorSpace]];
+ [[m_window contentView] addSubview:m_view];
+ [m_window orderBack:nil];
+ [m_window setAutodisplay:NO];
+ [m_window setReleasedWhenClosed:NO];
+}
+
+PlatformWebView::PlatformWebView(WKPageRef pageRef, WKPageGroupRef pageGroupRef)
+{
+ NSRect rect = NSMakeRect(0, 0, 800, 600);
+ m_view = [[WKView alloc] initWithFrame:rect forAssociatedPageRef:pageRef pageGroupRef:pageGroupRef];
NSRect windowRect = NSOffsetRect(rect, -10000, [[[NSScreen screens] objectAtIndex:0] frame].size.height - rect.size.height + 10000);
m_window = [[NSWindow alloc] initWithContentRect:windowRect styleMask:NSBorderlessWindowMask backing:NSBackingStoreBuffered defer:YES];
diff --git a/WebKitTools/TestWebKitAPI/win/PlatformWebViewWin.cpp b/WebKitTools/TestWebKitAPI/win/PlatformWebViewWin.cpp
index 0a4060c..bfebecc 100644
--- a/WebKitTools/TestWebKitAPI/win/PlatformWebViewWin.cpp
+++ b/WebKitTools/TestWebKitAPI/win/PlatformWebViewWin.cpp
@@ -56,14 +56,25 @@ void PlatformWebView::registerWindowClass()
::RegisterClassExW(&wndClass);
}
-PlatformWebView::PlatformWebView(WKPageNamespaceRef namespaceRef, WKPageGroupRef pageGroupRef)
+
+PlatformWebView::PlatformWebView(WKContextRef contextRef, WKPageGroupRef pageGroupRef)
+ : m_parentWindowMessageObserver(0)
+{
+ registerWindowClass();
+
+ RECT viewRect = {0, 0, 800, 600};
+ m_window = CreateWindowExW(0, hostWindowClassName, L"TestWebKitAPI", WS_OVERLAPPEDWINDOW, viewRect.left, viewRect.top, viewRect.right, viewRect.bottom, 0, 0, 0, this);
+ m_view = WKViewCreate(viewRect, contextRef, pageGroupRef, m_window);
+}
+
+PlatformWebView::PlatformWebView(WKPageRef pageRef, WKPageGroupRef pageGroupRef)
: m_parentWindowMessageObserver(0)
{
registerWindowClass();
RECT viewRect = {0, 0, 800, 600};
m_window = CreateWindowExW(0, hostWindowClassName, L"TestWebKitAPI", WS_OVERLAPPEDWINDOW, viewRect.left, viewRect.top, viewRect.right, viewRect.bottom, 0, 0, 0, this);
- m_view = WKViewCreate(viewRect, namespaceRef, pageGroupRef, m_window);
+ m_view = WKViewCreateForAssociatedPage(viewRect, pageRef, pageGroupRef, m_window);
}
PlatformWebView::~PlatformWebView()
diff --git a/WebKitTools/WebKitTestRunner/PlatformWebView.h b/WebKitTools/WebKitTestRunner/PlatformWebView.h
index abdf96e..cd393f0 100644
--- a/WebKitTools/WebKitTestRunner/PlatformWebView.h
+++ b/WebKitTools/WebKitTestRunner/PlatformWebView.h
@@ -52,7 +52,8 @@ namespace WTR {
class PlatformWebView {
public:
- PlatformWebView(WKPageNamespaceRef, WKPageGroupRef);
+ PlatformWebView(WKContextRef, WKPageGroupRef);
+ PlatformWebView(WKPageRef, WKPageGroupRef);
~PlatformWebView();
WKPageRef page();
diff --git a/WebKitTools/WebKitTestRunner/TestController.cpp b/WebKitTools/WebKitTestRunner/TestController.cpp
index 4c16387..27d16c9 100644
--- a/WebKitTools/WebKitTestRunner/TestController.cpp
+++ b/WebKitTools/WebKitTestRunner/TestController.cpp
@@ -106,7 +106,7 @@ static void closeOtherPage(WKPageRef page, const void* clientInfo)
static WKPageRef createOtherPage(WKPageRef oldPage, WKDictionaryRef, WKEventModifiers, WKEventMouseButton, const void*)
{
- PlatformWebView* view = new PlatformWebView(WKPageGetPageNamespace(oldPage), WKPageGetPageGroup(oldPage));
+ PlatformWebView* view = new PlatformWebView(oldPage, WKPageGetPageGroup(oldPage));
WKPageRef newPage = view->page();
view->resizeTo(800, 600);
@@ -211,8 +211,7 @@ void TestController::initialize(int argc, const char* argv[])
_WKContextSetAdditionalPluginsDirectory(m_context.get(), testPluginDirectory());
- m_pageNamespace.adopt(WKPageNamespaceCreate(m_context.get()));
- m_mainWebView = adoptPtr(new PlatformWebView(m_pageNamespace.get(), m_pageGroup.get()));
+ m_mainWebView = adoptPtr(new PlatformWebView(m_context.get(), m_pageGroup.get()));
WKPageUIClient pageUIClient = {
0,
diff --git a/WebKitTools/WebKitTestRunner/TestController.h b/WebKitTools/WebKitTestRunner/TestController.h
index 91ef404..ef41314 100644
--- a/WebKitTools/WebKitTestRunner/TestController.h
+++ b/WebKitTools/WebKitTestRunner/TestController.h
@@ -50,7 +50,6 @@ public:
WKStringRef testPluginDirectory() { return m_testPluginDirectory.get(); }
PlatformWebView* mainWebView() { return m_mainWebView.get(); }
- WKPageNamespaceRef pageNamespace() { return m_pageNamespace.get(); }
WKContextRef context() { return m_context.get(); }
// Runs the run loop until `done` is true or the timeout elapses.
@@ -96,9 +95,8 @@ private:
OwnPtr<PlatformWebView> m_mainWebView;
WKRetainPtr<WKContextRef> m_context;
- WKRetainPtr<WKPageNamespaceRef> m_pageNamespace;
WKRetainPtr<WKPageGroupRef> m_pageGroup;
-
+
enum State {
Initial,
Resetting,
diff --git a/WebKitTools/WebKitTestRunner/mac/PlatformWebViewMac.mm b/WebKitTools/WebKitTestRunner/mac/PlatformWebViewMac.mm
index c2ba87f..0618f99 100644
--- a/WebKitTools/WebKitTestRunner/mac/PlatformWebViewMac.mm
+++ b/WebKitTools/WebKitTestRunner/mac/PlatformWebViewMac.mm
@@ -27,10 +27,24 @@
namespace WTR {
-PlatformWebView::PlatformWebView(WKPageNamespaceRef namespaceRef, WKPageGroupRef pageGroupRef)
+PlatformWebView::PlatformWebView(WKContextRef contextRef, WKPageGroupRef pageGroupRef)
{
NSRect rect = NSMakeRect(0, 0, 800, 600);
- m_view = [[WKView alloc] initWithFrame:rect pageNamespaceRef:namespaceRef pageGroupRef:pageGroupRef];
+ m_view = [[WKView alloc] initWithFrame:rect contextRef:contextRef pageGroupRef:pageGroupRef];
+
+ NSRect windowRect = NSOffsetRect(rect, -10000, [[[NSScreen screens] objectAtIndex:0] frame].size.height - rect.size.height + 10000);
+ m_window = [[NSWindow alloc] initWithContentRect:windowRect styleMask:NSBorderlessWindowMask backing:NSBackingStoreBuffered defer:YES];
+ [m_window setColorSpace:[[NSScreen mainScreen] colorSpace]];
+ [[m_window contentView] addSubview:m_view];
+ [m_window orderBack:nil];
+ [m_window setAutodisplay:NO];
+ [m_window setReleasedWhenClosed:NO];
+}
+
+PlatformWebView::PlatformWebView(WKPageRef pageRef, WKPageGroupRef pageGroupRef)
+{
+ NSRect rect = NSMakeRect(0, 0, 800, 600);
+ m_view = [[WKView alloc] initWithFrame:rect forAssociatedPageRef:pageRef pageGroupRef:pageGroupRef];
NSRect windowRect = NSOffsetRect(rect, -10000, [[[NSScreen screens] objectAtIndex:0] frame].size.height - rect.size.height + 10000);
m_window = [[NSWindow alloc] initWithContentRect:windowRect styleMask:NSBorderlessWindowMask backing:NSBackingStoreBuffered defer:YES];
diff --git a/WebKitTools/WebKitTestRunner/qt/PlatformWebViewQt.cpp b/WebKitTools/WebKitTestRunner/qt/PlatformWebViewQt.cpp
index bd991ad..30e22b4 100644
--- a/WebKitTools/WebKitTestRunner/qt/PlatformWebViewQt.cpp
+++ b/WebKitTools/WebKitTestRunner/qt/PlatformWebViewQt.cpp
@@ -33,7 +33,8 @@ namespace WTR {
class WebView : public QGraphicsView {
public:
- WebView(WKPageNamespaceRef);
+ WebView(WKContextRef);
+ WebView(WKPageRef);
QGraphicsWKView* wkView() const { return m_item; }
@@ -43,16 +44,33 @@ private:
QGraphicsWKView* m_item;
};
-WebView::WebView(WKPageNamespaceRef namespaceRef)
+WebView::WebView(WKContextRef contextRef)
: QGraphicsView()
- , m_item(new QGraphicsWKView(new QWKContext(namespaceRef, this)))
+ , m_item(new QGraphicsWKView(new QWKContext(contextRef, this)))
{
setScene(new QGraphicsScene(this));
scene()->addItem(m_item);
}
-PlatformWebView::PlatformWebView(WKPageNamespaceRef namespaceRef, WKPageGroupRef)
- : m_view(new WebView(namespaceRef))
+WebView::WebView(WKPageRef pageRef)
+ : QGraphicsView()
+ , m_item(new QGraphicsWKView(new QWKContext(pageRef, this)))
+{
+ setScene(new QGraphicsScene(this));
+ scene()->addItem(m_item);
+}
+
+PlatformWebView::PlatformWebView(WKContextRef contextRef, WKPageGroupRef)
+ : m_view(new WebView(contextRef))
+ , m_window(new QMainWindow())
+{
+ m_view->setParent(m_window);
+ m_window->setCentralWidget(m_view);
+ m_window->setGeometry(0, 0, 800, 600);
+}
+
+PlatformWebView::PlatformWebView(WKPageRef pageRef, WKPageGroupRef)
+ : m_view(new WebView(pageRef))
, m_window(new QMainWindow())
{
m_view->setParent(m_window);
diff --git a/WebKitTools/WebKitTestRunner/win/PlatformWebViewWin.cpp b/WebKitTools/WebKitTestRunner/win/PlatformWebViewWin.cpp
index 236ab4b..bbde38c 100644
--- a/WebKitTools/WebKitTestRunner/win/PlatformWebViewWin.cpp
+++ b/WebKitTools/WebKitTestRunner/win/PlatformWebViewWin.cpp
@@ -47,13 +47,22 @@ static void registerWindowClass()
RegisterClassExW(&wndClass);
}
-PlatformWebView::PlatformWebView(WKPageNamespaceRef namespaceRef, WKPageGroupRef pageGroupRef)
+PlatformWebView::PlatformWebView(WKContextRef contextRef, WKPageGroupRef pageGroupRef)
{
registerWindowClass();
RECT viewRect = {0, 0, 800, 600};
m_window = CreateWindowExW(0, hostWindowClassName, L"WebKitTestRunner", WS_OVERLAPPEDWINDOW, 0 /*XOFFSET*/, 0 /*YOFFSET*/, viewRect.right, viewRect.bottom, 0, 0, GetModuleHandle(0), 0);
- m_view = WKViewCreate(viewRect, namespaceRef, pageGroupRef, m_window);
+ m_view = WKViewCreate(viewRect, contextRef, pageGroupRef, m_window);
+}
+
+PlatformWebView::PlatformWebView(WKPageRef pageRef, WKPageGroupRef pageGroupRef)
+{
+ registerWindowClass();
+
+ RECT viewRect = {0, 0, 800, 600};
+ m_window = CreateWindowExW(0, hostWindowClassName, L"WebKitTestRunner", WS_OVERLAPPEDWINDOW, 0 /*XOFFSET*/, 0 /*YOFFSET*/, viewRect.right, viewRect.bottom, 0, 0, GetModuleHandle(0), 0);
+ m_view = WKViewCreateForAssociatedPage(viewRect, pageRef, pageGroupRef, m_window);
}
PlatformWebView::~PlatformWebView()
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list