r2604 - Merged r2430 to 1.7.2 (fixes #4391 - ui-state-hover, ui-state-active and disabled sliders)

r2604 - Merged r2430 to 1.7.2 (fixes #4391 - ui-state-hover, ui-state-active and disabled sliders)


Author: rdworth
Date: Tue May 26 03:51:58 2009
New Revision: 2604
Modified:
branches/1.7.2/ (props changed)
branches/1.7.2/tests/visual/accordion/ (props changed)
branches/1.7.2/tests/visual/datepicker/ (props changed)
branches/1.7.2/tests/visual/resizable/ (props changed)
branches/1.7.2/tests/visual/selectable/ (props changed)
branches/1.7.2/tests/visual/slider/ (props changed)
branches/1.7.2/ui/i18n/ui.datepicker-ro.js (props changed)
branches/1.7.2/ui/i18n/ui.datepicker-sq.js (props changed)
branches/1.7.2/ui/i18n/ui.datepicker-uk.js (props changed)
branches/1.7.2/ui/ui.accordion.js (props changed)
branches/1.7.2/ui/ui.datepicker.js (props changed)
branches/1.7.2/ui/ui.droppable.js (props changed)
branches/1.7.2/ui/ui.resizable.js (props changed)
branches/1.7.2/ui/ui.selectable.js (props changed)
branches/1.7.2/ui/ui.slider.js (contents, props changed)
Log:
Merged r2430 to 1.7.2 (fixes #4391 - ui-state-hover, ui-state-active and
disabled sliders)
Modified: branches/1.7.2/ui/ui.slider.js
==============================================================================
--- branches/1.7.2/ui/ui.slider.js    (original)
+++ branches/1.7.2/ui/ui.slider.js    Tue May 26 03:51:58 2009
@@ -77,10 +77,26 @@
        this.handle = this.handles.eq(0);
        this.handles.add(this.range).filter("a")
-            .click(function(event) { event.preventDefault(); })
-            .hover(function() { $(this).addClass('ui-state-hover'); }, function() {
$(this).removeClass('ui-state-hover'); })
-            .focus(function() {
$(".ui-slider .ui-state-focus").removeClass('ui-state-focus');
$(this).addClass('ui-state-focus'); })
-            .blur(function() { $(this).removeClass('ui-state-focus'); });
+            .click(function(event) {
+                event.preventDefault();
+            })
+            .hover(function() {
+                if (!o.disabled) {
+                    $(this).addClass('ui-state-hover');
+                }
+            }, function() {
+                $(this).removeClass('ui-state-hover');
+            })
+            .focus(function() {
+                if (!o.disabled) {
+                    $(".ui-slider .ui-state-focus").removeClass('ui-state-focus');
$(this).addClass('ui-state-focus');
+                } else {
+                    $(this).blur();
+                }
+            })
+            .blur(function() {
+                $(this).removeClass('ui-state-focus');
+            });
        this.handles.each(function(i) {
            $(this).data("index.ui-slider-handle", i);
@@ -415,6 +431,14 @@
        $.widget.prototype._setData.apply(this, arguments);
        switch (key) {
+            case 'disabled':
+                if (value) {
+                    this.handles.filter(".ui-state-focus").blur();
+                    this.handles.removeClass("ui-state-hover");
+                    this.handles.attr("disabled", "disabled");
+                } else {
+                    this.handles.removeAttr("disabled");
+                }
            case 'orientation':
                this._detectOrientation();