Skip to content

Instantly share code, notes, and snippets.

@Suchiq
Created July 26, 2025 14:06
Show Gist options
  • Select an option

  • Save Suchiq/6667cc61e32e0066ee7b386ce2b4165b to your computer and use it in GitHub Desktop.

Select an option

Save Suchiq/6667cc61e32e0066ee7b386ce2b4165b to your computer and use it in GitHub Desktop.
@Composable
private fun TwoPane(
sampleItems: List<Item>,
selectedItem: Item?
) {
val selectedItemState = remember { mutableStateOf(selectedItem) }
val currentItem = selectedItemState.value
Row(modifier = Modifier.fillMaxSize()) {
ItemListScreen(
items = sampleItems,
onItemClick = { item -> selectedItemState.value = item },
modifier = Modifier.weight(1f)
)
if (currentItem != null) {
ItemDetailScreen(
item = currentItem,
modifier = Modifier.weight(2f)
)
} else {
// Placeholder for detail area when no item is selected in two-pane
Box(
modifier = Modifier
.weight(2f)
.padding(16.dp),
contentAlignment = Alignment.Center
) {
Text(
"Select an item to view its details.",
style = MaterialTheme.typography.titleMedium
)
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment