- fix #149 #1094 #1605 #1534 re-write of the collision code - fixing 6 years old most requested request
- you can now swap items of the same size (vertical/horizontal) when grid is full, and is the default in
float:false
(top gravity) as it feels more natural. Could add Alt key for swap vs push behavior later. - Dragging up and down now behave the same (used to require push WAY down past to swap/append). Also much more efficient collision code.
- handle mid point of dragged over items (>50%) rather than just a new row/column and check for the most covered item when multiple collide.
- we now remove item when cursor leaves (
acceptWidgets
case usingdropout
event) or shape is outside (re-using same method) and re-insert on cursor enter (since we only getdropover
event). Should not be possible to have 2 placeholders which confuses the grids. - major re-write and cleanup of the drag in/out. Vars have been renamed and fully documented as I couldn't understand the legacy buggy code.
- removed any over trash delay feedback as I don't see the point and could introduce race conditions.
- fix 1617 FireFox DOM order issue. Thanks @marcel-necker
- fix changing column #
column(n)
now resizescellHeight:'auto'
to keep square - add 1616
drag | resize
events while dragging. Thanks @MrCorba - add 1637
GridStack.setupDragIn()
so user can update external draggable after the grid has been created