[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
weinig at apple.com
weinig at apple.com
Wed Dec 22 13:31:40 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit c6a7da2785fbe5ede854d1f86e5943e31971512a
Author: weinig at apple.com <weinig at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Sat Sep 18 06:16:25 2010 +0000
Need a way to load data (as plain text) in a WKPage
<rdar://problem/8424239>
Reviewed by Jon Honeycutt.
WebCore:
* WebCore.exp.in:
WebKit2:
* Shared/CoreIPCSupport/WebPageMessageKinds.h:
* UIProcess/API/C/WKPage.cpp:
(WKPageLoadHTMLString):
* UIProcess/API/C/WKPage.h:
* UIProcess/WebPageProxy.cpp:
(WebKit::WebPageProxy::loadHTMLString):
* UIProcess/WebPageProxy.h:
* WebProcess/WebPage/WebPage.cpp:
(WebKit::WebPage::loadHTMLString):
(WebKit::WebPage::didReceiveMessage):
* WebProcess/WebPage/WebPage.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@67776 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 030c52c..4104e5a 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,12 @@
+2010-09-17 Sam Weinig <sam at webkit.org>
+
+ Reviewed by Jon Honeycutt.
+
+ Need a way to load data (as plain text) in a WKPage
+ <rdar://problem/8424239>
+
+ * WebCore.exp.in:
+
2010-09-17 David Hyatt <hyatt at apple.com>
Reviewed by Sam Weinig.
diff --git a/WebCore/WebCore.exp.in b/WebCore/WebCore.exp.in
index 55e3d3f..53aab91 100644
--- a/WebCore/WebCore.exp.in
+++ b/WebCore/WebCore.exp.in
@@ -262,6 +262,7 @@ __ZN7WebCore12SchedulePairC1EP9NSRunLoopPK10__CFString
__ZN7WebCore12SharedBuffer10wrapNSDataEP6NSData
__ZN7WebCore12SharedBuffer12createNSDataEv
__ZN7WebCore12SharedBuffer24createWithContentsOfFileERKN3WTF6StringE
+__ZN7WebCore12SharedBufferC1EPKci
__ZN7WebCore12SharedBufferD1Ev
__ZN7WebCore12TextEncodingC1ERKN3WTF6StringE
__ZN7WebCore12TextIterator11rangeLengthEPKNS_5RangeEb
@@ -768,7 +769,6 @@ __ZN7WebCore9FrameView14setMarginWidthEi
__ZN7WebCore9FrameView14setNeedsLayoutEv
__ZN7WebCore9FrameView14setTransparentEb
__ZN7WebCore9FrameView15setMarginHeightEi
-__ZN7WebCore9FrameView26adjustPageHeightDeprecatedEPffff
__ZN7WebCore9FrameView16setPaintBehaviorEj
__ZN7WebCore9FrameView18updateControlTintsEv
__ZN7WebCore9FrameView20enterCompositingModeEv
@@ -776,6 +776,7 @@ __ZN7WebCore9FrameView21flushDeferredRepaintsEv
__ZN7WebCore9FrameView22setBaseBackgroundColorENS_5ColorE
__ZN7WebCore9FrameView23updateCanHaveScrollbarsEv
__ZN7WebCore9FrameView24forceLayoutForPaginationERKNS_9FloatSizeEfNS_5Frame19AdjustViewSizeOrNotE
+__ZN7WebCore9FrameView26adjustPageHeightDeprecatedEPffff
__ZN7WebCore9FrameView29setShouldUpdateWhileOffscreenEb
__ZN7WebCore9FrameView29syncCompositingStateRecursiveEv
__ZN7WebCore9FrameView37updateLayoutAndStyleIfNeededRecursiveEv
diff --git a/WebKit2/ChangeLog b/WebKit2/ChangeLog
index e4f4b1b..49f876f 100644
--- a/WebKit2/ChangeLog
+++ b/WebKit2/ChangeLog
@@ -1,5 +1,24 @@
2010-09-17 Sam Weinig <sam at webkit.org>
+ Reviewed by Jon Honeycutt.
+
+ Need a way to load data (as plain text) in a WKPage
+ <rdar://problem/8424239>
+
+ * Shared/CoreIPCSupport/WebPageMessageKinds.h:
+ * UIProcess/API/C/WKPage.cpp:
+ (WKPageLoadHTMLString):
+ * UIProcess/API/C/WKPage.h:
+ * UIProcess/WebPageProxy.cpp:
+ (WebKit::WebPageProxy::loadHTMLString):
+ * UIProcess/WebPageProxy.h:
+ * WebProcess/WebPage/WebPage.cpp:
+ (WebKit::WebPage::loadHTMLString):
+ (WebKit::WebPage::didReceiveMessage):
+ * WebProcess/WebPage/WebPage.h:
+
+2010-09-17 Sam Weinig <sam at webkit.org>
+
Rubber-stamped by Anders Carlsson.
Replace all uses of WTF::String and WTF::AtomicString with
diff --git a/WebKit2/Shared/CoreIPCSupport/WebPageMessageKinds.h b/WebKit2/Shared/CoreIPCSupport/WebPageMessageKinds.h
index 21facd7..4f5df09 100644
--- a/WebKit2/Shared/CoreIPCSupport/WebPageMessageKinds.h
+++ b/WebKit2/Shared/CoreIPCSupport/WebPageMessageKinds.h
@@ -44,6 +44,7 @@ enum Kind {
KeyEvent,
LoadURL,
LoadURLRequest,
+ LoadHTMLString,
MouseEvent,
PreferencesDidChange,
ReapplyEditCommand,
diff --git a/WebKit2/UIProcess/API/C/WKPage.cpp b/WebKit2/UIProcess/API/C/WKPage.cpp
index 26a8716..0619e3c 100644
--- a/WebKit2/UIProcess/API/C/WKPage.cpp
+++ b/WebKit2/UIProcess/API/C/WKPage.cpp
@@ -57,6 +57,11 @@ void WKPageLoadURLRequest(WKPageRef pageRef, WKURLRequestRef urlRequestRef)
toWK(pageRef)->loadURLRequest(toWK(urlRequestRef));
}
+void WKPageLoadHTMLString(WKPageRef pageRef, WKStringRef htmlStringRef, WKURLRef baseURLRef)
+{
+ toWK(pageRef)->loadHTMLString(toWTFString(htmlStringRef), toWTFString(baseURLRef));
+}
+
void WKPageStopLoading(WKPageRef pageRef)
{
toWK(pageRef)->stopLoading();
diff --git a/WebKit2/UIProcess/API/C/WKPage.h b/WebKit2/UIProcess/API/C/WKPage.h
index 58f20d6..4f08d5c 100644
--- a/WebKit2/UIProcess/API/C/WKPage.h
+++ b/WebKit2/UIProcess/API/C/WKPage.h
@@ -163,6 +163,7 @@ WK_EXPORT WKPageNamespaceRef WKPageGetPageNamespace(WKPageRef page);
WK_EXPORT void WKPageLoadURL(WKPageRef page, WKURLRef url);
WK_EXPORT void WKPageLoadURLRequest(WKPageRef page, WKURLRequestRef urlRequest);
+WK_EXPORT void WKPageLoadHTMLString(WKPageRef page, WKStringRef htmlString, WKURLRef baseURL);
WK_EXPORT void WKPageStopLoading(WKPageRef page);
WK_EXPORT void WKPageReload(WKPageRef page);
diff --git a/WebKit2/UIProcess/WebPageProxy.cpp b/WebKit2/UIProcess/WebPageProxy.cpp
index 88924db..0e553b9 100644
--- a/WebKit2/UIProcess/WebPageProxy.cpp
+++ b/WebKit2/UIProcess/WebPageProxy.cpp
@@ -244,6 +244,13 @@ void WebPageProxy::loadURLRequest(WebURLRequest* urlRequest)
process()->send(WebPageMessage::LoadURLRequest, m_pageID, CoreIPC::In(urlRequest->resourceRequest()));
}
+void WebPageProxy::loadHTMLString(const String& htmlString, const String& baseURL)
+{
+ if (!isValid())
+ return;
+ process()->send(WebPageMessage::LoadHTMLString, m_pageID, CoreIPC::In(htmlString, baseURL));
+}
+
void WebPageProxy::stopLoading()
{
if (!isValid())
diff --git a/WebKit2/UIProcess/WebPageProxy.h b/WebKit2/UIProcess/WebPageProxy.h
index ed7f78a..bb50286 100644
--- a/WebKit2/UIProcess/WebPageProxy.h
+++ b/WebKit2/UIProcess/WebPageProxy.h
@@ -114,6 +114,7 @@ public:
void loadURL(const String&);
void loadURLRequest(WebURLRequest*);
+ void loadHTMLString(const String& htmlString, const String& baseURL);
void stopLoading();
void reload(bool reloadFromOrigin);
diff --git a/WebKit2/WebProcess/WebPage/WebPage.cpp b/WebKit2/WebProcess/WebPage/WebPage.cpp
index 719cd34..8fdce73 100644
--- a/WebKit2/WebProcess/WebPage/WebPage.cpp
+++ b/WebKit2/WebProcess/WebPage/WebPage.cpp
@@ -56,6 +56,8 @@
#include <WebCore/RenderTreeAsText.h>
#include <WebCore/ResourceRequest.h>
#include <WebCore/Settings.h>
+#include <WebCore/SharedBuffer.h>
+#include <WebCore/SubstituteData.h>
#include <runtime/JSLock.h>
#include <runtime/JSValue.h>
@@ -247,6 +249,20 @@ void WebPage::loadURLRequest(const ResourceRequest& request)
m_mainFrame->coreFrame()->loader()->load(request, false);
}
+void WebPage::loadHTMLString(const String& htmlString, const String& baseURLString)
+{
+ RefPtr<SharedBuffer> sharedBuffer = SharedBuffer::create(reinterpret_cast<const char*>(htmlString.characters()), htmlString.length() * sizeof(UChar));
+ String MIMEType("text/html");
+ String encodingName("utf-16");
+ KURL baseURL = baseURLString.isEmpty() ? blankURL() : KURL(KURL(), baseURLString);
+ KURL failingURL;
+
+ ResourceRequest request(baseURL);
+ SubstituteData substituteData(sharedBuffer.release(), MIMEType, encodingName, failingURL);
+
+ m_mainFrame->coreFrame()->loader()->load(request, substituteData, false);
+}
+
void WebPage::stopLoading()
{
m_mainFrame->coreFrame()->loader()->stopForUserCancel();
@@ -746,6 +762,15 @@ void WebPage::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::Messag
loadURLRequest(request);
return;
}
+ case WebPageMessage::LoadHTMLString: {
+ String htmlString;
+ String baseURL;
+ if (!arguments->decode(CoreIPC::In(htmlString, baseURL)))
+ return;
+
+ loadHTMLString(htmlString, baseURL);
+ return;
+ }
case WebPageMessage::StopLoading:
stopLoading();
return;
diff --git a/WebKit2/WebProcess/WebPage/WebPage.h b/WebKit2/WebProcess/WebPage/WebPage.h
index 844bdf9..0ed6586 100644
--- a/WebKit2/WebProcess/WebPage/WebPage.h
+++ b/WebKit2/WebProcess/WebPage/WebPage.h
@@ -157,6 +157,7 @@ private:
void tryClose();
void loadURL(const String&);
void loadURLRequest(const WebCore::ResourceRequest&);
+ void loadHTMLString(const String& htmlString, const String& baseURL);
void reload(bool reloadFromOrigin);
void goForward(uint64_t);
void goBack(uint64_t);
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list