Skip to content

Commit 37f66b9

Browse files
committed
add donate button to tree details
1 parent 9dfba1d commit 37f66b9

2 files changed

Lines changed: 48 additions & 30 deletions

File tree

composeApp/src/commonMain/kotlin/neth/iecal/trease/ui/bottomsheet/SelectTreeBottomSheet.kt

Lines changed: 16 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,9 +15,12 @@ import androidx.compose.ui.ExperimentalComposeUiApi
1515
import androidx.compose.ui.Modifier
1616
import androidx.compose.ui.draw.alpha
1717
import androidx.compose.ui.draw.clip
18+
import androidx.compose.ui.graphics.Outline
1819
import androidx.compose.ui.hapticfeedback.HapticFeedbackType
1920
import androidx.compose.ui.layout.ContentScale
2021
import androidx.compose.ui.platform.LocalHapticFeedback
22+
import androidx.compose.ui.platform.LocalUriHandler
23+
import androidx.compose.ui.platform.UriHandler
2124
import androidx.compose.ui.text.font.FontWeight
2225
import androidx.compose.ui.text.style.TextAlign
2326
import androidx.compose.ui.text.style.TextOverflow
@@ -50,7 +53,6 @@ fun GrowTreeBottomSheet(
5053
val coroutine = rememberCoroutineScope()
5154
var showBrokeDialog by remember { mutableStateOf(false) }
5255

53-
5456
LaunchedEffect(Unit) {
5557
val treePurchaseManager = TreePurchaseManager()
5658
purchasedTrees = treePurchaseManager.loadAllPurchasedTrees()
@@ -61,7 +63,7 @@ fun GrowTreeBottomSheet(
6163
}
6264

6365
try {
64-
val trees = TreeRepository.fetchTrees()
66+
val trees = TreeRepository.fetchTrees().filter { it.id != "weathered" }
6567
uiState = TreeUiState.Success(trees)
6668
cacheManager.saveFile("tree.json", Json.encodeToString(trees))
6769
} catch (e: Exception) {
@@ -237,6 +239,8 @@ private fun TreeDetailView(
237239
isPurchased: Boolean,
238240
onPurchased: ()->Unit,
239241
) {
242+
val uriHandler = LocalUriHandler.current
243+
240244
Column(
241245
modifier = Modifier
242246
.fillMaxWidth()
@@ -295,7 +299,16 @@ private fun TreeDetailView(
295299
}
296300

297301
Spacer(Modifier.height(32.dp))
298-
302+
OutlinedButton(
303+
onClick = {
304+
uriHandler.openUri(tree.donate)
305+
},
306+
modifier = Modifier.fillMaxWidth().height(50.dp),
307+
shape = RoundedCornerShape(12.dp)
308+
) {
309+
Text("Donate tree creator")
310+
}
311+
Spacer(Modifier.height(16.dp))
299312
if(isPurchased) {
300313
Button(
301314
onClick = onSelect,

composeApp/src/commonMain/kotlin/neth/iecal/trease/ui/screens/HomeScreen.kt

Lines changed: 32 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -87,36 +87,41 @@ fun HomeScreen(navController: NavHostController) {
8787
}
8888

8989
Box(Modifier.fillMaxSize()) {
90-
TopAppBar(
91-
modifier = Modifier.align(Alignment.TopCenter).zIndex(999f).padding(end = 16.dp),
92-
title = {},
93-
actions = {
94-
Row(horizontalArrangement = Arrangement.spacedBy(16.dp), verticalAlignment = Alignment.CenterVertically) {
95-
IconButton(onClick = { navController.navigate(Garden) }, Modifier.size(40.dp)) {
96-
Image(
97-
painter = painterResource(Res.drawable.stats),
98-
contentDescription = "Garden",
99-
)
100-
}
101-
IconButton(onClick = { navController.navigate(GardenFullScreen) }, Modifier.size(25.dp)) {
102-
Image(
103-
painter = painterResource(Res.drawable.grid),
104-
contentDescription = "Garden",
105-
Modifier.size(40.dp)
106-
)
107-
}
108-
Row {
109-
Image(
110-
painter = painterResource(Res.drawable.coin),
111-
contentDescription = "Garden",
112-
)
113-
Text(" $coins")
90+
if(status != TimerStatus.Running) {
91+
TopAppBar(
92+
modifier = Modifier.align(Alignment.TopCenter).zIndex(999f).padding(end = 16.dp),
93+
title = {},
94+
actions = {
95+
Row(
96+
horizontalArrangement = Arrangement.spacedBy(16.dp),
97+
verticalAlignment = Alignment.CenterVertically
98+
) {
99+
IconButton(onClick = { navController.navigate(Garden) }, Modifier.size(40.dp)) {
100+
Image(
101+
painter = painterResource(Res.drawable.stats),
102+
contentDescription = "Garden",
103+
)
104+
}
105+
IconButton(onClick = { navController.navigate(GardenFullScreen) }, Modifier.size(25.dp)) {
106+
Image(
107+
painter = painterResource(Res.drawable.grid),
108+
contentDescription = "Garden",
109+
Modifier.size(40.dp)
110+
)
111+
}
112+
Row {
113+
Image(
114+
painter = painterResource(Res.drawable.coin),
115+
contentDescription = "Garden",
116+
)
117+
Text(" $coins")
118+
}
119+
114120
}
115121

116122
}
117-
118-
}
119-
)
123+
)
124+
}
120125
Column(
121126
Modifier.align(Alignment.Center),
122127
verticalArrangement = Arrangement.Center,

0 commit comments

Comments
 (0)