From 2e05f3bcda3019a8483e298d67c41812475aa3f1 Mon Sep 17 00:00:00 2001 From: Jyoti Deka Date: Tue, 18 Jun 2013 01:02:37 -0400 Subject: [PATCH 1/6] jquery.ui.slider - Ticket #9376 --- tests/visual/slider/slider.html | 44 +++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 tests/visual/slider/slider.html diff --git a/tests/visual/slider/slider.html b/tests/visual/slider/slider.html new file mode 100644 index 00000000000..b2710811c89 --- /dev/null +++ b/tests/visual/slider/slider.html @@ -0,0 +1,44 @@ + + + + + Slider Test + + + + + + + + + + + + + +
+

+ + +

+ +
+
+ + + + \ No newline at end of file From f6efec156ca716e543b377572737ee990a09ce28 Mon Sep 17 00:00:00 2001 From: Jyoti Deka Date: Tue, 18 Jun 2013 01:07:48 -0400 Subject: [PATCH 2/6] jquery.ui.slider - Ticket #9376 --- ui/jquery.ui.slider.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/ui/jquery.ui.slider.js b/ui/jquery.ui.slider.js index e4f1cf7c941..1558f7f8826 100644 --- a/ui/jquery.ui.slider.js +++ b/ui/jquery.ui.slider.js @@ -525,6 +525,10 @@ $.widget( "ui.slider", $.ui.mouse, { if ( Math.abs(valModStep) * 2 >= step ) { alignValue += ( valModStep > 0 ) ? step : ( -step ); } + + if (alignValue > this._valueMax()){ + return this._valueMax(); + } // Since JavaScript has problems with large floats, round // the final value to 5 digits after the decimal point (see #4124) From d9bd0b48f6e9c342fd3615088506cfb8cfd55dcb Mon Sep 17 00:00:00 2001 From: Jyoti Deka Date: Wed, 19 Jun 2013 00:06:02 -0400 Subject: [PATCH 3/6] Revert "jquery.ui.slider - Ticket #9376" This reverts commit 2e05f3bcda3019a8483e298d67c41812475aa3f1. --- tests/visual/slider/slider.html | 44 --------------------------------- 1 file changed, 44 deletions(-) delete mode 100644 tests/visual/slider/slider.html diff --git a/tests/visual/slider/slider.html b/tests/visual/slider/slider.html deleted file mode 100644 index b2710811c89..00000000000 --- a/tests/visual/slider/slider.html +++ /dev/null @@ -1,44 +0,0 @@ - - - - - Slider Test - - - - - - - - - - - - - -
-

- - -

- -
-
- - - - \ No newline at end of file From dadd81ef9cf29c80221233085c1b26b9c6645647 Mon Sep 17 00:00:00 2001 From: Jyoti Deka Date: Wed, 19 Jun 2013 00:09:43 -0400 Subject: [PATCH 4/6] Revert "jquery.ui.slider - Ticket #9376" This reverts commit f6efec156ca716e543b377572737ee990a09ce28. --- ui/jquery.ui.slider.js | 4 ---- 1 file changed, 4 deletions(-) diff --git a/ui/jquery.ui.slider.js b/ui/jquery.ui.slider.js index 1558f7f8826..e4f1cf7c941 100644 --- a/ui/jquery.ui.slider.js +++ b/ui/jquery.ui.slider.js @@ -525,10 +525,6 @@ $.widget( "ui.slider", $.ui.mouse, { if ( Math.abs(valModStep) * 2 >= step ) { alignValue += ( valModStep > 0 ) ? step : ( -step ); } - - if (alignValue > this._valueMax()){ - return this._valueMax(); - } // Since JavaScript has problems with large floats, round // the final value to 5 digits after the decimal point (see #4124) From 3bfd06c8dac7cc3c1c2717900ed89acec0566f6b Mon Sep 17 00:00:00 2001 From: Jyoti Deka Date: Wed, 19 Jun 2013 01:11:33 -0400 Subject: [PATCH 5/6] ui.slider: modified , so that slider value can not be set more than max. Fixed #9376 - ui.slider: On mouse move slider sets value more than max --- tests/unit/slider/slider_options.js | 14 +++++++++++++- ui/jquery.ui.slider.js | 3 +++ 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/tests/unit/slider/slider_options.js b/tests/unit/slider/slider_options.js index 5cfb5351af0..7b1ef1e82bb 100644 --- a/tests/unit/slider/slider_options.js +++ b/tests/unit/slider/slider_options.js @@ -40,7 +40,7 @@ test( "disabled", function(){ }); test( "max", function() { - expect( 2 ); + expect( 4 ); element = $( "
" ); options = { @@ -56,6 +56,18 @@ test( "max", function() { ok(element.slider( "value" ) === options.max, "value method is contained by max" ); element.slider( "destroy" ); + /*Ticket #9376 - Mouse position can give value in float , set it close to max*/ + options = { + max: 99, + min: 1, + orientation: "horizontal", + step: 3, + value: 98.67854 + }; + + element.slider( options ); + ok(element.slider( "option", "value" ) === options.value, "value option is not contained by max" ); + ok(element.slider( "value" ) === options.max, "value method is contained by max" ); }); test( "min", function() { diff --git a/ui/jquery.ui.slider.js b/ui/jquery.ui.slider.js index e4f1cf7c941..12be55841cc 100644 --- a/ui/jquery.ui.slider.js +++ b/ui/jquery.ui.slider.js @@ -526,6 +526,9 @@ $.widget( "ui.slider", $.ui.mouse, { alignValue += ( valModStep > 0 ) ? step : ( -step ); } + if (alignValue > this._valueMax()){ + return this._valueMax(); + } // Since JavaScript has problems with large floats, round // the final value to 5 digits after the decimal point (see #4124) return parseFloat( alignValue.toFixed(5) ); From 47842a2d261fae1578e14a509beb80067e6a891a Mon Sep 17 00:00:00 2001 From: Jyoti Deka Date: Wed, 19 Jun 2013 01:24:13 -0400 Subject: [PATCH 6/6] ui.slider: modified , so that slider value can not be set more than max. Fixed #9376 - ui.slider: On mouse move slider sets value more than max (Removed white spaces and removed one testcase) --- tests/unit/slider/slider_options.js | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/tests/unit/slider/slider_options.js b/tests/unit/slider/slider_options.js index 7b1ef1e82bb..80827d16a6a 100644 --- a/tests/unit/slider/slider_options.js +++ b/tests/unit/slider/slider_options.js @@ -40,7 +40,7 @@ test( "disabled", function(){ }); test( "max", function() { - expect( 4 ); + expect( 3 ); element = $( "
" ); options = { @@ -56,7 +56,6 @@ test( "max", function() { ok(element.slider( "value" ) === options.max, "value method is contained by max" ); element.slider( "destroy" ); - /*Ticket #9376 - Mouse position can give value in float , set it close to max*/ options = { max: 99, min: 1, @@ -66,7 +65,6 @@ test( "max", function() { }; element.slider( options ); - ok(element.slider( "option", "value" ) === options.value, "value option is not contained by max" ); ok(element.slider( "value" ) === options.max, "value method is contained by max" ); });