File tree Expand file tree Collapse file tree
core/designsystem/src/main/java/com/threegap/bitnagil/designsystem/modifier Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -2,7 +2,9 @@ package com.threegap.bitnagil.designsystem.modifier
22
33import android.os.SystemClock
44import androidx.compose.runtime.Composable
5+ import androidx.compose.runtime.getValue
56import androidx.compose.runtime.remember
7+ import androidx.compose.runtime.rememberUpdatedState
68
79class ClickThrottler (private val throttleTimeMs : Long = 500L ) {
810 private var lastClickTime: Long = 0L
@@ -21,9 +23,10 @@ fun throttled(
2123 throttleTimeMs : Long = 500L,
2224 onClick : () -> Unit ,
2325): () -> Unit {
24- val throttler = remember { ClickThrottler (throttleTimeMs) }
26+ val currentOnClick by rememberUpdatedState(onClick)
27+ val throttler = remember(throttleTimeMs) { ClickThrottler (throttleTimeMs) }
2528
26- return remember(onClick ) {
27- { throttler.processEvent(onClick) }
29+ return remember(throttler ) {
30+ { throttler.processEvent { currentOnClick() } }
2831 }
2932}
You can’t perform that action at this time.
0 commit comments