| OLD | NEW | 
|    1 // Copyright 2013 The Chromium Authors. All rights reserved. |    1 // Copyright 2013 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/password_ui_view_android.h" |    5 #include "chrome/browser/android/password_ui_view_android.h" | 
|    6  |    6  | 
|    7 #include "base/android/jni_string.h" |    7 #include "base/android/jni_string.h" | 
|    8 #include "base/android/jni_weak_ref.h" |    8 #include "base/android/jni_weak_ref.h" | 
|    9 #include "base/metrics/field_trial.h" |    9 #include "base/metrics/field_trial.h" | 
|   10 #include "chrome/browser/profiles/profile_manager.h" |   10 #include "chrome/browser/profiles/profile_manager.h" | 
|   11 #include "chrome/browser/sync/profile_sync_service_factory.h" |   11 #include "chrome/browser/sync/profile_sync_service_factory.h" | 
|   12 #include "chrome/common/pref_names.h" |  | 
|   13 #include "components/autofill/core/common/password_form.h" |   12 #include "components/autofill/core/common/password_form.h" | 
|   14 #include "components/browser_sync/browser/profile_sync_service.h" |   13 #include "components/browser_sync/browser/profile_sync_service.h" | 
|   15 #include "components/password_manager/core/browser/affiliation_utils.h" |   14 #include "components/password_manager/core/browser/affiliation_utils.h" | 
|   16 #include "components/password_manager/core/browser/password_bubble_experiment.h" |   15 #include "components/password_manager/core/browser/password_bubble_experiment.h" | 
|   17 #include "components/password_manager/core/browser/password_manager_constants.h" |   16 #include "components/password_manager/core/browser/password_manager_constants.h" | 
|   18 #include "components/password_manager/core/common/experiments.h" |   17 #include "components/password_manager/core/common/experiments.h" | 
|   19 #include "components/prefs/pref_service.h" |  | 
|   20 #include "jni/PasswordUIView_jni.h" |   18 #include "jni/PasswordUIView_jni.h" | 
|   21  |   19  | 
|   22 using base::android::ConvertUTF16ToJavaString; |   20 using base::android::ConvertUTF16ToJavaString; | 
|   23 using base::android::ConvertUTF8ToJavaString; |   21 using base::android::ConvertUTF8ToJavaString; | 
|   24 using base::android::ScopedJavaLocalRef; |   22 using base::android::ScopedJavaLocalRef; | 
|   25  |   23  | 
|   26 PasswordUIViewAndroid::PasswordUIViewAndroid(JNIEnv* env, jobject obj) |   24 PasswordUIViewAndroid::PasswordUIViewAndroid(JNIEnv* env, jobject obj) | 
|   27     : password_manager_presenter_(this), weak_java_ui_controller_(env, obj) {} |   25     : password_manager_presenter_(this), weak_java_ui_controller_(env, obj) {} | 
|   28  |   26  | 
|   29 PasswordUIViewAndroid::~PasswordUIViewAndroid() {} |   27 PasswordUIViewAndroid::~PasswordUIViewAndroid() {} | 
| (...skipping 47 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
|   77     const JavaParamRef<jobject>&, |   75     const JavaParamRef<jobject>&, | 
|   78     int index) { |   76     int index) { | 
|   79   const autofill::PasswordForm* form = |   77   const autofill::PasswordForm* form = | 
|   80       password_manager_presenter_.GetPassword(index); |   78       password_manager_presenter_.GetPassword(index); | 
|   81   if (!form) { |   79   if (!form) { | 
|   82     return Java_PasswordUIView_createSavedPasswordEntry( |   80     return Java_PasswordUIView_createSavedPasswordEntry( | 
|   83         env, |   81         env, | 
|   84         ConvertUTF8ToJavaString(env, std::string()).obj(), |   82         ConvertUTF8ToJavaString(env, std::string()).obj(), | 
|   85         ConvertUTF16ToJavaString(env, base::string16()).obj()); |   83         ConvertUTF16ToJavaString(env, base::string16()).obj()); | 
|   86   } |   84   } | 
|   87   std::string human_readable_origin = password_manager::GetHumanReadableOrigin( |   85   std::string human_readable_origin = | 
|   88       *form, GetProfile()->GetPrefs()->GetString(prefs::kAcceptLanguages)); |   86       password_manager::GetHumanReadableOrigin(*form); | 
|   89   return Java_PasswordUIView_createSavedPasswordEntry( |   87   return Java_PasswordUIView_createSavedPasswordEntry( | 
|   90       env, ConvertUTF8ToJavaString(env, human_readable_origin).obj(), |   88       env, ConvertUTF8ToJavaString(env, human_readable_origin).obj(), | 
|   91       ConvertUTF16ToJavaString(env, form->username_value).obj()); |   89       ConvertUTF16ToJavaString(env, form->username_value).obj()); | 
|   92 } |   90 } | 
|   93  |   91  | 
|   94 ScopedJavaLocalRef<jstring> PasswordUIViewAndroid::GetSavedPasswordException( |   92 ScopedJavaLocalRef<jstring> PasswordUIViewAndroid::GetSavedPasswordException( | 
|   95     JNIEnv* env, |   93     JNIEnv* env, | 
|   96     const JavaParamRef<jobject>&, |   94     const JavaParamRef<jobject>&, | 
|   97     int index) { |   95     int index) { | 
|   98   const autofill::PasswordForm* form = |   96   const autofill::PasswordForm* form = | 
|   99       password_manager_presenter_.GetPasswordException(index); |   97       password_manager_presenter_.GetPasswordException(index); | 
|  100   if (!form) |   98   if (!form) | 
|  101     return ConvertUTF8ToJavaString(env, std::string()); |   99     return ConvertUTF8ToJavaString(env, std::string()); | 
|  102   std::string human_readable_origin = password_manager::GetHumanReadableOrigin( |  100   std::string human_readable_origin = | 
|  103       *form, GetProfile()->GetPrefs()->GetString(prefs::kAcceptLanguages)); |  101       password_manager::GetHumanReadableOrigin(*form); | 
|  104   return ConvertUTF8ToJavaString(env, human_readable_origin); |  102   return ConvertUTF8ToJavaString(env, human_readable_origin); | 
|  105 } |  103 } | 
|  106  |  104  | 
|  107 void PasswordUIViewAndroid::HandleRemoveSavedPasswordEntry( |  105 void PasswordUIViewAndroid::HandleRemoveSavedPasswordEntry( | 
|  108     JNIEnv* env, |  106     JNIEnv* env, | 
|  109     const JavaParamRef<jobject>&, |  107     const JavaParamRef<jobject>&, | 
|  110     int index) { |  108     int index) { | 
|  111   password_manager_presenter_.RemoveSavedPassword(index); |  109   password_manager_presenter_.RemoveSavedPassword(index); | 
|  112 } |  110 } | 
|  113  |  111  | 
| (...skipping 21 matching lines...) Expand all  Loading... | 
|  135  |  133  | 
|  136 // static |  134 // static | 
|  137 static jlong Init(JNIEnv* env, const JavaParamRef<jobject>& obj) { |  135 static jlong Init(JNIEnv* env, const JavaParamRef<jobject>& obj) { | 
|  138   PasswordUIViewAndroid* controller = new PasswordUIViewAndroid(env, obj); |  136   PasswordUIViewAndroid* controller = new PasswordUIViewAndroid(env, obj); | 
|  139   return reinterpret_cast<intptr_t>(controller); |  137   return reinterpret_cast<intptr_t>(controller); | 
|  140 } |  138 } | 
|  141  |  139  | 
|  142 bool PasswordUIViewAndroid::RegisterPasswordUIViewAndroid(JNIEnv* env) { |  140 bool PasswordUIViewAndroid::RegisterPasswordUIViewAndroid(JNIEnv* env) { | 
|  143   return RegisterNativesImpl(env); |  141   return RegisterNativesImpl(env); | 
|  144 } |  142 } | 
| OLD | NEW |