1616 */
1717package com.shub39.rush.presentation.setting.component
1818
19+ import androidx.compose.foundation.background
20+ import androidx.compose.foundation.clickable
1921import androidx.compose.foundation.layout.Arrangement
2022import androidx.compose.foundation.layout.Column
21- import androidx.compose.foundation.layout.FlowRow
2223import androidx.compose.foundation.layout.Row
2324import androidx.compose.foundation.layout.Spacer
2425import androidx.compose.foundation.layout.fillMaxWidth
2526import androidx.compose.foundation.layout.padding
2627import androidx.compose.foundation.layout.size
27- import androidx.compose.material3.Button
28+ import androidx.compose.foundation.layout.width
2829import androidx.compose.material3.Card
2930import androidx.compose.material3.CardDefaults
3031import androidx.compose.material3.Icon
@@ -34,13 +35,18 @@ import androidx.compose.material3.Text
3435import androidx.compose.runtime.Composable
3536import androidx.compose.ui.Alignment
3637import androidx.compose.ui.Modifier
38+ import androidx.compose.ui.draw.clip
3739import androidx.compose.ui.platform.LocalUriHandler
3840import androidx.compose.ui.res.painterResource
3941import androidx.compose.ui.res.stringResource
4042import androidx.compose.ui.unit.dp
4143import com.shub39.rush.BuildConfig
4244import com.shub39.rush.R
45+ import com.shub39.rush.presentation.endItemShape
4346import com.shub39.rush.presentation.flexFontEmphasis
47+ import com.shub39.rush.presentation.flexFontRounded
48+ import com.shub39.rush.presentation.leadingItemShape
49+ import com.shub39.rush.presentation.middleItemShape
4450
4551@Composable
4652fun AboutApp () {
@@ -62,13 +68,14 @@ fun AboutApp() {
6268 ) {
6369 Column {
6470 Text (
65- text = " Rush " ,
71+ text = " Grit " ,
6672 style =
67- MaterialTheme .typography.headlineMedium.copy(
68- fontFamily = flexFontEmphasis()
69- ),
73+ MaterialTheme .typography.headlineLarge.copy(fontFamily = flexFontEmphasis()),
74+ )
75+ Text (
76+ text = " ${BuildConfig .VERSION_NAME } (${BuildConfig .VERSION_CODE } )" ,
77+ fontFamily = flexFontRounded(),
7078 )
71- Text (text = " ${BuildConfig .VERSION_NAME } (${BuildConfig .VERSION_CODE } )" )
7279 }
7380
7481 Spacer (modifier = Modifier .weight(1f ))
@@ -82,7 +89,7 @@ fun AboutApp() {
8289 )
8390 }
8491
85- IconButton (onClick = { uriHandler.openUri(" https://github.com/shub39/Rush " ) }) {
92+ IconButton (onClick = { uriHandler.openUri(" https://github.com/shub39/Grit " ) }) {
8693 Icon (
8794 painter = painterResource(R .drawable.github),
8895 contentDescription = " Github" ,
@@ -92,58 +99,98 @@ fun AboutApp() {
9299 }
93100 }
94101
95- FlowRow (
102+ Column (
96103 modifier = Modifier .padding(start = 16 .dp, end = 16 .dp, bottom = 16 .dp),
97- horizontalArrangement = Arrangement .spacedBy(8 .dp),
104+ verticalArrangement = Arrangement .spacedBy(2 .dp),
98105 ) {
99- Button (onClick = { uriHandler.openUri(" https://buymeacoffee.com/shub39" ) }) {
106+ Row (
107+ modifier =
108+ Modifier .background(
109+ color = MaterialTheme .colorScheme.primary,
110+ shape = leadingItemShape(),
111+ )
112+ .clip(leadingItemShape())
113+ .clickable { uriHandler.openUri(" https://buymeacoffee.com/shub39" ) }
114+ ) {
100115 Row (
101- horizontalArrangement = Arrangement .spacedBy(8 .dp),
116+ modifier = Modifier .fillMaxWidth().padding(16 .dp),
117+ horizontalArrangement = Arrangement .Center ,
102118 verticalAlignment = Alignment .CenterVertically ,
103119 ) {
104120 Icon (
105121 painter = painterResource(R .drawable.buymeacoffee),
106122 contentDescription = " Buy me a coffee" ,
107123 modifier = Modifier .size(24 .dp),
124+ tint = MaterialTheme .colorScheme.onPrimary,
125+ )
126+ Spacer (modifier = Modifier .width(8 .dp))
127+ Text (
128+ text = stringResource(R .string.bmc),
129+ color = MaterialTheme .colorScheme.onPrimary,
130+ fontFamily = flexFontRounded(),
108131 )
109-
110- Text (text = stringResource(R .string.bmc))
111132 }
112133 }
113134
114- Button (onClick = { uriHandler.openUri(" https://hosted.weblate.org/engage/rush/" ) }) {
135+ Row (
136+ modifier =
137+ Modifier .background(
138+ color = MaterialTheme .colorScheme.primary,
139+ shape = middleItemShape(),
140+ )
141+ .clip(middleItemShape())
142+ .clickable { uriHandler.openUri(" https://hosted.weblate.org/engage/grit/" ) }
143+ ) {
115144 Row (
116- horizontalArrangement = Arrangement .spacedBy(8 .dp),
145+ modifier = Modifier .fillMaxWidth().padding(16 .dp),
146+ horizontalArrangement = Arrangement .Center ,
117147 verticalAlignment = Alignment .CenterVertically ,
118148 ) {
119149 Icon (
120150 painter = painterResource(R .drawable.language),
121151 contentDescription = " Translate" ,
122152 modifier = Modifier .size(24 .dp),
153+ tint = MaterialTheme .colorScheme.onPrimary,
154+ )
155+ Spacer (modifier = Modifier .width(8 .dp))
156+ Text (
157+ text = stringResource(R .string.translate),
158+ color = MaterialTheme .colorScheme.onPrimary,
159+ fontFamily = flexFontRounded(),
123160 )
124-
125- Text (text = stringResource(R .string.translate))
126161 }
127162 }
128163
129- Button (
130- onClick = {
131- uriHandler.openUri(
132- " https://play.google.com/store/apps/details?id=com.shub39.rush.play"
133- )
134- }
164+ Row (
165+ modifier =
166+ Modifier .background(
167+ color = MaterialTheme .colorScheme.primary,
168+ shape = endItemShape(),
169+ )
170+ .clip(endItemShape())
171+ .clickable {
172+ uriHandler.openUri(
173+ " https://play.google.com/store/apps/details?id=com.shub39.grit"
174+ )
175+ }
135176 ) {
136177 Row (
137- horizontalArrangement = Arrangement .spacedBy(8 .dp),
178+ modifier = Modifier .fillMaxWidth().padding(16 .dp),
179+ horizontalArrangement = Arrangement .Center ,
138180 verticalAlignment = Alignment .CenterVertically ,
139181 ) {
140182 Icon (
141183 painter = painterResource(R .drawable.play_store),
142184 contentDescription = " Rate On Google Play" ,
143- modifier = Modifier .size(20 .dp),
185+ modifier = Modifier .size(24 .dp),
186+ tint = MaterialTheme .colorScheme.onPrimary,
187+ )
188+ Spacer (modifier = Modifier .width(8 .dp))
189+ Text (
190+ text = stringResource(R .string.rate_on_play),
191+ color = MaterialTheme .colorScheme.onPrimary,
192+ fontFamily = flexFontRounded(),
144193 )
145-
146- Text (text = stringResource(R .string.rate_on_play))
147194 }
148195 }
149196 }
0 commit comments