Merge pull request #2264 from element-hq/renovate/io.nlopez.compose.rules-detekt-0.x

Update dependency io.nlopez.compose.rules:detekt to v0.3.10
This commit is contained in:
Benoit Marty 2024-01-23 18:55:02 +01:00 committed by GitHub
commit a45cd0b360
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
18 changed files with 83 additions and 50 deletions

View file

@ -18,6 +18,8 @@ package io.element.android.libraries.designsystem.components.async
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.getValue
import androidx.compose.runtime.rememberUpdatedState
import androidx.compose.ui.tooling.preview.PreviewParameter
import io.element.android.libraries.architecture.AsyncAction
import io.element.android.libraries.designsystem.components.ProgressDialog
@ -67,8 +69,9 @@ fun <T> AsyncActionView(
}
}
is AsyncAction.Success -> {
val latestOnSuccess by rememberUpdatedState(onSuccess)
LaunchedEffect(async) {
onSuccess(async.data)
latestOnSuccess(async.data)
}
}
}

View file

@ -18,6 +18,8 @@ package io.element.android.libraries.textcomposer
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.getValue
import androidx.compose.runtime.rememberUpdatedState
import androidx.compose.ui.platform.LocalView
import androidx.compose.ui.viewinterop.AndroidView
import io.element.android.libraries.androidutils.ui.awaitWindowFocus
@ -40,8 +42,10 @@ internal fun <T> SoftKeyboardEffect(
predicate: (T) -> Boolean,
) {
val view = LocalView.current
val latestOnRequestFocus by rememberUpdatedState(onRequestFocus)
val latestPredicate by rememberUpdatedState(predicate)
LaunchedEffect(key) {
if (predicate(key)) {
if (latestPredicate(key)) {
// Await window focus in case returning from a dialog
view.awaitWindowFocus()
@ -49,7 +53,7 @@ internal fun <T> SoftKeyboardEffect(
view.showKeyboard(andRequestFocus = true)
// Refocus to the correct view
onRequestFocus()
latestOnRequestFocus()
}
}
}

View file

@ -42,6 +42,7 @@ import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.derivedStateOf
import androidx.compose.runtime.getValue
import androidx.compose.runtime.remember
import androidx.compose.runtime.rememberUpdatedState
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
@ -274,12 +275,13 @@ fun TextComposer(
}
val menuAction = state.menuAction
val latestOnSuggestionReceived by rememberUpdatedState(onSuggestionReceived)
LaunchedEffect(menuAction) {
if (menuAction is MenuAction.Suggestion) {
val suggestion = Suggestion(menuAction.suggestionPattern)
onSuggestionReceived(suggestion)
latestOnSuggestionReceived(suggestion)
} else {
onSuggestionReceived(null)
latestOnSuggestionReceived(null)
}
}
}