Skip to content

Commit af178c0

Browse files
committed
dialog: fixed enable and disable methods
1 parent 6f1b0d8 commit af178c0

2 files changed

Lines changed: 15 additions & 2 deletions

File tree

tests/unit/dialog/dialog_methods.js

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,14 +68,22 @@ test("enable", function() {
6868
var expected = $('<div></div>').dialog(),
6969
actual = expected.dialog('enable');
7070
equals(actual, expected, 'enable is chainable');
71-
ok(false, 'missing test - untested code is broken code');
71+
72+
el = $('<div></div>').dialog({ disabled: true });
73+
el.dialog('enable');
74+
equals(el.dialog('option', 'disabled'), false, 'enable method sets disabled option to false');
75+
ok(!el.parents('.ui-dialog').hasClass('ui-dialog-disabled'), 'enable method removes ui-dialog-disabled class from ui-dialog element');
7276
});
7377

7478
test("disable", function() {
7579
var expected = $('<div></div>').dialog(),
7680
actual = expected.dialog('disable');
7781
equals(actual, expected, 'disable is chainable');
78-
ok(false, 'missing test - untested code is broken code');
82+
83+
el = $('<div></div>').dialog({ disabled: false });
84+
el.dialog('disable');
85+
equals(el.dialog('option', 'disabled'), true, 'disable method sets disabled option to true');
86+
ok(el.parents('.ui-dialog').hasClass('ui-dialog-disabled'), 'disable method adds ui-dialog-disabled class to ui-dialog element');
7987
});
8088

8189
test("close", function() {

ui/jquery.ui.dialog.js

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -442,6 +442,11 @@ $.widget("ui.dialog", {
442442
.removeClass(self.options.dialogClass)
443443
.addClass(uiDialogClasses + value);
444444
break;
445+
case "disabled":
446+
(value
447+
? uiDialog.addClass('ui-dialog-disabled')
448+
: uiDialog.removeClass('ui-dialog-disabled'));
449+
break;
445450
case "draggable":
446451
(value
447452
? self._makeDraggable()

0 commit comments

Comments
 (0)