Fix metadata not properly updating

This commit is contained in:
Jobobby04 2022-06-26 14:44:56 -04:00
parent 0862c935a1
commit 48a62f7c4a

View File

@ -38,7 +38,9 @@ import androidx.compose.material3.Text
import androidx.compose.material3.rememberTopAppBarScrollState import androidx.compose.material3.rememberTopAppBarScrollState
import androidx.compose.material3.windowsizeclass.WindowWidthSizeClass import androidx.compose.material3.windowsizeclass.WindowWidthSizeClass
import androidx.compose.runtime.Composable import androidx.compose.runtime.Composable
import androidx.compose.runtime.ReadOnlyComposable
import androidx.compose.runtime.SideEffect import androidx.compose.runtime.SideEffect
import androidx.compose.runtime.Stable
import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember import androidx.compose.runtime.remember
import androidx.compose.runtime.toMutableStateList import androidx.compose.runtime.toMutableStateList
@ -335,14 +337,12 @@ private fun MangaScreenSmallImpl(
doGlobalSearch = onSearch, doGlobalSearch = onSearch,
showMergeWithAnother = state.showMergeWithAnother, showMergeWithAnother = state.showMergeWithAnother,
onMergeWithAnotherClicked = onMergeWithAnotherClicked, onMergeWithAnotherClicked = onMergeWithAnotherClicked,
mangaMetadataHeader = remember { mangaMetadataHeader = getDescriptionComposable(
getDescriptionComposable( source = remember { state.source.getMainSource<MetadataSource<*, *>>() },
source = state.source.getMainSource<MetadataSource<*, *>>(), state = state,
state = state, openMetadataViewer = onMetadataViewerClicked,
openMetadataViewer = onMetadataViewerClicked, search = { onSearch(it, false) },
search = { onSearch(it, false) }, ),
)
},
searchMetadataChips = remember { SearchMetadataChips(state.meta, state.source, state.manga.genre) }, searchMetadataChips = remember { SearchMetadataChips(state.meta, state.source, state.manga.genre) },
scrollBehavior = scrollBehavior, scrollBehavior = scrollBehavior,
actionModeCounter = selected.size, actionModeCounter = selected.size,
@ -702,14 +702,12 @@ fun MangaScreenLargeImpl(
showMergeWithAnother = state.showMergeWithAnother, showMergeWithAnother = state.showMergeWithAnother,
onRecommendClicked = onRecommendClicked, onRecommendClicked = onRecommendClicked,
onMergeWithAnotherClicked = onMergeWithAnotherClicked, onMergeWithAnotherClicked = onMergeWithAnotherClicked,
mangaMetadataHeader = remember { mangaMetadataHeader = getDescriptionComposable(
getDescriptionComposable( source = remember { state.source.getMainSource<MetadataSource<*, *>>() },
source = state.source.getMainSource<MetadataSource<*, *>>(), state = state,
state = state, openMetadataViewer = onMetadataViewerClicked,
openMetadataViewer = onMetadataViewerClicked, search = { onSearch(it, false) },
search = { onSearch(it, false) }, ),
)
},
searchMetadataChips = remember { SearchMetadataChips(state.meta, state.source, state.manga.genre) }, searchMetadataChips = remember { SearchMetadataChips(state.meta, state.source, state.manga.genre) },
) )
@ -874,6 +872,9 @@ fun onChapterItemClick(
} }
} }
@Composable
@ReadOnlyComposable
@Stable
private fun getDescriptionComposable( private fun getDescriptionComposable(
source: MetadataSource<*, *>?, source: MetadataSource<*, *>?,
state: MangaScreenState.Success, state: MangaScreenState.Success,