summaryrefslogtreecommitdiffstats
path: root/WebCore/html/HTMLSelectElement.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'WebCore/html/HTMLSelectElement.cpp')
-rw-r--r--WebCore/html/HTMLSelectElement.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/WebCore/html/HTMLSelectElement.cpp b/WebCore/html/HTMLSelectElement.cpp
index e1ba0ff..115e473 100644
--- a/WebCore/html/HTMLSelectElement.cpp
+++ b/WebCore/html/HTMLSelectElement.cpp
@@ -529,10 +529,10 @@ void HTMLSelectElement::recalcListItems(bool updateSelectedStates) const
m_recalcListItems = false;
}
-void HTMLSelectElement::childrenChanged(bool changedByParser, Node* beforeChange, Node* afterChange, int childCountDelta)
+void HTMLSelectElement::childrenChanged(bool changedByParser)
{
setRecalcListItems();
- HTMLFormControlElementWithState::childrenChanged(changedByParser, beforeChange, afterChange, childCountDelta);
+ HTMLFormControlElementWithState::childrenChanged(changedByParser);
}
void HTMLSelectElement::setRecalcListItems()
@@ -583,10 +583,12 @@ void HTMLSelectElement::dispatchFocusEvent()
void HTMLSelectElement::dispatchBlurEvent()
{
+#ifndef ANDROID_NAVIGATE_LISTBOX
// We only need to fire onChange here for menu lists, because we fire onChange for list boxes whenever the selection change is actually made.
// This matches other browsers' behavior.
if (usesMenuList())
menuListOnChange();
+#endif
HTMLFormControlElementWithState::dispatchBlurEvent();
}
@@ -635,6 +637,11 @@ void HTMLSelectElement::menuListDefaultEventHandler(Event* evt)
menuList->showPopup();
handled = true;
}
+#elif defined ANDROID_KEYBOARD_NAVIGATION
+ if ("Enter" == keyIdentifier && usesMenuList()) {
+ menuList->showPopup();
+ handled = true;
+ }
#else
int listIndex = optionToListIndex(selectedIndex());
if (keyIdentifier == "Down" || keyIdentifier == "Right") {