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

Unified Diff: chrome/browser/component/navigation_interception/intercept_navigation_delegate.cc

Issue 11293017: Move navigation interception component to content/components (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Add findbugs suppression for compatibility code. Created 8 years, 1 month 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
Index: chrome/browser/component/navigation_interception/intercept_navigation_delegate.cc
diff --git a/chrome/browser/component/navigation_interception/intercept_navigation_delegate.cc b/chrome/browser/component/navigation_interception/intercept_navigation_delegate.cc
deleted file mode 100644
index 3b934fa4f0a338066f1edb7176a61e202893791b..0000000000000000000000000000000000000000
--- a/chrome/browser/component/navigation_interception/intercept_navigation_delegate.cc
+++ /dev/null
@@ -1,109 +0,0 @@
-// Copyright (c) 2012 The Chromium Authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-#include "chrome/browser/component/navigation_interception/intercept_navigation_delegate.h"
-
-#include "base/android/jni_android.h"
-#include "base/android/jni_string.h"
-#include "base/callback.h"
-#include "chrome/browser/component/navigation_interception/intercept_navigation_resource_throttle.h"
-#include "content/public/browser/browser_thread.h"
-#include "content/public/browser/render_view_host.h"
-#include "content/public/browser/web_contents.h"
-#include "googleurl/src/gurl.h"
-#include "jni/InterceptNavigationDelegate_jni.h"
-#include "net/url_request/url_request.h"
-
-using base::android::ConvertUTF8ToJavaString;
-using base::android::ScopedJavaLocalRef;
-using content::BrowserThread;
-using content::RenderViewHost;
-using content::WebContents;
-
-namespace navigation_interception {
-
-namespace {
-
-const void* kInterceptNavigationDelegateUserDataKey =
- &kInterceptNavigationDelegateUserDataKey;
-
-bool CheckIfShouldIgnoreNavigationOnUIThread(RenderViewHost* source,
- const GURL& url,
- const content::Referrer& referrer,
- bool has_user_gesture) {
- DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- DCHECK(source);
-
- WebContents* web_contents = WebContents::FromRenderViewHost(source);
- if (!web_contents)
- return false;
- InterceptNavigationDelegate* intercept_navigation_delegate =
- InterceptNavigationDelegate::Get(web_contents);
- if (!intercept_navigation_delegate)
- return false;
-
- return intercept_navigation_delegate->ShouldIgnoreNavigation(
- url, has_user_gesture);
-}
-
-} // namespace
-
-// static
-void InterceptNavigationDelegate::Associate(
- WebContents* web_contents,
- scoped_ptr<InterceptNavigationDelegate> delegate) {
- web_contents->SetUserData(kInterceptNavigationDelegateUserDataKey,
- delegate.release());
-}
-
-// static
-InterceptNavigationDelegate* InterceptNavigationDelegate::Get(
- WebContents* web_contents) {
- return reinterpret_cast<InterceptNavigationDelegate*>(
- web_contents->GetUserData(kInterceptNavigationDelegateUserDataKey));
-}
-
-// static
-content::ResourceThrottle* InterceptNavigationDelegate::CreateThrottleFor(
- net::URLRequest* request) {
- return new InterceptNavigationResourceThrottle(
- request, base::Bind(&CheckIfShouldIgnoreNavigationOnUIThread));
-}
-
-InterceptNavigationDelegate::InterceptNavigationDelegate(
- JNIEnv* env, jobject jdelegate)
- : weak_jdelegate_(env, jdelegate) {
-}
-
-InterceptNavigationDelegate::~InterceptNavigationDelegate() {
-}
-
-bool InterceptNavigationDelegate::ShouldIgnoreNavigation(
- const GURL& url,
- bool has_user_gesture) {
- if (!url.is_valid())
- return false;
-
- JNIEnv* env = base::android::AttachCurrentThread();
- ScopedJavaLocalRef<jobject> jdelegate = weak_jdelegate_.get(env);
-
- if (jdelegate.is_null())
- return false;
-
- ScopedJavaLocalRef<jstring> jstring_url =
- ConvertUTF8ToJavaString(env, url.spec());
- return Java_InterceptNavigationDelegate_shouldIgnoreNavigation(
- env,
- jdelegate.obj(),
- jstring_url.obj(),
- has_user_gesture);
-}
-
-// Register native methods.
-
-bool RegisterInterceptNavigationDelegate(JNIEnv* env) {
- return RegisterNativesImpl(env);
-}
-
-} // namespace navigation_interception

Powered by Google App Engine
This is Rietveld 408576698