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

Unified Diff: chrome/browser/ui/android/infobars/confirm_infobar.cc

Issue 1540423004: Add card details and legal message to Android save credit card infobar. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Initial draft Created 5 years 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 side-by-side diff with in-line comments
Download patch
Index: chrome/browser/ui/android/infobars/confirm_infobar.cc
diff --git a/chrome/browser/ui/android/infobars/confirm_infobar.cc b/chrome/browser/ui/android/infobars/confirm_infobar.cc
index c90991153242d2f2927ba7df2f42e07b837bf7c7..dfaf329131541fbdbe0a129146aeede0bba6b467 100644
--- a/chrome/browser/ui/android/infobars/confirm_infobar.cc
+++ b/chrome/browser/ui/android/infobars/confirm_infobar.cc
@@ -13,6 +13,7 @@
#include "build/build_config.h"
#include "chrome/browser/android/resource_mapper.h"
#include "chrome/browser/infobars/infobar_service.h"
+#include "chrome/browser/media/media_stream_infobar_delegate_android.h"
#include "chrome/browser/permissions/permission_infobar_delegate.h"
#include "components/content_settings/core/common/content_settings_types.h"
#include "components/infobars/core/confirm_infobar_delegate.h"
@@ -23,10 +24,6 @@
#include "ui/gfx/android/java_bitmap.h"
#include "ui/gfx/image/image.h"
-#if defined(OS_ANDROID)
-#include "chrome/browser/media/media_stream_infobar_delegate_android.h"
-#endif
-
// InfoBarService -------------------------------------------------------------
scoped_ptr<infobars::InfoBar> InfoBarService::CreateConfirmInfoBar(
@@ -61,6 +58,25 @@ base::android::ScopedJavaLocalRef<jobject> ConfirmInfoBar::CreateRenderInfoBar(
base::android::ConvertUTF16ToJavaString(
env, delegate->GetLinkText());
+ for (const auto& detail : delegate->GetDetails()) {
+ Java_ConfirmInfoBarDelegate_addDetail(
+ env, java_confirm_delegate_.obj(),
+ ResourceMapper::MapFromChromiumId(detail.icon_id),
+ base::android::ConvertUTF16ToJavaString(env, detail.label).obj(),
+ base::android::ConvertUTF16ToJavaString(env, detail.sub_label).obj());
+ }
+
+ for (const auto& description : delegate->GetDescriptions()) {
+ Java_ConfirmInfoBarDelegate_addDescription(
+ env, java_confirm_delegate_.obj(),
+ base::android::ConvertUTF16ToJavaString(env, description.text).obj());
+ for (const auto& link : description.links) {
+ Java_ConfirmInfoBarDelegate_addLinkToLastDescription(
+ env, java_confirm_delegate_.obj(), link.start, link.end,
+ base::android::ConvertUTF8ToJavaString(env, link.url.spec()).obj());
+ }
+ }
+
ScopedJavaLocalRef<jobject> java_bitmap;
if (delegate->GetIconId() == infobars::InfoBarDelegate::kNoIconID &&
!delegate->GetIcon().IsEmpty()) {
@@ -71,7 +87,6 @@ base::android::ScopedJavaLocalRef<jobject> ConfirmInfoBar::CreateRenderInfoBar(
if (delegate->AsPermissionInfobarDelegate()) {
content_settings.push_back(
delegate->AsPermissionInfobarDelegate()->content_setting());
-#if defined(OS_ANDROID)
} else if (delegate->AsMediaStreamInfoBarDelegateAndroid()) {
MediaStreamInfoBarDelegateAndroid* media_delegate =
delegate->AsMediaStreamInfoBarDelegateAndroid();
@@ -83,7 +98,6 @@ base::android::ScopedJavaLocalRef<jobject> ConfirmInfoBar::CreateRenderInfoBar(
content_settings.push_back(
ContentSettingsType::CONTENT_SETTINGS_TYPE_MEDIASTREAM_MIC);
}
-#endif
}
content::WebContents* web_contents =

Powered by Google App Engine
This is Rietveld 408576698