Commit b3daa251 authored by Ivana Zuzic's avatar Ivana Zuzic Committed by Commit Bot

[PWD Editing Android] Create a bridge between native and Java side

Enable calling the native ChangeSavedPassword method from the Java side.

Bug: 377410
Change-Id: I7d83090c9ca04032a308a61e40c0e51af1162dbe
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/1735585Reviewed-by: default avatarFriedrich [CET] <fhorschig@chromium.org>
Reviewed-by: default avatarVasilii Sukhanov <vasilii@chromium.org>
Commit-Queue: Ivana Zuzic <izuzic@google.com>
Cr-Commit-Position: refs/heads/master@{#684299}
parent 3db984c2
......@@ -58,6 +58,14 @@ public interface PasswordManagerHandler {
*/
void removeSavedPasswordEntry(int index);
/**
* Change saved password entry at index.
* @param index of password entry to change.
* @param new_username is the username after a change.
* @param new_password is the password after a change.
*/
void changeSavedPasswordEntry(int index, String newUsername, String newPassword);
/**
* Remove saved exception entry at index.
*
......
......@@ -67,6 +67,12 @@ public final class PasswordUIView implements PasswordManagerHandler {
nativeHandleRemoveSavedPasswordEntry(mNativePasswordUIViewAndroid, index);
}
@Override
public void changeSavedPasswordEntry(int index, String newUsername, String newPassword) {
nativeHandleChangeSavedPasswordEntry(
mNativePasswordUIViewAndroid, index, newUsername, newPassword);
}
@Override
public void removeSavedPasswordException(int index) {
nativeHandleRemoveSavedPasswordException(mNativePasswordUIViewAndroid, index);
......@@ -111,6 +117,9 @@ public final class PasswordUIView implements PasswordManagerHandler {
private native void nativeHandleRemoveSavedPasswordEntry(
long nativePasswordUIViewAndroid, int index);
private native void nativeHandleChangeSavedPasswordEntry(
long nativePasswordUIViewAndroid, int index, String newUsername, String newPassword);
private native void nativeHandleRemoveSavedPasswordException(
long nativePasswordUIViewAndroid, int index);
......
......@@ -185,18 +185,19 @@ public class SavePasswordsPreferencesTest {
return mSavedPasswordExeptions.get(index);
}
@Override
public void changeSavedPasswordEntry(int index, String newUsername, String newPassword) {
assert false : "Define this method before starting to use it in tests.";
}
@Override
public void removeSavedPasswordEntry(int index) {
// Define this method before starting to use it in tests.
assert false;
return;
assert false : "Define this method before starting to use it in tests.";
}
@Override
public void removeSavedPasswordException(int index) {
// Define this method before starting to use it in tests.
assert false;
return;
assert false : "Define this method before starting to use it in tests.";
}
@Override
......
......@@ -142,6 +142,18 @@ void PasswordUIViewAndroid::HandleRemoveSavedPasswordException(
password_manager_presenter_.RemovePasswordException(index);
}
void PasswordUIViewAndroid::HandleChangeSavedPasswordEntry(
JNIEnv* env,
const base::android::JavaRef<jobject>&,
int index,
const JavaRef<jstring>& new_username,
const JavaRef<jstring>& new_password) {
DCHECK_EQ(State::ALIVE, state_);
password_manager_presenter_.ChangeSavedPassword(
index, ConvertJavaStringToUTF16(env, new_username),
ConvertJavaStringToUTF16(env, new_password));
}
void PasswordUIViewAndroid::HandleSerializePasswords(
JNIEnv* env,
const JavaRef<jobject>&,
......
......@@ -74,6 +74,12 @@ class PasswordUIViewAndroid : public PasswordUIView {
JNIEnv* env,
const base::android::JavaRef<jobject>&,
int index);
void HandleChangeSavedPasswordEntry(
JNIEnv* env,
const base::android::JavaRef<jobject>&,
int index,
const base::android::JavaRef<jstring>& new_username,
const base::android::JavaRef<jstring>& new_password);
void HandleSerializePasswords(
JNIEnv* env,
const base::android::JavaRef<jobject>&,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment