Update: Dispose of composable when sheet fragment is destroyed

This commit is contained in:
machiav3lli 2022-10-08 01:24:01 +02:00
parent 416399e523
commit 5d91289c74
2 changed files with 4 additions and 0 deletions

View File

@ -39,6 +39,7 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Color
import androidx.compose.ui.input.nestedscroll.nestedScroll import androidx.compose.ui.input.nestedscroll.nestedScroll
import androidx.compose.ui.platform.ComposeView import androidx.compose.ui.platform.ComposeView
import androidx.compose.ui.platform.ViewCompositionStrategy
import androidx.compose.ui.platform.rememberNestedScrollInteropConnection import androidx.compose.ui.platform.rememberNestedScrollInteropConnection
import androidx.compose.ui.res.stringResource import androidx.compose.ui.res.stringResource
import androidx.compose.ui.unit.dp import androidx.compose.ui.unit.dp
@ -135,6 +136,7 @@ class AppSheetX() : FullscreenBottomSheetDialogFragment(), Callbacks {
setupAdapters() setupAdapters()
return ComposeView(requireContext()).apply { return ComposeView(requireContext()).apply {
setContent { setContent {
setViewCompositionStrategy(ViewCompositionStrategy.DisposeOnViewTreeLifecycleDestroyed)
AppTheme( AppTheme(
darkTheme = when (Preferences[Preferences.Key.Theme]) { darkTheme = when (Preferences[Preferences.Key.Theme]) {
is Preferences.Theme.System -> isSystemInDarkTheme() is Preferences.Theme.System -> isSystemInDarkTheme()

View File

@ -30,6 +30,7 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color import androidx.compose.ui.graphics.Color
import androidx.compose.ui.input.nestedscroll.nestedScroll import androidx.compose.ui.input.nestedscroll.nestedScroll
import androidx.compose.ui.platform.ComposeView import androidx.compose.ui.platform.ComposeView
import androidx.compose.ui.platform.ViewCompositionStrategy
import androidx.compose.ui.platform.rememberNestedScrollInteropConnection import androidx.compose.ui.platform.rememberNestedScrollInteropConnection
import androidx.compose.ui.res.stringResource import androidx.compose.ui.res.stringResource
import androidx.compose.ui.text.style.TextAlign import androidx.compose.ui.text.style.TextAlign
@ -71,6 +72,7 @@ class SortFilterSheet() : FullscreenBottomSheetDialogFragment() {
): View { ): View {
super.onCreate(savedInstanceState) super.onCreate(savedInstanceState)
return ComposeView(requireContext()).apply { return ComposeView(requireContext()).apply {
setViewCompositionStrategy(ViewCompositionStrategy.DisposeOnViewTreeLifecycleDestroyed)
setContent { setContent {
AppTheme( AppTheme(
darkTheme = when (Preferences[Preferences.Key.Theme]) { darkTheme = when (Preferences[Preferences.Key.Theme]) {