Chromium Code Reviews| Index: chrome/browser/android/password_ui_view_android.cc |
| diff --git a/chrome/browser/android/password_ui_view_android.cc b/chrome/browser/android/password_ui_view_android.cc |
| index 4cc4ea7688bdbab9f4dfcd24862ebce289de9d95..1b54550b34b283516daa51ebe99450f8279e3f6d 100644 |
| --- a/chrome/browser/android/password_ui_view_android.cc |
| +++ b/chrome/browser/android/password_ui_view_android.cc |
| @@ -7,6 +7,7 @@ |
| #include "base/android/jni_string.h" |
| #include "base/android/jni_weak_ref.h" |
| #include "base/metrics/field_trial.h" |
| +#include "base/strings/string_piece.h" |
| #include "chrome/browser/profiles/profile_manager.h" |
| #include "chrome/browser/sync/profile_sync_service_factory.h" |
| #include "components/autofill/core/common/password_form.h" |
| @@ -14,6 +15,7 @@ |
| #include "components/password_manager/core/browser/affiliation_utils.h" |
| #include "components/password_manager/core/browser/password_bubble_experiment.h" |
| #include "components/password_manager/core/browser/password_manager_constants.h" |
| +#include "components/password_manager/core/browser/password_ui_utils.h" |
| #include "components/password_manager/core/common/experiments.h" |
| #include "jni/PasswordUIView_jni.h" |
| @@ -21,6 +23,31 @@ using base::android::ConvertUTF16ToJavaString; |
| using base::android::ConvertUTF8ToJavaString; |
| using base::android::ScopedJavaLocalRef; |
| +namespace { |
| + |
| +std::string GetHumanReadableOrigin(autofill::PasswordForm form) { |
|
vabr (Chromium)
2016/06/08 11:46:21
Please do not pass the PasswordForm by value. It i
vabr (Chromium)
2016/06/08 11:46:21
nit: Please document what the function does. Somet
vabr (Chromium)
2016/06/08 11:46:21
There is already a function of this name in affili
dozsa
2016/06/08 12:20:18
Done.
dozsa
2016/06/08 12:20:18
Done.
dozsa
2016/06/08 12:20:18
Done.
|
| + bool is_android_uri = false; |
| + bool is_clickable = false; |
| + GURL link_url; // TODO(crbug.com/617094) Also display link_url. |
| + std::string human_readable_origin = |
| + password_manager::GetShownOriginAndLinkUrl(form, &is_android_uri, |
| + &link_url, |
| + &is_clickable); |
| + if (!is_clickable) { |
| + human_readable_origin = password_manager::SplitByDotAndReverse( |
|
vabr (Chromium)
2016/06/08 11:46:21
optional: Insert
DCHECK(is_android_uri);
between l
dozsa
2016/06/08 12:20:18
Done.
|
| + base::StringPiece( |
| + &human_readable_origin[ |
| + password_manager:: |
| + kAndroidAppSchemeAndDelimiterLength], |
| + human_readable_origin.length() - |
| + password_manager::kAndroidAppSchemeAndDelimiterLength)); |
| + human_readable_origin = human_readable_origin + " (Android)"; |
|
vabr (Chromium)
2016/06/08 11:46:21
Please use the translated string, identified by ID
dozsa
2016/06/08 12:20:18
Done.
|
| + } |
| + return human_readable_origin; |
| +} |
| + |
| +} // namespace |
| + |
| PasswordUIViewAndroid::PasswordUIViewAndroid(JNIEnv* env, jobject obj) |
| : password_manager_presenter_(this), weak_java_ui_controller_(env, obj) {} |
| @@ -82,8 +109,7 @@ ScopedJavaLocalRef<jobject> PasswordUIViewAndroid::GetSavedPasswordEntry( |
| ConvertUTF8ToJavaString(env, std::string()).obj(), |
| ConvertUTF16ToJavaString(env, base::string16()).obj()); |
| } |
| - std::string human_readable_origin = |
| - password_manager::GetHumanReadableOrigin(*form); |
| + std::string human_readable_origin = GetHumanReadableOrigin(*form); |
| return Java_PasswordUIView_createSavedPasswordEntry( |
| env, ConvertUTF8ToJavaString(env, human_readable_origin).obj(), |
| ConvertUTF16ToJavaString(env, form->username_value).obj()); |
| @@ -97,8 +123,7 @@ ScopedJavaLocalRef<jstring> PasswordUIViewAndroid::GetSavedPasswordException( |
| password_manager_presenter_.GetPasswordException(index); |
| if (!form) |
| return ConvertUTF8ToJavaString(env, std::string()); |
| - std::string human_readable_origin = |
| - password_manager::GetHumanReadableOrigin(*form); |
| + std::string human_readable_origin = GetHumanReadableOrigin(*form); |
| return ConvertUTF8ToJavaString(env, human_readable_origin); |
| } |