538a705def
- Swap detection: Changed from midpoint check to straddle-target-center detection * Old: Checks if midpoint of dragged item lies within target * New: Checks if dragged item spans the midpoint of target * Prevents oscillation when items have different sizes - Adjacency filter: Only adjacent items (index ± 1) as swap candidates * Prevents item jumps during fast drag * Reduces recalculation of visibleItemsInfo - Race-condition fix for scroll + move * draggingItemIndex update moved after onMove() in coroutine block * Prevents inconsistent state between index update and layout change Affected files: - DragDropListState.kt: onDrag() method (~10 lines changed)