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

Side by Side Diff: chrome/browser/android/banners/app_banner_manager_android.cc

Issue 2024953005: Allow app banners to be triggered by increases in site engagement. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@site-engagement-callback
Patch Set: Address reviewer comments. Rebase Created 4 years, 5 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 unified diff | Download patch
« no previous file with comments | « no previous file | chrome/browser/banners/app_banner_manager.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 "base/android/jni_android.h" 7 #include "base/android/jni_android.h"
8 #include "base/android/jni_string.h" 8 #include "base/android/jni_string.h"
9 #include "chrome/browser/android/banners/app_banner_data_fetcher_android.h" 9 #include "chrome/browser/android/banners/app_banner_data_fetcher_android.h"
10 #include "chrome/browser/android/shortcut_helper.h" 10 #include "chrome/browser/android/shortcut_helper.h"
(...skipping 15 matching lines...) Expand all
26 const char kIdName[] = "id"; 26 const char kIdName[] = "id";
27 const char kPlayInlineReferrer[] = "playinline=chrome_inline"; 27 const char kPlayInlineReferrer[] = "playinline=chrome_inline";
28 28
29 } // anonymous namespace 29 } // anonymous namespace
30 30
31 namespace banners { 31 namespace banners {
32 32
33 AppBannerManagerAndroid::AppBannerManagerAndroid( 33 AppBannerManagerAndroid::AppBannerManagerAndroid(
34 JNIEnv* env, 34 JNIEnv* env,
35 jobject obj) 35 jobject obj)
36 : AppBannerManager(), 36 : AppBannerManager(nullptr),
37 weak_java_banner_view_manager_(env, obj) { 37 weak_java_banner_view_manager_(env, obj) {
38 } 38 }
39 39
40 AppBannerManagerAndroid::~AppBannerManagerAndroid() { 40 AppBannerManagerAndroid::~AppBannerManagerAndroid() {
41 } 41 }
42 42
43 void AppBannerManagerAndroid::Destroy(JNIEnv* env, 43 void AppBannerManagerAndroid::Destroy(JNIEnv* env,
44 const JavaParamRef<jobject>& obj) { 44 const JavaParamRef<jobject>& obj) {
45 delete this; 45 delete this;
46 } 46 }
(...skipping 131 matching lines...) Expand 10 before | Expand all | Expand 10 after
178 178
179 bool AppBannerManagerAndroid::IsFetcherActive( 179 bool AppBannerManagerAndroid::IsFetcherActive(
180 JNIEnv* env, 180 JNIEnv* env,
181 const JavaParamRef<jobject>& obj) { 181 const JavaParamRef<jobject>& obj) {
182 return AppBannerManager::IsFetcherActive(); 182 return AppBannerManager::IsFetcherActive();
183 } 183 }
184 184
185 void AppBannerManagerAndroid::RequestAppBanner( 185 void AppBannerManagerAndroid::RequestAppBanner(
186 JNIEnv* env, 186 JNIEnv* env,
187 const JavaParamRef<jobject>& obj) { 187 const JavaParamRef<jobject>& obj) {
188 AppBannerManager::RequestAppBanner(web_contents()->GetMainFrame(), 188 // Set debug mode to true as this method is only called from DevTools.
189 web_contents()->GetLastCommittedURL(), 189 AppBannerManager::RequestAppBanner(web_contents()->GetLastCommittedURL(),
190 true); 190 true /* is_debug_mode */);
191 } 191 }
192 192
193 // static 193 // static
194 bool AppBannerManagerAndroid::Register(JNIEnv* env) { 194 bool AppBannerManagerAndroid::Register(JNIEnv* env) {
195 return RegisterNativesImpl(env); 195 return RegisterNativesImpl(env);
196 } 196 }
197 197
198 jlong Init(JNIEnv* env, 198 jlong Init(JNIEnv* env,
199 const JavaParamRef<jobject>& obj) { 199 const JavaParamRef<jobject>& obj) {
200 AppBannerManagerAndroid* manager = new AppBannerManagerAndroid(env, obj); 200 AppBannerManagerAndroid* manager = new AppBannerManagerAndroid(env, obj);
(...skipping 13 matching lines...) Expand all
214 214
215 void SetEngagementWeights(JNIEnv* env, 215 void SetEngagementWeights(JNIEnv* env,
216 const JavaParamRef<jclass>& clazz, 216 const JavaParamRef<jclass>& clazz,
217 jdouble direct_engagement, 217 jdouble direct_engagement,
218 jdouble indirect_engagement) { 218 jdouble indirect_engagement) {
219 AppBannerManager::SetEngagementWeights(direct_engagement, 219 AppBannerManager::SetEngagementWeights(direct_engagement,
220 indirect_engagement); 220 indirect_engagement);
221 } 221 }
222 222
223 } // namespace banners 223 } // namespace banners
OLDNEW
« no previous file with comments | « no previous file | chrome/browser/banners/app_banner_manager.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698