]> source.dussan.org Git - jquery-ui.git/commitdiff
Use pushStack in widget method. Fixes #5732 - make the widget method maintain the...
authorjzaefferer <joern.zaefferer@gmail.com>
Fri, 30 Jul 2010 12:26:58 +0000 (14:26 +0200)
committerjzaefferer <joern.zaefferer@gmail.com>
Fri, 30 Jul 2010 12:26:58 +0000 (14:26 +0200)
tests/unit/autocomplete/autocomplete_methods.js
tests/unit/button/button_methods.js
tests/unit/dialog/dialog_methods.js
tests/unit/widget/widget_core.js
ui/jquery.ui.autocomplete.js
ui/jquery.ui.button.js
ui/jquery.ui.dialog.js
ui/jquery.ui.widget.js

index 05a7d6e1448737727830129486d9d60ef5604af5..a009a83f5796854075d2cda72ce3b8e99ed65bd5 100644 (file)
@@ -38,6 +38,14 @@ test("search", function() {
        same( $(".ui-menu .ui-menu-item").length, 2, "only java and javascript for 'ja'" );
        
        $("#autocomplete").autocomplete("destroy");
-})
+});
+
+test("widget", function() {
+       var ac = $("#autocomplete").autocomplete({
+               source: data
+       });
+       same(ac.autocomplete("widget")[0], $(":ui-menu")[0]);
+       same(ac.autocomplete("widget").end()[0], ac[0]);
+});
 
 })(jQuery);
index a83a73ba406b985162c03ac8a69994a5eedeeb96..5197bc40c4ab93baa1c339916ce2bf0c655d52ae 100644 (file)
@@ -16,4 +16,18 @@ test("destroy", function() {
        equal( afterHtml, beforeHtml );
 });
 
+test("widget", function() {
+       var submit = $("#submit").button();
+       same(submit.button("widget")[0], submit[0]);
+       same(submit.button("widget").end()[0], submit[0]);
+       
+       var check = $("#check").button();
+       same(check.button("widget")[0], check.next("label")[0]);
+       same(check.button("widget").end()[0], check[0]);
+       
+       var radio = $("#radio01").button();
+       same(radio.button("widget")[0], radio.next("label")[0]);
+       same(radio.button("widget").end()[0], radio[0]);
+});
+
 })(jQuery);
index 93d1b25db7b5cb94125862d7e398253b8fc3b34a..e4b77aa0bfe3b17baead397557a6a7679f892044 100644 (file)
@@ -130,4 +130,10 @@ test("open", function() {
        ok(dlg().is(':visible') && !dlg().is(':hidden'), 'dialog visible after open method called');
 });
 
+test("widget", function() {
+       var dialog = $('<div></div>').dialog();
+       same(dialog.dialog("widget")[0], dialog.parent()[0]);
+       same(dialog.dialog("widget").end()[0], dialog[0]);
+});
+
 })(jQuery);
index 3c870f1fe18f217842d35b21e017d247c15e7a03..52c91d51ee7075bf2d66aac63a122771304e9d24 100644 (file)
@@ -151,7 +151,8 @@ test(".widget() - base", function() {
                _create: function() {}
        });
        var div = $("<div></div>").testWidget()
-       same(div[0], div.testWidget("widget")[0]);
+       same(div.testWidget("widget")[0], div[0]);
+       same(div.testWidget("widget").end()[0], div[0]);
 });
 
 test(".widget() - overriden", function() {
@@ -159,10 +160,12 @@ test(".widget() - overriden", function() {
        $.widget("ui.testWidget", {
                _create: function() {},
                widget: function() {
-                       return wrapper;
+                       return this.element.pushStack(wrapper.get());
                }
        });
-       same(wrapper[0], $("<div></div>").testWidget().testWidget("widget")[0]);
+       var div = $("<div></div>").testWidget();
+       same(div.testWidget("widget")[0], wrapper[0]);
+       same(div.testWidget("widget").end()[0], div[0]);
 });
 
 })(jQuery);
index 8550378241adc2bef42cd5bbdb976178245aa2bb..e93818d5304ce81a4a78a664e8b2f6f868df4800 100644 (file)
@@ -311,7 +311,7 @@ $.widget( "ui.autocomplete", {
        },
 
        widget: function() {
-               return this.menu.element;
+               return this.element.pushStack(this.menu.element.get());
        }
 });
 
index b2fab4d2452dabd4c0f09c8aa5db55de8886ed4d..54e099a0a3071114424fdbc7fd72d1a16603457a 100644 (file)
@@ -210,7 +210,7 @@ $.widget( "ui.button", {
        },
 
        widget: function() {
-               return this.buttonElement;
+               return this.element.pushStack(this.buttonElement.get());
        },
 
        destroy: function() {
index df11e2190a16f2bf28373f0cc1993d97b628bf99..0122ce90538c0ec30fe7af779ce915828633d51a 100644 (file)
@@ -207,7 +207,7 @@ $.widget("ui.dialog", {
        },
 
        widget: function() {
-               return this.uiDialog;
+               return this.element.pushStack(this.uiDialog.get());
        },
 
        close: function(event) {
index e21287ae0562ea24ad3ab3aceacf30e82feca32e..b5e10ba0fbfe67884e68a4a365a35f784fd218a3 100644 (file)
@@ -160,7 +160,7 @@ $.Widget.prototype = {
        },
 
        widget: function() {
-               return this.element;
+               return this.element.pushStack(this.element.get());
        },
 
        option: function( key, value ) {