Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(6)

Unified Diff: android_webview/renderer/aw_content_renderer_client.cc

Issue 11860014: Android WebView visited link highlighting implementation part 1 (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase to pass no_disk parameter instead of using delegate. Created 7 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « android_webview/renderer/aw_content_renderer_client.h ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: android_webview/renderer/aw_content_renderer_client.cc
diff --git a/android_webview/renderer/aw_content_renderer_client.cc b/android_webview/renderer/aw_content_renderer_client.cc
index fc69cbbbe9c6828f1fbd55fc9fd6fc9431217269..9a8b21cf0e6bb811330d24f32f473ea8fa755369 100644
--- a/android_webview/renderer/aw_content_renderer_client.cc
+++ b/android_webview/renderer/aw_content_renderer_client.cc
@@ -8,6 +8,7 @@
#include "android_webview/common/url_constants.h"
#include "android_webview/renderer/aw_render_view_ext.h"
#include "base/utf_string_conversions.h"
+#include "components/visitedlink/renderer/visitedlink_slave.h"
#include "content/public/renderer/render_thread.h"
#include "googleurl/src/gurl.h"
#include "third_party/WebKit/Source/Platform/chromium/public/WebString.h"
@@ -29,9 +30,13 @@ void AwContentRendererClient::RenderThreadStarted() {
ASCIIToUTF16(android_webview::kContentScheme));
WebKit::WebSecurityPolicy::registerURLSchemeAsLocal(content_scheme);
+ content::RenderThread* thread = content::RenderThread::Get();
+
aw_render_process_observer_.reset(new AwRenderProcessObserver);
- content::RenderThread::Get()->AddObserver(
- aw_render_process_observer_.get());
+ thread->AddObserver(aw_render_process_observer_.get());
+
+ visited_link_slave_.reset(new components::VisitedLinkSlave);
+ thread->AddObserver(visited_link_slave_.get());
}
void AwContentRendererClient::RenderViewCreated(
@@ -73,15 +78,11 @@ void AwContentRendererClient::GetNavigationErrorStrings(
unsigned long long AwContentRendererClient::VisitedLinkHash(
const char* canonical_url,
size_t length) {
- // TODO(boliu): Implement a visited link solution for Android WebView.
- // Perhaps componentize chrome implementation or move to content/?
- return 0LL;
+ return visited_link_slave_->ComputeURLFingerprint(canonical_url, length);
}
bool AwContentRendererClient::IsLinkVisited(unsigned long long link_hash) {
- // TODO(boliu): Implement a visited link solution for Android WebView.
- // Perhaps componentize chrome implementation or move to content/?
- return false;
+ return visited_link_slave_->IsVisited(link_hash);
}
void AwContentRendererClient::PrefetchHostName(const char* hostname,
« no previous file with comments | « android_webview/renderer/aw_content_renderer_client.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698