From 9e540ce411fb06ce527e67ae8da577f7f799cf35 Mon Sep 17 00:00:00 2001 From: Syer10 Date: Fri, 28 May 2021 20:24:12 -0400 Subject: [PATCH] Add source close button --- .../kotlin/ca/gosyer/ui/base/components/Toolbar.kt | 5 ++--- .../kotlin/ca/gosyer/ui/sources/SourcesMenu.kt | 14 +++++++++----- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/src/main/kotlin/ca/gosyer/ui/base/components/Toolbar.kt b/src/main/kotlin/ca/gosyer/ui/base/components/Toolbar.kt index 30ebc4af..7fc160c5 100644 --- a/src/main/kotlin/ca/gosyer/ui/base/components/Toolbar.kt +++ b/src/main/kotlin/ca/gosyer/ui/base/components/Toolbar.kt @@ -49,6 +49,7 @@ fun Toolbar( name: String, router: BackStack? = null, closable: Boolean, + onClose: () -> Unit = { router?.pop() }, modifier: Modifier = Modifier, actions: @Composable RowScope.() -> Unit = {}, backgroundColor: Color = MaterialTheme.colors.surface, // CustomColors.current.bars, @@ -95,9 +96,7 @@ fun Toolbar( actions() if (closable) { IconButton( - onClick = { - router?.pop() - } + onClick = onClose ) { Icon(FontAwesomeIcons.Regular.WindowClose, "close", Modifier.size(52.dp)) } diff --git a/src/main/kotlin/ca/gosyer/ui/sources/SourcesMenu.kt b/src/main/kotlin/ca/gosyer/ui/sources/SourcesMenu.kt index a85f9c53..6e30df7c 100644 --- a/src/main/kotlin/ca/gosyer/ui/sources/SourcesMenu.kt +++ b/src/main/kotlin/ca/gosyer/ui/sources/SourcesMenu.kt @@ -9,8 +9,7 @@ package ca.gosyer.ui.sources import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.fillMaxHeight -import androidx.compose.foundation.layout.requiredHeight -import androidx.compose.foundation.layout.requiredWidth +import androidx.compose.foundation.layout.requiredSize import androidx.compose.foundation.layout.width import androidx.compose.foundation.lazy.LazyColumn import androidx.compose.foundation.lazy.items @@ -64,7 +63,13 @@ fun SourcesMenu(bundle: Bundle, onMangaClick: (Long) -> Unit) { Surface { Column { - Toolbar(selectedSourceTab?.name ?: "Sources", closable = false) + Toolbar( + selectedSourceTab?.name ?: "Sources", + closable = selectedSourceTab != null, + onClose = { + selectedSourceTab?.let { vm.closeTab(it) } + } + ) Row { Surface(elevation = 1.dp) { LazyColumn(Modifier.fillMaxHeight().width(64.dp)) { @@ -80,8 +85,7 @@ fun SourcesMenu(bundle: Bundle, onMangaClick: (Long) -> Unit) { } } ) - .requiredHeight(64.dp) - .requiredWidth(64.dp) + .requiredSize(64.dp) if (source != null) { KtorImage(source.iconUrl(serverUrl), imageModifier = modifier)