Coverage Summary for Class: SafeClickListener (vit.khudenko.android.safe_click)
Class |
Method, %
|
Line, %
|
SafeClickListener |
100%
(2/2)
|
100%
(3/3)
|
SafeClickListener$Companion |
Total |
100%
(2/2)
|
100%
(3/3)
|
1 package vit.khudenko.android.safe_click
2
3 import android.view.View
4
5 /**
6 * @param action action to be invoked on a click event
7 * @param debounceTimeoutMillis optional debounce timeout in milliseconds. If omitted, then 1 second is used.
8 *
9 * @throws IllegalArgumentException if [debounceTimeoutMillis] parameter is negative
10 */
11 class SafeClickListener(
12 private val action: (view: View) -> Unit,
13 debounceTimeoutMillis: Long = DEFAULT_DEBOUNCE_TIMEOUT_MS,
14 ) : DebouncingClickListener(debounceTimeoutMillis) {
15
16 companion object {
17 const val DEFAULT_DEBOUNCE_TIMEOUT_MS = 1000L // 1 sec by default
18 }
19
20 override fun onClickAction(v: View) = action.invoke(v)
21
22 }