[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc
beidson at apple.com
beidson at apple.com
Wed Dec 22 11:39:09 UTC 2010
The following commit has been merged in the debian/experimental branch:
commit 4a633ad78246c369a3b31458a60e74ae025d7e1f
Author: beidson at apple.com <beidson at apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Mon Aug 2 21:10:52 2010 +0000
2010-08-02 Brady Eidson <beidson at apple.com>
Reviewed by Anders Carlsson.
Basic WK2 visited link coloring
https://bugs.webkit.org/show_bug.cgi?id=43377
No new tests. (No change in behavior)
* WebCore.exp.in:
* page/PageGroup.cpp:
(WebCore::PageGroup::addVisitedLinkHash):
* page/PageGroup.h:
2010-08-02 Brady Eidson <beidson at apple.com>
Reviewed by Anders Carlsson.
Basic WK2 visited link coloring
https://bugs.webkit.org/show_bug.cgi?id=43377
Add simple API that allows the WK2 app to add 1 visited link at a time.
For now, this just pipes each individual LinkHash down to WebCore.
* Shared/CoreIPCSupport/WebProcessMessageKinds.h:
(WebProcessMessage::):
* UIProcess/API/C/WKContext.cpp:
(WKContextAddVisitedLink):
* UIProcess/API/C/WKContext.h:
* UIProcess/WebContext.cpp:
(WebKit::WebContext::addVisitedLink):
* UIProcess/WebContext.h:
* WebProcess/WebProcess.cpp:
(WebKit::WebProcess::addVisitedLinkHash):
(WebKit::WebProcess::didReceiveMessage):
* WebProcess/WebProcess.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@64492 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 2e00072..4da7e96 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,18 @@
+2010-08-02 Brady Eidson <beidson at apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ Basic WK2 visited link coloring
+ https://bugs.webkit.org/show_bug.cgi?id=43377
+
+ No new tests. (No change in behavior)
+
+ * WebCore.exp.in:
+
+ * page/PageGroup.cpp:
+ (WebCore::PageGroup::addVisitedLinkHash):
+ * page/PageGroup.h:
+
2010-08-02 Martin Robinson <mrobinson at igalia.com>
Reviewed by Xan Lopez.
diff --git a/WebCore/WebCore.exp.in b/WebCore/WebCore.exp.in
index 9f33e36..e4d2286 100644
--- a/WebCore/WebCore.exp.in
+++ b/WebCore/WebCore.exp.in
@@ -361,6 +361,7 @@ __ZN7WebCore15StringTruncator5widthERKNS_6StringERKNS_4FontEb
__ZN7WebCore15VisiblePositionC1EPNS_4NodeEiNS_9EAffinityE
__ZN7WebCore15VisiblePositionC1ERKNS_8PositionENS_9EAffinityE
__ZN7WebCore15reportExceptionEPN3JSC9ExecStateENS0_7JSValueE
+__ZN7WebCore15visitedLinkHashEPKtj
__ZN7WebCore16AbstractDatabase14setIsAvailableEb
__ZN7WebCore16FontFallbackList15releaseFontDataEv
__ZN7WebCore16FontPlatformDataC1EP6NSFontbb
@@ -814,6 +815,7 @@ __ZN7WebCore9PageCache11setCapacityEi
__ZN7WebCore9PageCache27releaseAutoreleasedPagesNowEv
__ZN7WebCore9PageGroup14addVisitedLinkEPKtm
__ZN7WebCore9PageGroup17closeLocalStorageEv
+__ZN7WebCore9PageGroup18addVisitedLinkHashEy
__ZN7WebCore9PageGroup20addUserScriptToWorldEPNS_15DOMWrapperWorldERKNS_6StringERKNS_4KURLEN3WTF10PassOwnPtrINS9_6VectorIS3_Lm0EEEEESD_NS_23UserScriptInjectionTimeENS_25UserContentInjectedFramesE
__ZN7WebCore9PageGroup20removeAllUserContentEv
__ZN7WebCore9PageGroup21removeAllVisitedLinksEv
diff --git a/WebCore/page/PageGroup.cpp b/WebCore/page/PageGroup.cpp
index 9d278ca..15d4d8d 100644
--- a/WebCore/page/PageGroup.cpp
+++ b/WebCore/page/PageGroup.cpp
@@ -136,6 +136,11 @@ bool PageGroup::isLinkVisited(LinkHash visitedLinkHash)
#endif
}
+void PageGroup::addVisitedLinkHash(LinkHash hash)
+{
+ addVisitedLink(hash);
+}
+
inline void PageGroup::addVisitedLink(LinkHash hash)
{
ASSERT(shouldTrackVisitedLinks);
diff --git a/WebCore/page/PageGroup.h b/WebCore/page/PageGroup.h
index a32595b..08b03d7 100644
--- a/WebCore/page/PageGroup.h
+++ b/WebCore/page/PageGroup.h
@@ -58,6 +58,7 @@ namespace WebCore {
void addVisitedLink(const KURL&);
void addVisitedLink(const UChar*, size_t);
+ void addVisitedLinkHash(LinkHash);
void removeVisitedLinks();
static void setShouldTrackVisitedLinks(bool);
diff --git a/WebKit2/ChangeLog b/WebKit2/ChangeLog
index 81836cc..ef68846 100644
--- a/WebKit2/ChangeLog
+++ b/WebKit2/ChangeLog
@@ -1,3 +1,29 @@
+2010-08-02 Brady Eidson <beidson at apple.com>
+
+ Reviewed by Anders Carlsson.
+
+ Basic WK2 visited link coloring
+ https://bugs.webkit.org/show_bug.cgi?id=43377
+
+ Add simple API that allows the WK2 app to add 1 visited link at a time.
+ For now, this just pipes each individual LinkHash down to WebCore.
+
+ * Shared/CoreIPCSupport/WebProcessMessageKinds.h:
+ (WebProcessMessage::):
+
+ * UIProcess/API/C/WKContext.cpp:
+ (WKContextAddVisitedLink):
+ * UIProcess/API/C/WKContext.h:
+
+ * UIProcess/WebContext.cpp:
+ (WebKit::WebContext::addVisitedLink):
+ * UIProcess/WebContext.h:
+
+ * WebProcess/WebProcess.cpp:
+ (WebKit::WebProcess::addVisitedLinkHash):
+ (WebKit::WebProcess::didReceiveMessage):
+ * WebProcess/WebProcess.h:
+
2010-08-02 Darin Adler <darin at apple.com>
Reviewed by Sam Weinig.
diff --git a/WebKit2/Shared/CoreIPCSupport/WebProcessMessageKinds.h b/WebKit2/Shared/CoreIPCSupport/WebProcessMessageKinds.h
index 6128270..80be98f 100644
--- a/WebKit2/Shared/CoreIPCSupport/WebProcessMessageKinds.h
+++ b/WebKit2/Shared/CoreIPCSupport/WebProcessMessageKinds.h
@@ -33,6 +33,7 @@
namespace WebProcessMessage {
enum Kind {
+ AddVisitedLink,
LoadInjectedBundle,
SetApplicationCacheDirectory,
SetShouldTrackVisitedLinks,
diff --git a/WebKit2/UIProcess/API/C/WKContext.cpp b/WebKit2/UIProcess/API/C/WKContext.cpp
index 0df6326..3b018ee 100644
--- a/WebKit2/UIProcess/API/C/WKContext.cpp
+++ b/WebKit2/UIProcess/API/C/WKContext.cpp
@@ -94,6 +94,11 @@ void WKContextGetStatistics(WKContextRef contextRef, WKContextStatistics* statis
toWK(contextRef)->getStatistics(statistics);
}
+void WKContextAddVisitedLink(WKContextRef contextRef, WKStringRef visitedURL)
+{
+ toWK(contextRef)->addVisitedLink(toWK(visitedURL)->string());
+}
+
WKContextRef WKContextRetain(WKContextRef contextRef)
{
toWK(contextRef)->ref();
diff --git a/WebKit2/UIProcess/API/C/WKContext.h b/WebKit2/UIProcess/API/C/WKContext.h
index 2345550..b680976 100644
--- a/WebKit2/UIProcess/API/C/WKContext.h
+++ b/WebKit2/UIProcess/API/C/WKContext.h
@@ -74,6 +74,8 @@ WK_EXPORT void WKContextSetInjectedBundleClient(WKContextRef context, const WKCo
WK_EXPORT void WKContextPostMessageToInjectedBundle(WKContextRef context, WKStringRef messageName, WKTypeRef messageBody);
+WK_EXPORT void WKContextAddVisitedLink(WKContextRef context, WKStringRef visitedURL);
+
WK_EXPORT WKContextRef WKContextRetain(WKContextRef context);
WK_EXPORT void WKContextRelease(WKContextRef context);
diff --git a/WebKit2/UIProcess/WebContext.cpp b/WebKit2/UIProcess/WebContext.cpp
index 6c5f15d..fb23068 100644
--- a/WebKit2/UIProcess/WebContext.cpp
+++ b/WebKit2/UIProcess/WebContext.cpp
@@ -39,6 +39,8 @@
#include "WKContextPrivate.h"
+#include <WebCore/LinkHash.h>
+
#ifndef NDEBUG
#include <wtf/RefCountedLeakCounter.h>
#endif
@@ -364,6 +366,15 @@ void WebContext::registerURLSchemeAsEmptyDocument(const String& urlScheme)
m_process->send(WebProcessMessage::RegisterURLSchemeAsEmptyDocument, 0, CoreIPC::In(urlScheme));
}
+void WebContext::addVisitedLink(const String& visitedURL)
+{
+ if (visitedURL.isEmpty())
+ return;
+
+ WebCore::LinkHash hash = visitedLinkHash(visitedURL.characters(), visitedURL.length());
+ m_process->send(WebProcessMessage::AddVisitedLink, 0, CoreIPC::In(hash));
+}
+
void WebContext::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::MessageID messageID, CoreIPC::ArgumentDecoder& arguments)
{
switch (messageID.get<WebContextMessage::Kind>()) {
diff --git a/WebKit2/UIProcess/WebContext.h b/WebKit2/UIProcess/WebContext.h
index 34fce7d..0f87667 100644
--- a/WebKit2/UIProcess/WebContext.h
+++ b/WebKit2/UIProcess/WebContext.h
@@ -99,6 +99,8 @@ public:
WebCore::String applicationCacheDirectory();
void registerURLSchemeAsEmptyDocument(const WebCore::String&);
+
+ void addVisitedLink(const WebCore::String&);
void didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::ArgumentDecoder&);
diff --git a/WebKit2/WebProcess/WebProcess.cpp b/WebKit2/WebProcess/WebProcess.cpp
index 1bf123b..68a3fb9 100644
--- a/WebKit2/WebProcess/WebProcess.cpp
+++ b/WebKit2/WebProcess/WebProcess.cpp
@@ -110,6 +110,17 @@ void WebProcess::registerURLSchemeAsEmptyDocument(const WebCore::String& urlSche
SchemeRegistry::registerURLSchemeAsEmptyDocument(urlScheme);
}
+void WebProcess::addVisitedLinkHash(WebCore::LinkHash hash)
+{
+ PageGroup* group = PageGroup::pageGroup("WebKit2Group");
+ ASSERT(group);
+ if (!group) {
+ printf("Cannot find PageGroup named 'WebKit2Group'\n");
+ return;
+ }
+ group->addVisitedLinkHash(hash);
+}
+
WebPage* WebProcess::webPage(uint64_t pageID) const
{
return m_pageMap.get(pageID).get();
@@ -166,6 +177,14 @@ void WebProcess::didReceiveMessage(CoreIPC::Connection* connection, CoreIPC::Mes
{
if (messageID.is<CoreIPC::MessageClassWebProcess>()) {
switch (messageID.get<WebProcessMessage::Kind>()) {
+ case WebProcessMessage::AddVisitedLink: {
+ WebCore::LinkHash hash;
+ if (!arguments->decode(CoreIPC::Out(hash)))
+ return;
+
+ addVisitedLinkHash(hash);
+ return;
+ }
case WebProcessMessage::LoadInjectedBundle: {
String path;
diff --git a/WebKit2/WebProcess/WebProcess.h b/WebKit2/WebProcess/WebProcess.h
index ad182e9..0fb4ad1 100644
--- a/WebKit2/WebProcess/WebProcess.h
+++ b/WebKit2/WebProcess/WebProcess.h
@@ -28,6 +28,7 @@
#include "Connection.h"
#include "DrawingArea.h"
+#include <WebCore/LinkHash.h>
#include <wtf/HashMap.h>
namespace WebCore {
@@ -73,6 +74,7 @@ private:
#endif
void setApplicationCacheDirectory(const WebCore::String&);
void registerURLSchemeAsEmptyDocument(const WebCore::String&);
+ void addVisitedLinkHash(WebCore::LinkHash);
// CoreIPC::Connection::Client
void didReceiveMessage(CoreIPC::Connection*, CoreIPC::MessageID, CoreIPC::ArgumentDecoder*);
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list