summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--WebKit/android/nav/CacheBuilder.cpp1
-rw-r--r--WebKit/android/nav/CachedInput.cpp1
-rw-r--r--WebKit/android/nav/CachedInput.h3
-rw-r--r--WebKit/android/nav/WebView.cpp8
4 files changed, 13 insertions, 0 deletions
diff --git a/WebKit/android/nav/CacheBuilder.cpp b/WebKit/android/nav/CacheBuilder.cpp
index 4cb9695..61e5f46 100644
--- a/WebKit/android/nav/CacheBuilder.cpp
+++ b/WebKit/android/nav/CacheBuilder.cpp
@@ -1243,6 +1243,7 @@ void CacheBuilder::BuildFrame(Frame* root, Frame* frame,
if (input->isTextField()) {
type = TEXT_INPUT_CACHEDNODETYPE;
cachedInput.init();
+ cachedInput.setAutoComplete(input->autoComplete());
cachedInput.setFormPointer(input->form());
cachedInput.setIsTextField(true);
exported = input->value().threadsafeCopy();
diff --git a/WebKit/android/nav/CachedInput.cpp b/WebKit/android/nav/CachedInput.cpp
index 716abfd..a6a57ef 100644
--- a/WebKit/android/nav/CachedInput.cpp
+++ b/WebKit/android/nav/CachedInput.cpp
@@ -79,6 +79,7 @@ static void printWebCoreString(const char* label,
void CachedInput::Debug::print() const
{
CachedInput* b = base();
+ DEBUG_PRINT_BOOL(mAutoComplete);
DUMP_NAV_LOGD("// void* mForm=%p;\n", b->mForm);
printWebCoreString("// char* mName=\"", b->mName);
DUMP_NAV_LOGD("// int mMaxLength=%d;\n", b->mMaxLength);
diff --git a/WebKit/android/nav/CachedInput.h b/WebKit/android/nav/CachedInput.h
index 8369195..f7f9eea 100644
--- a/WebKit/android/nav/CachedInput.h
+++ b/WebKit/android/nav/CachedInput.h
@@ -51,6 +51,7 @@ public:
URL = 7
};
+ bool autoComplete() const { return mAutoComplete; }
void* formPointer() const { return mForm; }
void init();
void setTypeFromElement(WebCore::HTMLInputElement*);
@@ -65,6 +66,7 @@ public:
int paddingLeft() const { return mPaddingLeft; }
int paddingRight() const { return mPaddingRight; }
int paddingTop() const { return mPaddingTop; }
+ void setAutoComplete(bool autoComplete) { mAutoComplete = autoComplete; }
void setFormPointer(void* form) { mForm = form; }
void setIsRtlText(bool isRtlText) { mIsRtlText = isRtlText; }
void setIsTextField(bool isTextField) { mIsTextField = isTextField; }
@@ -91,6 +93,7 @@ private:
int mPaddingTop;
float mTextSize;
Type mType;
+ bool mAutoComplete : 1;
bool mIsRtlText : 1;
bool mIsTextField : 1;
bool mIsTextArea : 1;
diff --git a/WebKit/android/nav/WebView.cpp b/WebKit/android/nav/WebView.cpp
index a022fe1..d9f831e 100644
--- a/WebKit/android/nav/WebView.cpp
+++ b/WebKit/android/nav/WebView.cpp
@@ -1711,6 +1711,12 @@ static jint nativeFocusCandidateMaxLength(JNIEnv *env, jobject obj)
return input ? input->maxLength() : false;
}
+static jint nativeFocusCandidateIsAutoComplete(JNIEnv *env, jobject obj)
+{
+ const CachedInput* input = getInputCandidate(env, obj);
+ return input ? input->autoComplete() : false;
+}
+
static jobject nativeFocusCandidateName(JNIEnv *env, jobject obj)
{
const CachedInput* input = getInputCandidate(env, obj);
@@ -2328,6 +2334,8 @@ static JNINativeMethod gJavaWebViewMethods[] = {
(void*) nativeFocusCandidateLineHeight },
{ "nativeFocusCandidateMaxLength", "()I",
(void*) nativeFocusCandidateMaxLength },
+ { "nativeFocusCandidateIsAutoComplete", "()Z",
+ (void*) nativeFocusCandidateIsAutoComplete },
{ "nativeFocusCandidateName", "()Ljava/lang/String;",
(void*) nativeFocusCandidateName },
{ "nativeFocusCandidateNodeBounds", "()Landroid/graphics/Rect;",