| OLD | NEW |
| 1 // Copyright 2015 The Chromium Authors. All rights reserved. | 1 // Copyright 2015 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/offline_pages/offline_page_bridge.h" | 5 #include "chrome/browser/android/offline_pages/offline_page_bridge.h" |
| 6 | 6 |
| 7 #include "base/android/jni_array.h" | 7 #include "base/android/jni_array.h" |
| 8 #include "base/android/jni_string.h" | 8 #include "base/android/jni_string.h" |
| 9 #include "base/basictypes.h" | |
| 10 #include "chrome/browser/android/offline_pages/offline_page_mhtml_archiver.h" | 9 #include "chrome/browser/android/offline_pages/offline_page_mhtml_archiver.h" |
| 11 #include "chrome/browser/android/offline_pages/offline_page_model_factory.h" | 10 #include "chrome/browser/android/offline_pages/offline_page_model_factory.h" |
| 12 #include "chrome/browser/profiles/profile.h" | 11 #include "chrome/browser/profiles/profile.h" |
| 13 #include "chrome/browser/profiles/profile_android.h" | 12 #include "chrome/browser/profiles/profile_android.h" |
| 14 #include "components/offline_pages/offline_page_feature.h" | 13 #include "components/offline_pages/offline_page_feature.h" |
| 15 #include "components/offline_pages/offline_page_item.h" | 14 #include "components/offline_pages/offline_page_item.h" |
| 16 #include "components/offline_pages/offline_page_model.h" | 15 #include "components/offline_pages/offline_page_model.h" |
| 17 #include "content/public/browser/browser_context.h" | 16 #include "content/public/browser/browser_context.h" |
| 18 #include "content/public/browser/web_contents.h" | 17 #include "content/public/browser/web_contents.h" |
| 19 #include "jni/OfflinePageBridge_jni.h" | 18 #include "jni/OfflinePageBridge_jni.h" |
| (...skipping 79 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 99 | 98 |
| 100 void OfflinePageBridge::OfflinePageModelChanged(OfflinePageModel* model) { | 99 void OfflinePageBridge::OfflinePageModelChanged(OfflinePageModel* model) { |
| 101 DCHECK_EQ(offline_page_model_, model); | 100 DCHECK_EQ(offline_page_model_, model); |
| 102 JNIEnv* env = base::android::AttachCurrentThread(); | 101 JNIEnv* env = base::android::AttachCurrentThread(); |
| 103 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); | 102 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); |
| 104 if (obj.is_null()) | 103 if (obj.is_null()) |
| 105 return; | 104 return; |
| 106 Java_OfflinePageBridge_offlinePageModelChanged(env, obj.obj()); | 105 Java_OfflinePageBridge_offlinePageModelChanged(env, obj.obj()); |
| 107 } | 106 } |
| 108 | 107 |
| 109 void OfflinePageBridge::OfflinePageDeleted(int64 bookmark_id) { | 108 void OfflinePageBridge::OfflinePageDeleted(int64_t bookmark_id) { |
| 110 JNIEnv* env = base::android::AttachCurrentThread(); | 109 JNIEnv* env = base::android::AttachCurrentThread(); |
| 111 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); | 110 ScopedJavaLocalRef<jobject> obj = weak_java_ref_.get(env); |
| 112 if (obj.is_null()) | 111 if (obj.is_null()) |
| 113 return; | 112 return; |
| 114 Java_OfflinePageBridge_offlinePageDeleted(env, obj.obj(), bookmark_id); | 113 Java_OfflinePageBridge_offlinePageDeleted(env, obj.obj(), bookmark_id); |
| 115 } | 114 } |
| 116 | 115 |
| 117 void OfflinePageBridge::GetAllPages(JNIEnv* env, | 116 void OfflinePageBridge::GetAllPages(JNIEnv* env, |
| 118 const JavaParamRef<jobject>& obj, | 117 const JavaParamRef<jobject>& obj, |
| 119 const JavaParamRef<jobject>& j_result_obj) { | 118 const JavaParamRef<jobject>& j_result_obj) { |
| (...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 202 void OfflinePageBridge::DeletePages( | 201 void OfflinePageBridge::DeletePages( |
| 203 JNIEnv* env, | 202 JNIEnv* env, |
| 204 const JavaParamRef<jobject>& obj, | 203 const JavaParamRef<jobject>& obj, |
| 205 const JavaParamRef<jobject>& j_callback_obj, | 204 const JavaParamRef<jobject>& j_callback_obj, |
| 206 const JavaParamRef<jlongArray>& bookmark_ids_array) { | 205 const JavaParamRef<jlongArray>& bookmark_ids_array) { |
| 207 DCHECK(j_callback_obj); | 206 DCHECK(j_callback_obj); |
| 208 | 207 |
| 209 ScopedJavaGlobalRef<jobject> j_callback_ref; | 208 ScopedJavaGlobalRef<jobject> j_callback_ref; |
| 210 j_callback_ref.Reset(env, j_callback_obj); | 209 j_callback_ref.Reset(env, j_callback_obj); |
| 211 | 210 |
| 212 std::vector<int64> bookmark_ids; | 211 std::vector<int64_t> bookmark_ids; |
| 213 base::android::JavaLongArrayToInt64Vector(env, bookmark_ids_array, | 212 base::android::JavaLongArrayToInt64Vector(env, bookmark_ids_array, |
| 214 &bookmark_ids); | 213 &bookmark_ids); |
| 215 | 214 |
| 216 offline_page_model_->DeletePagesByBookmarkId( | 215 offline_page_model_->DeletePagesByBookmarkId( |
| 217 bookmark_ids, | 216 bookmark_ids, |
| 218 base::Bind(&DeletePageCallback, j_callback_ref)); | 217 base::Bind(&DeletePageCallback, j_callback_ref)); |
| 219 } | 218 } |
| 220 | 219 |
| 221 void OfflinePageBridge::CheckMetadataConsistency( | 220 void OfflinePageBridge::CheckMetadataConsistency( |
| 222 JNIEnv* env, | 221 JNIEnv* env, |
| (...skipping 30 matching lines...) Expand all Loading... |
| 253 return reinterpret_cast<jlong>(new OfflinePageBridge( | 252 return reinterpret_cast<jlong>(new OfflinePageBridge( |
| 254 env, obj, ProfileAndroid::FromProfileAndroid(j_profile))); | 253 env, obj, ProfileAndroid::FromProfileAndroid(j_profile))); |
| 255 } | 254 } |
| 256 | 255 |
| 257 bool RegisterOfflinePageBridge(JNIEnv* env) { | 256 bool RegisterOfflinePageBridge(JNIEnv* env) { |
| 258 return RegisterNativesImpl(env); | 257 return RegisterNativesImpl(env); |
| 259 } | 258 } |
| 260 | 259 |
| 261 } // namespace android | 260 } // namespace android |
| 262 } // namespace offline_pages | 261 } // namespace offline_pages |
| OLD | NEW |