| OLD | NEW |
| 1 // Copyright 2012 The Chromium Authors. All rights reserved. | 1 // Copyright 2012 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "chrome/browser/android/tab_android.h" | 5 #include "chrome/browser/android/tab_android.h" |
| 6 | 6 |
| 7 #include <stddef.h> | 7 #include <stddef.h> |
| 8 | 8 |
| 9 #include "base/android/jni_android.h" | 9 #include "base/android/jni_android.h" |
| 10 #include "base/android/jni_string.h" | 10 #include "base/android/jni_string.h" |
| (...skipping 783 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 794 GURL url = dom_distiller::url_utils::GetOriginalUrlFromDistillerUrl( | 794 GURL url = dom_distiller::url_utils::GetOriginalUrlFromDistillerUrl( |
| 795 web_contents()->GetURL()); | 795 web_contents()->GetURL()); |
| 796 return offline_pages::OfflinePageUtils::HasOfflinePageForOnlineURL( | 796 return offline_pages::OfflinePageUtils::HasOfflinePageForOnlineURL( |
| 797 GetProfile(), url); | 797 GetProfile(), url); |
| 798 } | 798 } |
| 799 | 799 |
| 800 jboolean TabAndroid::IsOfflinePage(JNIEnv* env, | 800 jboolean TabAndroid::IsOfflinePage(JNIEnv* env, |
| 801 const JavaParamRef<jobject>& obj) { | 801 const JavaParamRef<jobject>& obj) { |
| 802 GURL url = dom_distiller::url_utils::GetOriginalUrlFromDistillerUrl( | 802 GURL url = dom_distiller::url_utils::GetOriginalUrlFromDistillerUrl( |
| 803 web_contents()->GetURL()); | 803 web_contents()->GetURL()); |
| 804 return offline_pages::OfflinePageUtils::IsOfflinePage(GetProfile(), url); | 804 return url.SchemeIs(chrome::kOfflinePageScheme); |
| 805 } | 805 } |
| 806 | 806 |
| 807 ScopedJavaLocalRef<jstring> TabAndroid::GetOfflinePageOriginalUrl( | 807 ScopedJavaLocalRef<jstring> TabAndroid::GetOfflinePageOriginalUrl( |
| 808 JNIEnv* env, | 808 JNIEnv* env, |
| 809 const JavaParamRef<jobject>& obj) { | 809 const JavaParamRef<jobject>& obj) { |
| 810 GURL url = dom_distiller::url_utils::GetOriginalUrlFromDistillerUrl( | 810 GURL url = dom_distiller::url_utils::GetOriginalUrlFromDistillerUrl( |
| 811 web_contents()->GetURL()); | 811 web_contents()->GetURL()); |
| 812 GURL original_url = | 812 if (!url.SchemeIs(chrome::kOfflinePageScheme)) |
| 813 offline_pages::OfflinePageUtils::MaybeGetOnlineURLForOfflineURL( | 813 return ScopedJavaLocalRef<jstring>(); |
| 814 GetProfile(), url); | 814 GURL original_url(url.GetContent()); |
| 815 if (!original_url.is_valid()) | 815 if (!original_url.is_valid() || !original_url.SchemeIsHTTPOrHTTPS()) |
| 816 return ScopedJavaLocalRef<jstring>(); | 816 return ScopedJavaLocalRef<jstring>(); |
| 817 | 817 |
| 818 return ScopedJavaLocalRef<jstring>( | 818 return ScopedJavaLocalRef<jstring>( |
| 819 ConvertUTF8ToJavaString(env, original_url.spec())); | 819 ConvertUTF8ToJavaString(env, original_url.spec())); |
| 820 } | 820 } |
| 821 | 821 |
| 822 bool TabAndroid::HasPrerenderedUrl(JNIEnv* env, | 822 bool TabAndroid::HasPrerenderedUrl(JNIEnv* env, |
| 823 const JavaParamRef<jobject>& obj, | 823 const JavaParamRef<jobject>& obj, |
| 824 const JavaParamRef<jstring>& url) { | 824 const JavaParamRef<jstring>& url) { |
| 825 GURL gurl(base::android::ConvertJavaStringToUTF8(env, url)); | 825 GURL gurl(base::android::ConvertJavaStringToUTF8(env, url)); |
| (...skipping 75 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 901 static void Init(JNIEnv* env, const JavaParamRef<jobject>& obj) { | 901 static void Init(JNIEnv* env, const JavaParamRef<jobject>& obj) { |
| 902 TRACE_EVENT0("native", "TabAndroid::Init"); | 902 TRACE_EVENT0("native", "TabAndroid::Init"); |
| 903 // This will automatically bind to the Java object and pass ownership there. | 903 // This will automatically bind to the Java object and pass ownership there. |
| 904 new TabAndroid(env, obj); | 904 new TabAndroid(env, obj); |
| 905 } | 905 } |
| 906 | 906 |
| 907 // static | 907 // static |
| 908 bool TabAndroid::RegisterTabAndroid(JNIEnv* env) { | 908 bool TabAndroid::RegisterTabAndroid(JNIEnv* env) { |
| 909 return RegisterNativesImpl(env); | 909 return RegisterNativesImpl(env); |
| 910 } | 910 } |
| OLD | NEW |