Index: chrome/browser/android/banners/app_banner_manager_android.cc |
diff --git a/chrome/browser/android/banners/app_banner_manager_android.cc b/chrome/browser/android/banners/app_banner_manager_android.cc |
index ff2c8b39fc9cf0c5cb3d1c46a972e1d3ba114dd3..829b0b019296829cc6feabd9b4eaf49d56749ae7 100644 |
--- a/chrome/browser/android/banners/app_banner_manager_android.cc |
+++ b/chrome/browser/android/banners/app_banner_manager_android.cc |
@@ -21,7 +21,7 @@ using base::android::ConvertUTF8ToJavaString; |
using base::android::ConvertUTF16ToJavaString; |
namespace { |
-const char kBannerTag[] = "google-play-id"; |
+const char kPlayPlatform[] = "play"; |
} // anonymous namespace |
namespace banners { |
@@ -48,49 +48,11 @@ void AppBannerManagerAndroid::ReplaceWebContents(JNIEnv* env, |
AppBannerManager::ReplaceWebContents(web_contents); |
} |
-bool AppBannerManagerAndroid::OnMessageReceived( |
- const IPC::Message& message) { |
- bool handled = true; |
- IPC_BEGIN_MESSAGE_MAP(AppBannerManagerAndroid, message) |
- IPC_MESSAGE_HANDLER(ChromeViewHostMsg_DidRetrieveMetaTagContent, |
- OnDidRetrieveMetaTagContent) |
- IPC_MESSAGE_UNHANDLED(handled = false) |
- IPC_END_MESSAGE_MAP() |
- return handled; |
-} |
- |
-bool AppBannerManagerAndroid::OnInvalidManifest(AppBannerDataFetcher* fetcher) { |
- DCHECK(data_fetcher() == fetcher); |
- if (web_contents()->IsBeingDestroyed()) { |
+bool AppBannerManagerAndroid::HandleNonWebApp(const std::string& platform, |
+ const GURL& url, |
+ const std::string& id) { |
+ if (platform != kPlayPlatform || id.empty()) |
return false; |
- } |
- |
- Send(new ChromeViewMsg_RetrieveMetaTagContent(routing_id(), |
- fetcher->validated_url(), |
- kBannerTag)); |
- return true; |
-} |
- |
-AppBannerDataFetcher* AppBannerManagerAndroid::CreateAppBannerDataFetcher( |
- base::WeakPtr<Delegate> weak_delegate, |
- const int ideal_icon_size) { |
- return new AppBannerDataFetcherAndroid(web_contents(), weak_delegate, |
- ideal_icon_size); |
-} |
- |
-void AppBannerManagerAndroid::OnDidRetrieveMetaTagContent( |
- bool success, |
- const std::string& tag_name, |
- const std::string& tag_content, |
- const GURL& expected_url) { |
- DCHECK(web_contents()); |
- if (!success |
- || tag_name != kBannerTag |
- || !data_fetcher() |
- || data_fetcher()->validated_url() != expected_url |
- || tag_content.size() >= chrome::kMaxMetaTagAttributeLength) { |
- return; |
- } |
banners::TrackDisplayEvent(DISPLAY_EVENT_BANNER_REQUESTED); |
@@ -98,14 +60,22 @@ void AppBannerManagerAndroid::OnDidRetrieveMetaTagContent( |
JNIEnv* env = base::android::AttachCurrentThread(); |
ScopedJavaLocalRef<jobject> jobj = weak_java_banner_view_manager_.get(env); |
if (jobj.is_null()) |
- return; |
+ return false; |
ScopedJavaLocalRef<jstring> jurl( |
- ConvertUTF8ToJavaString(env, expected_url.spec())); |
+ ConvertUTF8ToJavaString(env, data_fetcher()->validated_url().spec())); |
ScopedJavaLocalRef<jstring> jpackage( |
- ConvertUTF8ToJavaString(env, tag_content)); |
+ ConvertUTF8ToJavaString(env, id)); |
Java_AppBannerManager_fetchAppDetails( |
env, jobj.obj(), jurl.obj(), jpackage.obj(), ideal_icon_size()); |
+ return true; |
+} |
+ |
+AppBannerDataFetcher* AppBannerManagerAndroid::CreateAppBannerDataFetcher( |
+ base::WeakPtr<Delegate> weak_delegate, |
+ const int ideal_icon_size) { |
+ return new AppBannerDataFetcherAndroid(web_contents(), weak_delegate, |
+ ideal_icon_size); |
} |
bool AppBannerManagerAndroid::OnAppDetailsRetrieved(JNIEnv* env, |