r2738 - added retainFocus argument to close() method to distinguish when focus should be retained...

r2738 - added retainFocus argument to close() method to distinguish when focus should be retained...


Author: scottjehl
Date: Fri Jun 12 13:53:57 2009
New Revision: 2738
Modified:
branches/labs/selectmenu/ui.selectmenu.js
Log:
added retainFocus argument to close() method to distinguish when focus
should be retained after closing menu.
Modified: branches/labs/selectmenu/ui.selectmenu.js
==============================================================================
--- branches/labs/selectmenu/ui.selectmenu.js    (original)
+++ branches/labs/selectmenu/ui.selectmenu.js    Fri Jun 12 13:53:57 2009
@@ -184,7 +184,7 @@
                case $.ui.keyCode.ENTER:
                case $.ui.keyCode.SPACE:
                    ret = false;
-                    self.close();
+                    self.close(true);
                    $(event.target).parents('li:eq(0)').trigger('mouseup');
                    break;        
                case $.ui.keyCode.TAB:
@@ -288,16 +288,16 @@
        return this.element;    
    },
    
-    close: function(){
+    close: function(retainFocus){
        this.newelement.removeClass('ui-state-active');
        this.list.removeClass('ui-selectmenu-open');
        if(this.options.style == "dropdown"){
this.newelement.removeClass('ui-corner-top').addClass('ui-corner-all'); }
-        this.newelement.focus();    
+        if(retainFocus){this.newelement.focus();}    
        return this.element;
    },
    
-    _toggle: function(){
-        if(this.list.is('.ui-selectmenu-open')){ this.close(); }
+    _toggle: function(retainFocus){
+        if(this.list.is('.ui-selectmenu-open')){ this.close(retainFocus); }
        else { this.open(); }
    },