From 2692f0eb0dd33079e95af90b291bf7286c28dd18 Mon Sep 17 00:00:00 2001 From: Kyle Isom Date: Tue, 24 Mar 2026 17:22:59 -0700 Subject: [PATCH] Fix empty page list: use mutableStateListOf for Compose observability The reorderable pages list was a plain mutableListOf which Compose doesn't observe. Changed to mutableStateListOf so the grid recomposes when pages are loaded. Co-Authored-By: Claude Opus 4.6 (1M context) --- .../net/metacircular/engpad/ui/pages/PageListScreen.kt | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/app/src/main/kotlin/net/metacircular/engpad/ui/pages/PageListScreen.kt b/app/src/main/kotlin/net/metacircular/engpad/ui/pages/PageListScreen.kt index 48a5759..63c72de 100644 --- a/app/src/main/kotlin/net/metacircular/engpad/ui/pages/PageListScreen.kt +++ b/app/src/main/kotlin/net/metacircular/engpad/ui/pages/PageListScreen.kt @@ -32,10 +32,10 @@ import androidx.compose.runtime.LaunchedEffect import androidx.compose.runtime.collectAsState import androidx.compose.runtime.getValue import androidx.compose.runtime.mutableStateOf +import androidx.compose.runtime.mutableStateListOf import androidx.compose.runtime.remember import androidx.compose.runtime.rememberCoroutineScope import androidx.compose.runtime.setValue -import androidx.compose.runtime.toMutableStateList import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.drawscope.drawIntoCanvas @@ -78,8 +78,8 @@ fun PageListScreen( var pageToDelete by remember { mutableStateOf(null) } - // Maintain a local mutable list for drag reorder - val reorderablePages = remember { mutableListOf() } + // Maintain an observable mutable list for drag reorder + val reorderablePages = remember { mutableStateListOf() } LaunchedEffect(pages) { reorderablePages.clear() reorderablePages.addAll(pages)