diff options
Diffstat (limited to 'core/java')
| -rw-r--r-- | core/java/android/webkit/WebView.java | 13 |
1 files changed, 9 insertions, 4 deletions
diff --git a/core/java/android/webkit/WebView.java b/core/java/android/webkit/WebView.java index 6f15c12..7885b8a 100644 --- a/core/java/android/webkit/WebView.java +++ b/core/java/android/webkit/WebView.java @@ -3241,24 +3241,29 @@ public class WebView extends AbsoluteLayout mWebTextView.setNodePointer(nodePointer); int maxLength = -1; boolean isTextField = nativeFocusCandidateIsTextField(); + boolean isPassword; if (isTextField) { maxLength = nativeFocusCandidateMaxLength(); String name = nativeFocusCandidateName(); - if (mWebViewCore.getSettings().getSaveFormData() - && name != null) { + isPassword = nativeFocusCandidateIsPassword(); + if (!isPassword && mWebViewCore.getSettings().getSaveFormData() + && name != null && name.length() > 0) { Message update = mPrivateHandler.obtainMessage( - REQUEST_FORM_DATA, nodePointer); + REQUEST_FORM_DATA); + update.arg1 = nodePointer; RequestFormData updater = new RequestFormData(name, getUrl(), update); Thread t = new Thread(updater); t.start(); } + } else { + isPassword = false; } mWebTextView.setMaxLength(maxLength); AutoCompleteAdapter adapter = null; mWebTextView.setAdapterCustom(adapter); mWebTextView.setSingleLine(isTextField); - mWebTextView.setInPassword(nativeFocusCandidateIsPassword()); + mWebTextView.setInPassword(isPassword); if (null == text) { if (DebugFlags.WEB_VIEW) { Log.v(LOGTAG, "rebuildWebTextView null == text"); |
