Skip to content

Commit 66c6d6b

Browse files
committed
Allow disabling drag and drop runtime
1 parent a8f6e3a commit 66c6d6b

File tree

1 file changed

+7
-0
lines changed

1 file changed

+7
-0
lines changed

compose-recyclerview/src/main/java/com/example/compose_recyclerview/ComposeRecyclerView.kt

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
package com.example.compose_recyclerview
22

3+
import android.util.Log
34
import androidx.compose.runtime.Composable
45
import androidx.compose.runtime.DisposableEffect
6+
import androidx.compose.runtime.LaunchedEffect
57
import androidx.compose.runtime.getValue
68
import androidx.compose.runtime.mutableStateOf
79
import androidx.compose.runtime.remember
@@ -98,6 +100,11 @@ fun <T> ComposeRecyclerView(
98100
ItemTouchHelperConfig().apply { itemTouchHelperConfig?.invoke(this) }
99101
}
100102

103+
// To disable drag and drop when itemTypeBuilder is null
104+
LaunchedEffect(itemTypeBuilder) {
105+
config.isLongPressDragEnabled = itemTypeBuilder != null
106+
}
107+
101108
val itemTouchHelper = remember {
102109
ItemTouchHelper(object : ItemTouchHelper.SimpleCallback(
103110
config.dragDirs ?: (UP or DOWN or START or END), config.swipeDirs ?: (LEFT or RIGHT)

0 commit comments

Comments
 (0)