| Index: chrome/android/java/src/org/chromium/chrome/browser/preferences/password/PasswordEntryEditor.java
|
| diff --git a/chrome/android/java/src/org/chromium/chrome/browser/preferences/password/PasswordEntryEditor.java b/chrome/android/java/src/org/chromium/chrome/browser/preferences/password/PasswordEntryEditor.java
|
| index f74628ada9478bf67fe36f1d1dfa95ae220a0ffe..3c32b088800bf1cfb58194150587884395e2656f 100644
|
| --- a/chrome/android/java/src/org/chromium/chrome/browser/preferences/password/PasswordEntryEditor.java
|
| +++ b/chrome/android/java/src/org/chromium/chrome/browser/preferences/password/PasswordEntryEditor.java
|
| @@ -5,7 +5,6 @@
|
| package org.chromium.chrome.browser.preferences.password;
|
|
|
| import android.app.Fragment;
|
| -import android.content.Intent;
|
| import android.os.Bundle;
|
| import android.view.LayoutInflater;
|
| import android.view.View;
|
| @@ -14,6 +13,8 @@ import android.widget.Button;
|
| import android.widget.TextView;
|
|
|
| import org.chromium.chrome.R;
|
| +import org.chromium.chrome.browser.PasswordUIView;
|
| +import org.chromium.chrome.browser.PasswordUIView.PasswordListObserver;
|
|
|
| /**
|
| * Password entry editor that allows to view and delete passwords stored in Chrome.
|
| @@ -64,24 +65,45 @@ public class PasswordEntryEditor extends Fragment {
|
|
|
| // Delete was clicked.
|
| private void removeItem() {
|
| - Intent data = new Intent();
|
| - data.putExtra(SavePasswordsPreferences.PASSWORD_LIST_DELETED_ID, mID);
|
| - data.putExtra(SavePasswordsPreferences.DELETED_ITEM_IS_EXCEPTION, mException);
|
| - getActivity().setResult(SavePasswordsPreferences.RESULT_DELETE_PASSWORD, data);
|
| + final PasswordUIView passwordUIView = new PasswordUIView();
|
| + final PasswordListObserver passwordDeleter = new PasswordListObserver() {
|
| + @Override
|
| + public void passwordListAvailable(int count) {
|
| + if (!mException) {
|
| + passwordUIView.removeSavedPasswordEntry(mID);
|
| + passwordUIView.destroy();
|
| + getActivity().finish();
|
| + }
|
| + }
|
| +
|
| + @Override
|
| + public void passwordExceptionListAvailable(int count) {
|
| + if (mException) {
|
| + passwordUIView.removeSavedPasswordException(mID);
|
| + passwordUIView.destroy();
|
| + getActivity().finish();
|
| + }
|
| + }
|
| + };
|
| +
|
| + passwordUIView.addObserver(passwordDeleter);
|
| + passwordUIView.updatePasswordLists();
|
| }
|
|
|
| private void hookupCancelDeleteButtons(View v) {
|
| - Button button = (Button) v.findViewById(R.id.password_entry_editor_delete);
|
| - button.setOnClickListener(new View.OnClickListener() {
|
| + final Button deleteButton = (Button) v.findViewById(R.id.password_entry_editor_delete);
|
| + final Button cancelButton = (Button) v.findViewById(R.id.password_entry_editor_cancel);
|
| +
|
| + deleteButton.setOnClickListener(new View.OnClickListener() {
|
| @Override
|
| public void onClick(View v) {
|
| removeItem();
|
| - getActivity().finish();
|
| + deleteButton.setEnabled(false);
|
| + cancelButton.setEnabled(false);
|
| }
|
| });
|
|
|
| - button = (Button) v.findViewById(R.id.password_entry_editor_cancel);
|
| - button.setOnClickListener(new View.OnClickListener() {
|
| + cancelButton.setOnClickListener(new View.OnClickListener() {
|
| @Override
|
| public void onClick(View v) {
|
| getActivity().finish();
|
|
|