Permalink
Browse files

Interactions: Fixed an off-by-one error in isOverAxis.

  • Loading branch information...
hansede authored and mikesherov committed Jan 23, 2013
1 parent 2eb89f0 commit 433ef9d433e9baa464cd0b313b82efa6f1d65556
Showing with 32 additions and 3 deletions.
  1. +30 −1 tests/unit/droppable/droppable_methods.js
  2. +1 −1 ui/jquery.ui.droppable.js
  3. +1 −1 ui/jquery.ui.sortable.js
@@ -88,4 +88,33 @@ test( "disable", function() {
equal( actual, expected, "disable is chainable" );
});
})(jQuery);
test( "intersect", function() {
expect( 8 );
var actual, data,
draggable = $( "<div />" ).appendTo( "#qunit-fixture" ).css({ width: 10, height: 10, position: "absolute" }).draggable(),
droppable = $( "<div />" ).appendTo( "#qunit-fixture" ).css({ width: 10, height: 10, position: "absolute", top: 5, left: 5 }).droppable(),
dataset = [
[ -1, -1, false, "too far up and left" ],
[ -1, 0, false, "too far left" ],
[ 0, -1, false, "too far up" ],
[ 0, 0, true, "top left corner" ],
[ 9, 9, true, "bottom right corner" ],
[ 10, 9, false, "too far right" ],
[ 9, 10, false, "too far down" ],
[ 10, 10, false, "too far down and right" ]
],
x = 0;
for ( ; x < dataset.length; x++ ) {
data = dataset[ x ];
$( draggable ).simulate( "drag", {
dx: ( data[ 0 ] - $( draggable ).position().left ),
dy: ( data[ 1 ] - $( draggable ).position().top )
});
actual = $.ui.intersect( $( draggable ).draggable( "instance" ), $( droppable ).droppable( "instance" ), "pointer" );
equal( actual, data[ 2 ], data[ 3 ] );
}
});
})( jQuery );
@@ -17,7 +17,7 @@
(function( $, undefined ) {
function isOverAxis( x, reference, size ) {
return ( x > reference ) && ( x < ( reference + size ) );
return ( x >= reference ) && ( x < ( reference + size ) );
}
$.widget("ui.droppable", {
View
@@ -16,7 +16,7 @@
(function( $, undefined ) {
function isOverAxis( x, reference, size ) {
return ( x > reference ) && ( x < ( reference + size ) );
return ( x >= reference ) && ( x < ( reference + size ) );
}
function isFloating(item) {

0 comments on commit 433ef9d

Please sign in to comment.