aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFelix Nagel <info@felixnagel.com>2012-01-22 14:12:52 +0100
committerFelix Nagel <info@felixnagel.com>2012-01-22 14:12:52 +0100
commit725023e30db10cc0a3ec2b8b9fda0ec80a4ab496 (patch)
treef222fd297f472cdf87a8859deaba29838abb6670
parentd83e169424adf341afea4351cbe5b056f42ac996 (diff)
downloadjquery-ui-725023e30db10cc0a3ec2b8b9fda0ec80a4ab496.tar.gz
jquery-ui-725023e30db10cc0a3ec2b8b9fda0ec80a4ab496.zip
Selectmenu: revert initial refresh method changes (with unit tests)
This reverts commit 27049fc5dc59522c38376d5c91f9f9a304e16613 and d83e169424adf341afea4351cbe5b056f42ac996
-rw-r--r--tests/unit/selectmenu/selectmenu_core.js1
-rw-r--r--tests/unit/selectmenu/selectmenu_events.js24
-rw-r--r--tests/unit/selectmenu/selectmenu_options.js1
-rw-r--r--ui/jquery.ui.selectmenu.js16
4 files changed, 15 insertions, 27 deletions
diff --git a/tests/unit/selectmenu/selectmenu_core.js b/tests/unit/selectmenu/selectmenu_core.js
index 85fd4b38c..f06f65c99 100644
--- a/tests/unit/selectmenu/selectmenu_core.js
+++ b/tests/unit/selectmenu/selectmenu_core.js
@@ -53,7 +53,6 @@ $.each([
equals( button.text(), selected.text(), "inital button text" );
- link.simulate( "focus" );
link.simulate( "keydown", { keyCode: $.ui.keyCode.DOWN } );
equals( element.find("option:selected").val(), selected.next("option").val() , "after keydown original select state" );
equals( button.text(), selected.next("option").text(), "after keydown button text" );
diff --git a/tests/unit/selectmenu/selectmenu_events.js b/tests/unit/selectmenu/selectmenu_events.js
index 8031b6fc6..4aad80c42 100644
--- a/tests/unit/selectmenu/selectmenu_events.js
+++ b/tests/unit/selectmenu/selectmenu_events.js
@@ -22,11 +22,9 @@ test("change", function () {
var widget = this.element.selectmenu("widget"),
menu = widget.filter(".ui-selectmenu-menu"),
button = widget.filter(".ui-selectmenu-button"),
- link = button.find("a"),
value = this.element.find("option").first().text();
-
- link.simulate( "focus" );
- link.simulate( "click" );
+
+ button.find("a").simulate( "click" );
menu.find("a").first().simulate( "mouseover" ).simulate( "click" );
});
@@ -42,11 +40,6 @@ test("close", function () {
}
});
- var widget = this.element.selectmenu("widget"),
- button = widget.filter(".ui-selectmenu-button"),
- link = button.find("a");
-
- link.simulate( "focus" );
this.element.selectmenu("open").selectmenu("close");
});
@@ -70,11 +63,9 @@ test("focus", function () {
var widget = this.element.selectmenu("widget"),
button = widget.filter(".ui-selectmenu-button"),
- link = button.find("a"),
menu = widget.filter(".ui-selectmenu-menu");
- link.simulate( "focus" );
- link.simulate( "click" );
+ button.find("a").simulate( "click" );
menu.find(".ui-menu-item").simulate("mouseover");
});
@@ -90,11 +81,6 @@ test("open", function () {
}
});
- var widget = this.element.selectmenu("widget"),
- button = widget.filter(".ui-selectmenu-button"),
- link = button.find("a");
-
- link.simulate( "focus" );
this.element.selectmenu("open");
});
@@ -113,11 +99,9 @@ test("select", function () {
var widget = this.element.selectmenu("widget"),
button = widget.filter(".ui-selectmenu-button"),
- link = button.find("a"),
menu = widget.filter(".ui-selectmenu-menu");
- link.simulate( "focus" );
- link.simulate( "click" );
+ button.find("a").simulate( "click" );
menu.find("a").first().simulate( "mouseover" ).simulate("click");
});
diff --git a/tests/unit/selectmenu/selectmenu_options.js b/tests/unit/selectmenu/selectmenu_options.js
index 32f490ce0..993086b27 100644
--- a/tests/unit/selectmenu/selectmenu_options.js
+++ b/tests/unit/selectmenu/selectmenu_options.js
@@ -23,7 +23,6 @@ test("dropdown: CSS styles", function () {
menu = widget.filter(".ui-selectmenu-menu"),
ul = widget.find("ul");
- link.simulate( "focus" );
this.element.selectmenu("open");
ok( link.hasClass("ui-corner-top") && !link.hasClass("ui-corner-all"), "button styles dropdown");
ok( ul.hasClass("ui-corner-bottom") && !ul.hasClass("ui-corner-all"), "menu styles dropdown");
diff --git a/ui/jquery.ui.selectmenu.js b/ui/jquery.ui.selectmenu.js
index 5802b6848..af34b4e19 100644
--- a/ui/jquery.ui.selectmenu.js
+++ b/ui/jquery.ui.selectmenu.js
@@ -185,6 +185,12 @@ $.widget( "ui.selectmenu", {
open: function( event ) {
if ( !this.options.disabled ) {
+ // init menu when initial opened
+ if ( !this.wasOpen ) {
+ this.refresh();
+ this.wasOpen = true;
+ }
+
var currentItem = this._getSelectedItem();
this._toggleButtonStyle();
@@ -269,6 +275,11 @@ $.widget( "ui.selectmenu", {
},
_move: function( direction, event ) {
+ // init menu when not done yet
+ if ( !this.wasOpen ) {
+ this.refresh();
+ this.wasOpen = true;
+ }
if ( direction == "first" || direction == "last" ) {
// set focus manually for first or last item
this.menu.menu( "focus", event, this.menu.find( "li" ).not( '.ui-selectmenu-optgroup' )[ direction ]() );
@@ -300,11 +311,6 @@ $.widget( "ui.selectmenu", {
},
_buttonEvents: {
- focus: function( event ) {
- // init Menu on first focus
- this.refresh();
- this.button.unbind( "focus." + this.widgetName )
- },
click: function( event ) {
this._toggle( event );
event.preventDefault();
1' href='#n61'>61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184