diff options
| author | horo <horo@chromium.org> | 2016-01-25 06:36:45 -0800 |
|---|---|---|
| committer | Commit bot <commit-bot@chromium.org> | 2016-01-25 14:38:04 +0000 |
| commit | 9638ad271db786762315556b7c2bc9c0a55c8e76 (patch) | |
| tree | 3d4d25e42153b553a345935b203188256eea786c /chrome/browser/android/tab_web_contents_delegate_android.cc | |
| parent | f5cdfde9135883c6cd83c81436ebe4888c432b8b (diff) | |
| download | chromium_src-9638ad271db786762315556b7c2bc9c0a55c8e76.zip chromium_src-9638ad271db786762315556b7c2bc9c0a55c8e76.tar.gz chromium_src-9638ad271db786762315556b7c2bc9c0a55c8e76.tar.bz2 | |
Add "Request app banner" context menu in DevTools
BUG=540491
Demo: https://drive.google.com/file/d/0B6skYAFVnosEc1RQRm9KYmxCeXM/view?usp=sharing
When the user clicks "Request app banner" context menu, Chrome tries to open
"add to homescreen" banner. And if error happens, it will show the detailed
information about why the app banner is not opened even if
"bypass-app-banner-engagement-checks" flag is not set.
RequestAppBanner method from DevTools is handled like this:
Android:
PageHandler::RequestAppBanner()
-> TabWebContentsDelegateAndroid::RequestAppBanner()
-> Java TabWebContentsDelegateAndroid.requestAppBanner()
-> Java Tab.requestAppBanner()
-> Java AppBannerManager.requestAppBanner()
-> nativeRequestAppBanner()
-> AppBannerManagerAndroid::RequestAppBanner()
-> AppBannerManager::TriggerAppBannerFetch()
Desktop:
PageHandler::RequestAppBanner()
-> Browser::RequestAppBanner()
-> AppBannerManager::TriggerAppBannerFetch()
Review URL: https://codereview.chromium.org/1569893003
Cr-Commit-Position: refs/heads/master@{#371239}
Diffstat (limited to 'chrome/browser/android/tab_web_contents_delegate_android.cc')
| -rw-r--r-- | chrome/browser/android/tab_web_contents_delegate_android.cc | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/chrome/browser/android/tab_web_contents_delegate_android.cc b/chrome/browser/android/tab_web_contents_delegate_android.cc index 664328e..ce94633 100644 --- a/chrome/browser/android/tab_web_contents_delegate_android.cc +++ b/chrome/browser/android/tab_web_contents_delegate_android.cc @@ -423,6 +423,15 @@ void TabWebContentsDelegateAndroid::AddNewContents( delete new_contents; } +bool TabWebContentsDelegateAndroid::RequestAppBanner( + content::WebContents* web_contents) { + JNIEnv* env = base::android::AttachCurrentThread(); + ScopedJavaLocalRef<jobject> obj = GetJavaDelegate(env); + if (obj.is_null()) + return false; + return Java_TabWebContentsDelegateAndroid_requestAppBanner(env, obj.obj()); +} + } // namespace android } // namespace chrome |
