     override protected function item_clickHandler(event:MouseEvent):void
     {
         super.item_clickHandler(event);
-        proposedSelectedIndex = selectedIndex;
+        userProposedSelectedIndex = selectedIndex;
         closeDropDown(true);
     }
             

import flash.events.FocusEvent;
import flash.events.KeyboardEvent;
import flash.events.MouseEvent;
import flash.ui.Keyboard;

import mx.collections.IList;
import mx.core.mx_internal;

            
            if (dropDownController.isOpen)
            {   
                proposedNewIndex = layout.getNavigationDestinationIndex(userProposedSelectedIndex, navigationUnit, arrowKeysWrapFocus);
                
                if (proposedNewIndex != -1)
                {
                    // Store the selection in userProposedSelectedIndex because we 
                    // don't want to update selectedIndex until the dropdown closes
                    itemSelected(userProposedSelectedIndex, false);
                    userProposedSelectedIndex = proposedNewIndex;
                    itemSelected(userProposedSelectedIndex, true);
                    ensureIndexIsVisible(userProposedSelectedIndex);
                }
            }
            else if (dataProvider)
