The way I'm using this library, I have a LazyVerticalGrid with 3 columns. If my list has 7 items, for example, they end up organized as so:
If I drag items 5 or 6 straight down and release with the intent of moving them to the end of the list, they snap back to their original position because their bounding box never overlapped with the center of the bounding box for item 7. Even for item 4, it's not that difficult, if I casually swipe diagonally, to squeeze it between 5 and 7 without triggering the shouldItemsMove condition, whereas I think the intuitive behavior is to have it move to the end.
It's late where I am, but it doesn't look like it would be too hard to add a check to
|
internal fun onDragStop() { |
to account for this behavior. I can think about this more tomorrow, but let me know what you think.
The way I'm using this library, I have a
LazyVerticalGridwith 3 columns. If my list has 7 items, for example, they end up organized as so:If I drag items 5 or 6 straight down and release with the intent of moving them to the end of the list, they snap back to their original position because their bounding box never overlapped with the center of the bounding box for item 7. Even for item 4, it's not that difficult, if I casually swipe diagonally, to squeeze it between 5 and 7 without triggering the
shouldItemsMovecondition, whereas I think the intuitive behavior is to have it move to the end.It's late where I am, but it doesn't look like it would be too hard to add a check to
Reorderable/reorderable/src/commonMain/kotlin/sh/calvin/reorderable/ReorderableLazyCollection.kt
Line 391 in 66de575
to account for this behavior. I can think about this more tomorrow, but let me know what you think.