The following appears to resolve the issue in the _onMouseOut function of the Popup Control.
if (!(currentElement))
{
currentElement = event.srcElement;
}Method follows:
this._onMouseOut = function() {
// Track mouse position
_pointerOverPopup = false;
//debugger;
// Walk the "to element"'s parents to see if the mouse is going over a child of the popup
var currentElement = (event.toElement ? event.toElement : event.relatedTarget);
if (!(currentElement))
{
currentElement = event.srcElement;
}
if (_popupElement) {
while (currentElement) {
if (currentElement.id == _popupElement.id) {
// Mouse is going over a child of the popup
_pointerOverPopup = true;
break;
}
currentElement = (currentElement.parentElement ? currentElement.parentElement : currentElement.parentNode);
}
}
// Hide the popup
if (!_pointerOverPopup) {
_popupBehavior.hide();
_popupVisible = false;
}
}