3737import gwt .material .design .client .js .JsMaterialElement ;
3838import gwt .material .design .client .ui .html .Label ;
3939import gwt .material .design .jquery .client .api .JQuery ;
40+ import gwt .material .design .jquery .client .api .JQueryElement ;
4041
4142import java .util .ArrayList ;
4243import java .util .Collection ;
@@ -109,9 +110,10 @@ protected void onLoad() {
109110
110111 @ Override
111112 public void load () {
113+ JQueryElement listBoxElement = $ (listBox .getElement ());
112114 JsMaterialElement .$ (listBox .getElement ()).material_select (
113- () -> JQuery . $ ("input.select-dropdown" ).trigger ("close" , null ));
114- $ ( listBox . getElement ()) .change ((e , param ) -> {
115+ () -> $ ("input.select-dropdown" ).trigger ("close" , true ));
116+ listBoxElement .change ((e , param ) -> {
115117 try {
116118 ValueChangeEvent .fire (this , getValue ());
117119 } catch (IndexOutOfBoundsException ex ) {
@@ -122,8 +124,8 @@ public void load() {
122124
123125 // Fixed IE browser for select dropdown scrolling
124126 // Related materialize issue https://github.com/Dogfalo/materialize/issues/901
125- $ ( listBox . getElement ()) .siblings ("input.select-dropdown" ).mousedown ((event , o ) -> {
126- $ (".select-dropdown" ).trigger ("close" , true );
127+ listBoxElement .siblings ("input.select-dropdown" ).mousedown ((event , o ) -> {
128+ $ ("input[data-activates!='" + listBoxElement . attr ( "data-activates" ) + "'] .select-dropdown" ).trigger ("close" , true );
127129 if (!UiHelper .isTouchScreenDevice ()) {
128130 event .preventDefault ();
129131 }
0 commit comments