소스 검색

fix: AppLogSheet show=false 时不加载日志

HapeLee 4 달 전
부모
커밋
6623fb7294
1개의 변경된 파일과 8개의 추가작업 그리고 1개의 파일을 삭제
  1. 8 1
      app/src/main/java/io/legado/app/ui/widget/components/log/AppLogSheet.kt

+ 8 - 1
app/src/main/java/io/legado/app/ui/widget/components/log/AppLogSheet.kt

@@ -11,6 +11,7 @@ import androidx.compose.material.icons.Icons
 import androidx.compose.material.icons.filled.DeleteSweep
 import androidx.compose.material3.ExperimentalMaterial3Api
 import androidx.compose.runtime.Composable
+import androidx.compose.runtime.LaunchedEffect
 import androidx.compose.runtime.getValue
 import androidx.compose.runtime.mutableStateOf
 import androidx.compose.runtime.remember
@@ -34,9 +35,15 @@ fun AppLogSheet(
     show: Boolean,
     onDismissRequest: () -> Unit
 ) {
-    var logs by remember(show) { mutableStateOf(loadAllLogs()) }
+    var logs by remember { mutableStateOf(emptyList<LogEntry>()) }
     var showDetail by remember { mutableStateOf<String?>(null) }
 
+    LaunchedEffect(show) {
+        if (show) {
+            logs = loadAllLogs()
+        }
+    }
+
     AppModalBottomSheet(
         show = show,
         onDismissRequest = onDismissRequest,