@@ -12,12 +12,10 @@ import androidx.compose.foundation.layout.PaddingValues
1212import androidx.compose.foundation.layout.WindowInsets
1313import androidx.compose.foundation.layout.WindowInsetsSides
1414import androidx.compose.foundation.layout.fillMaxSize
15- import androidx.compose.foundation.layout.fillMaxWidth
1615import androidx.compose.foundation.layout.only
1716import androidx.compose.foundation.layout.padding
1817import androidx.compose.foundation.layout.size
1918import androidx.compose.foundation.layout.windowInsetsPadding
20- import androidx.compose.foundation.lazy.items
2119import androidx.compose.runtime.Composable
2220import androidx.compose.runtime.LaunchedEffect
2321import androidx.compose.runtime.collectAsState
@@ -26,7 +24,6 @@ import androidx.compose.runtime.mutableStateListOf
2624import androidx.compose.runtime.mutableStateOf
2725import androidx.compose.runtime.remember
2826import androidx.compose.runtime.setValue
29- import androidx.compose.runtime.snapshotFlow
3027import androidx.compose.ui.Alignment
3128import androidx.compose.ui.Modifier
3229import androidx.compose.ui.graphics.Color
@@ -53,6 +50,7 @@ import com.jankinwu.fntv.client.ui.component.common.ComponentItem
5350import com.jankinwu.fntv.client.ui.component.common.ComponentNavigator
5451import com.jankinwu.fntv.client.ui.component.common.HasNewVersionTag
5552import com.jankinwu.fntv.client.ui.component.common.rememberComponentNavigator
53+ import com.jankinwu.fntv.client.ui.providable.LocalRefreshState
5654import com.jankinwu.fntv.client.ui.providable.LocalStore
5755import com.jankinwu.fntv.client.ui.screen.HomePageScreen
5856import com.jankinwu.fntv.client.ui.screen.MediaDbScreen
@@ -64,27 +62,19 @@ import io.github.composefluent.ExperimentalFluentApi
6462import io.github.composefluent.FluentTheme
6563import io.github.composefluent.animation.FluentDuration
6664import io.github.composefluent.animation.FluentEasing
67- import io.github.composefluent.component.AutoSuggestBoxDefaults
68- import io.github.composefluent.component.AutoSuggestionBox
6965import io.github.composefluent.component.Icon
70- import io.github.composefluent.component.ListItem
7166import io.github.composefluent.component.MenuItem
7267import io.github.composefluent.component.NavigationDefaults
7368import io.github.composefluent.component.NavigationDisplayMode
7469import io.github.composefluent.component.NavigationMenuItemScope
7570import io.github.composefluent.component.NavigationView
7671import io.github.composefluent.component.SideNavItem
7772import io.github.composefluent.component.Text
78- import io.github.composefluent.component.TextBoxButton
79- import io.github.composefluent.component.TextBoxButtonDefaults
80- import io.github.composefluent.component.TextField
8173import io.github.composefluent.component.rememberNavigationState
8274import io.github.composefluent.icons.Icons
8375import io.github.composefluent.icons.regular.ArrowLeft
8476import io.github.composefluent.icons.regular.Settings
8577import kotlinx.coroutines.FlowPreview
86- import kotlinx.coroutines.flow.debounce
87- import kotlinx.coroutines.flow.map
8878import okhttp3.Headers
8979import okhttp3.Interceptor
9080import okhttp3.Response
@@ -581,7 +571,14 @@ fun MediaLibraryNavigationComponent() {
581571
582572 val mediaDbListViewModel: MediaDbListViewModel = koinViewModel<MediaDbListViewModel >()
583573 val mediaUiState by mediaDbListViewModel.uiState.collectAsState()
584-
574+ val refreshState = LocalRefreshState .current
575+ // 监听刷新状态变化
576+ LaunchedEffect (refreshState.refreshKey) {
577+ // 当刷新状态变化时执行刷新逻辑
578+ if (refreshState.refreshKey.isNotEmpty()) {
579+ mediaDbListViewModel.loadData()
580+ }
581+ }
585582 // 动态生成组件列表
586583 LaunchedEffect (mediaUiState) {
587584 val categoryItems = listOf (
0 commit comments