Fix for bug 55179. Use the activeChild to retrieve the current user selection in the popup menu. Thanks jwbaker@acm.org for providing the patch.

This commit is contained in:
ducarroz%netscape.com 2000-10-14 04:17:43 +00:00
parent 2f24565e8d
commit 5a7eb03c9e

View File

@ -183,23 +183,20 @@
({
onMenuCommand: function(me, popupSetElem) {
var inputElement = document.getAnonymousNodes(me)[0].firstChild;
var popupElem = popupSetElem.firstChild;
for (var i = 0; i < popupElem.childNodes.length; i ++)
{
var menuitem = popupElem.childNodes[i];
if (menuitem.getAttribute("menuactive") == "true")
{
me.ignoreInputEvent = true;
inputElement.value = menuitem.getAttribute("value");
inputElement = document.getAnonymousNodes(me)[0].firstChild;
inputElement.setSelectionRange(inputElement.value.length, inputElement.value.length);
needToAutocomplete = false;
me.privatefunc.selectedItemIndex = i;
me.ignoreInputEvent = false;
return;
}
}
var inputElement = document.getAnonymousNodes(me)[0].firstChild;
var popupElem = popupSetElem.firstChild;
me.ignoreInputEvent = true;
inputElement.value = popupElem.activeChild.getAttribute("value");
inputElement.setSelectionRange(inputElement.value.length, inputElement.value.length);
needToAutocomplete = false;
me.privatefunc.selectedItemIndex = popupElem.activeChild.getAttribute("data");
me.ignoreInputEvent = false;
return;
},
callListener: function(me, action) {