| 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/banners/app_banner_manager_android.h" | 5 #include "chrome/browser/android/banners/app_banner_manager_android.h" |
| 6 | 6 |
| 7 #include <memory> | 7 #include <memory> |
| 8 #include <utility> | 8 #include <utility> |
| 9 | 9 |
| 10 #include "base/android/jni_android.h" | 10 #include "base/android/jni_android.h" |
| 11 #include "base/android/jni_string.h" | 11 #include "base/android/jni_string.h" |
| 12 #include "base/memory/ptr_util.h" | 12 #include "base/memory/ptr_util.h" |
| 13 #include "base/strings/utf_string_conversions.h" | 13 #include "base/strings/utf_string_conversions.h" |
| 14 #include "chrome/browser/android/banners/app_banner_infobar_delegate_android.h" | 14 #include "chrome/browser/android/banners/app_banner_infobar_delegate_android.h" |
| 15 #include "chrome/browser/android/shortcut_helper.h" | 15 #include "chrome/browser/android/shortcut_helper.h" |
| 16 #include "chrome/browser/android/webapk/chrome_webapk_host.h" | 16 #include "chrome/browser/android/webapk/chrome_webapk_host.h" |
| 17 #include "chrome/browser/android/webapk/webapk_metrics.h" | 17 #include "chrome/browser/android/webapk/webapk_metrics.h" |
| 18 #include "chrome/browser/android/webapk/webapk_web_manifest_checker.h" | 18 #include "chrome/browser/android/webapk/webapk_web_manifest_checker.h" |
| 19 #include "chrome/browser/banners/app_banner_metrics.h" | 19 #include "chrome/browser/banners/app_banner_metrics.h" |
| 20 #include "chrome/browser/banners/app_banner_settings_helper.h" |
| 20 #include "chrome/browser/manifest/manifest_icon_downloader.h" | 21 #include "chrome/browser/manifest/manifest_icon_downloader.h" |
| 21 #include "chrome/browser/manifest/manifest_icon_selector.h" | 22 #include "chrome/browser/manifest/manifest_icon_selector.h" |
| 22 #include "content/public/browser/web_contents.h" | 23 #include "content/public/browser/web_contents.h" |
| 23 #include "content/public/common/frame_navigate_params.h" | 24 #include "content/public/common/frame_navigate_params.h" |
| 24 #include "jni/AppBannerManager_jni.h" | 25 #include "jni/AppBannerManager_jni.h" |
| 25 #include "net/base/url_util.h" | 26 #include "net/base/url_util.h" |
| 26 #include "third_party/skia/include/core/SkBitmap.h" | 27 #include "third_party/skia/include/core/SkBitmap.h" |
| 27 | 28 |
| 28 using base::android::ConvertJavaStringToUTF8; | 29 using base::android::ConvertJavaStringToUTF8; |
| 29 using base::android::ConvertJavaStringToUTF16; | 30 using base::android::ConvertJavaStringToUTF16; |
| (...skipping 251 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 281 } | 282 } |
| 282 return std::string(); | 283 return std::string(); |
| 283 } | 284 } |
| 284 | 285 |
| 285 // static | 286 // static |
| 286 bool AppBannerManagerAndroid::Register(JNIEnv* env) { | 287 bool AppBannerManagerAndroid::Register(JNIEnv* env) { |
| 287 return RegisterNativesImpl(env); | 288 return RegisterNativesImpl(env); |
| 288 } | 289 } |
| 289 | 290 |
| 290 // static | 291 // static |
| 292 jint GetHomescreenLanguageOption(JNIEnv* env, |
| 293 const JavaParamRef<jclass>& clazz) { |
| 294 return AppBannerSettingsHelper::GetHomescreenLanguageOption(); |
| 295 } |
| 296 |
| 297 |
| 298 // static |
| 291 ScopedJavaLocalRef<jobject> GetJavaBannerManagerForWebContents( | 299 ScopedJavaLocalRef<jobject> GetJavaBannerManagerForWebContents( |
| 292 JNIEnv* env, | 300 JNIEnv* env, |
| 293 const JavaParamRef<jclass>& clazz, | 301 const JavaParamRef<jclass>& clazz, |
| 294 const JavaParamRef<jobject>& java_web_contents) { | 302 const JavaParamRef<jobject>& java_web_contents) { |
| 295 AppBannerManagerAndroid* manager = AppBannerManagerAndroid::FromWebContents( | 303 AppBannerManagerAndroid* manager = AppBannerManagerAndroid::FromWebContents( |
| 296 content::WebContents::FromJavaWebContents(java_web_contents)); | 304 content::WebContents::FromJavaWebContents(java_web_contents)); |
| 297 return manager? ScopedJavaLocalRef<jobject>(manager->GetJavaBannerManager()) | 305 return manager? ScopedJavaLocalRef<jobject>(manager->GetJavaBannerManager()) |
| 298 : ScopedJavaLocalRef<jobject>(); | 306 : ScopedJavaLocalRef<jobject>(); |
| 299 } | 307 } |
| 300 | 308 |
| 301 // static | 309 // static |
| 302 void SetEngagementWeights(JNIEnv* env, | 310 void SetEngagementWeights(JNIEnv* env, |
| 303 const JavaParamRef<jclass>& clazz, | 311 const JavaParamRef<jclass>& clazz, |
| 304 jdouble direct_engagement, | 312 jdouble direct_engagement, |
| 305 jdouble indirect_engagement) { | 313 jdouble indirect_engagement) { |
| 306 AppBannerManager::SetEngagementWeights(direct_engagement, | 314 AppBannerManager::SetEngagementWeights(direct_engagement, |
| 307 indirect_engagement); | 315 indirect_engagement); |
| 308 } | 316 } |
| 309 | 317 |
| 310 // static | 318 // static |
| 311 void SetTimeDeltaForTesting(JNIEnv* env, | 319 void SetTimeDeltaForTesting(JNIEnv* env, |
| 312 const JavaParamRef<jclass>& clazz, | 320 const JavaParamRef<jclass>& clazz, |
| 313 jint days) { | 321 jint days) { |
| 314 AppBannerManager::SetTimeDeltaForTesting(days); | 322 AppBannerManager::SetTimeDeltaForTesting(days); |
| 315 } | 323 } |
| 316 | 324 |
| 317 } // namespace banners | 325 } // namespace banners |
| OLD | NEW |