diff --git a/app/src/main/kotlin/com/nativeapptemplate/nativeapptemplatefree/NatConstants.kt b/app/src/main/kotlin/com/nativeapptemplate/nativeapptemplatefree/NatConstants.kt
index c5762b0..74b01ef 100644
--- a/app/src/main/kotlin/com/nativeapptemplate/nativeapptemplatefree/NatConstants.kt
+++ b/app/src/main/kotlin/com/nativeapptemplate/nativeapptemplatefree/NatConstants.kt
@@ -8,7 +8,6 @@ object NatConstants {
const val HOW_TO_USE_URL: String = "https://myturntag.com/how"
const val SUPPORT_WEBSITE_URL: String = "https://nativeapptemplate.com"
const val FAQS_URL: String = "https://nativeapptemplate.com/faqs"
- const val DISCUSSIONS_URL: String = "https://github.com/nativeapptemplate/NativeAppTemplate-Free-Android/discussions"
const val PRIVACY_POLICY_URL: String = "https://nativeapptemplate.com/privacy"
const val TERMS_OF_USE_URL: String = "https://nativeapptemplate.com/terms"
diff --git a/app/src/main/kotlin/com/nativeapptemplate/nativeapptemplatefree/ui/settings/SettingsView.kt b/app/src/main/kotlin/com/nativeapptemplate/nativeapptemplatefree/ui/settings/SettingsView.kt
index 68dac0d..880d8c1 100644
--- a/app/src/main/kotlin/com/nativeapptemplate/nativeapptemplatefree/ui/settings/SettingsView.kt
+++ b/app/src/main/kotlin/com/nativeapptemplate/nativeapptemplatefree/ui/settings/SettingsView.kt
@@ -6,13 +6,14 @@ import android.net.Uri
import androidx.compose.foundation.clickable
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
+import androidx.compose.foundation.layout.Row
+import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.fillMaxHeight
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.lazy.LazyColumn
import androidx.compose.material.icons.Icons
-import androidx.compose.material.icons.outlined.Forum
import androidx.compose.material.icons.outlined.Info
import androidx.compose.material.icons.outlined.Key
import androidx.compose.material.icons.outlined.Language
@@ -254,7 +255,7 @@ private fun SettingsContentView(
ListItem(
headlineContent = {
Text(
- stringResource(R.string.information),
+ stringResource(R.string.support),
style = MaterialTheme.typography.titleMedium,
)
},
@@ -265,15 +266,15 @@ private fun SettingsContentView(
ListItem(
headlineContent = {
Text(
- stringResource(R.string.support_website),
+ stringResource(R.string.how_to_use),
style = MaterialTheme.typography.titleMedium,
color = MaterialTheme.colorScheme.onPrimaryContainer,
)
},
leadingContent = {
Icon(
- Icons.Outlined.Language,
- contentDescription = stringResource(R.string.support_website),
+ Icons.Outlined.Info,
+ contentDescription = stringResource(R.string.how_to_use),
tint = MaterialTheme.colorScheme.onSurfaceVariant,
)
},
@@ -282,7 +283,7 @@ private fun SettingsContentView(
context.startActivity(
Intent(
Intent.ACTION_VIEW,
- Uri.parse(NatConstants.SUPPORT_WEBSITE_URL),
+ Uri.parse(NatConstants.HOW_TO_USE_URL),
),
)
},
@@ -293,49 +294,50 @@ private fun SettingsContentView(
ListItem(
headlineContent = {
Text(
- stringResource(R.string.how_to_use),
+ stringResource(R.string.faqs),
style = MaterialTheme.typography.titleMedium,
color = MaterialTheme.colorScheme.onPrimaryContainer,
)
},
leadingContent = {
Icon(
- Icons.Outlined.Info,
- contentDescription = stringResource(R.string.how_to_use),
+ Icons.Outlined.QuestionMark,
+ contentDescription = stringResource(R.string.faqs),
tint = MaterialTheme.colorScheme.onSurfaceVariant,
)
},
modifier = Modifier
.clickable {
- context.startActivity(
- Intent(
- Intent.ACTION_VIEW,
- Uri.parse(NatConstants.HOW_TO_USE_URL),
- ),
- )
+ context.startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(NatConstants.FAQS_URL)))
},
)
HorizontalDivider()
}
item {
+ val emailAppNotFoundMessage = stringResource(R.string.email_app_is_not_found)
+
ListItem(
headlineContent = {
Text(
- stringResource(R.string.faqs),
+ stringResource(R.string.contact),
style = MaterialTheme.typography.titleMedium,
color = MaterialTheme.colorScheme.onPrimaryContainer,
)
},
leadingContent = {
Icon(
- Icons.Outlined.QuestionMark,
- contentDescription = stringResource(R.string.faqs),
+ Icons.Outlined.Mail,
+ contentDescription = stringResource(R.string.contact),
tint = MaterialTheme.colorScheme.onSurfaceVariant,
)
},
modifier = Modifier
.clickable {
- context.startActivity(Intent(Intent.ACTION_VIEW, Uri.parse(NatConstants.FAQS_URL)))
+ try {
+ Utility.sendContactMail(context)
+ } catch (exception: ActivityNotFoundException) {
+ viewModel.updateMessage(emailAppNotFoundMessage)
+ }
},
)
HorizontalDivider()
@@ -344,56 +346,48 @@ private fun SettingsContentView(
ListItem(
headlineContent = {
Text(
- stringResource(R.string.discussions),
+ stringResource(R.string.rate_app),
style = MaterialTheme.typography.titleMedium,
color = MaterialTheme.colorScheme.onPrimaryContainer,
)
},
leadingContent = {
Icon(
- Icons.Outlined.Forum,
- contentDescription = stringResource(R.string.discussions),
+ Icons.Outlined.ThumbUp,
+ contentDescription = stringResource(R.string.rate_app),
tint = MaterialTheme.colorScheme.onSurfaceVariant,
)
},
modifier = Modifier
.clickable {
- context.startActivity(
- Intent(
- Intent.ACTION_VIEW,
- Uri.parse(NatConstants.DISCUSSIONS_URL),
- ),
- )
+ try {
+ context.startActivity(Intent(Intent.ACTION_VIEW, Utility.marketUri()))
+ } catch (e: ActivityNotFoundException) {
+ context.startActivity(Intent(Intent.ACTION_VIEW, Utility.googlePlayStoreUri()))
+ }
},
)
- HorizontalDivider()
}
- item {
- val emailAppNotFoundMessage = stringResource(R.string.email_app_is_not_found)
+ item {
ListItem(
headlineContent = {
Text(
- stringResource(R.string.contact),
+ "",
style = MaterialTheme.typography.titleMedium,
- color = MaterialTheme.colorScheme.onPrimaryContainer,
)
},
- leadingContent = {
- Icon(
- Icons.Outlined.Mail,
- contentDescription = stringResource(R.string.contact),
- tint = MaterialTheme.colorScheme.onSurfaceVariant,
+ )
+ }
+
+ item {
+ ListItem(
+ headlineContent = {
+ Text(
+ stringResource(R.string.about),
+ style = MaterialTheme.typography.titleMedium,
)
},
- modifier = Modifier
- .clickable {
- try {
- Utility.sendContactMail(context)
- } catch (exception: ActivityNotFoundException) {
- viewModel.updateMessage(emailAppNotFoundMessage)
- }
- },
)
HorizontalDivider()
}
@@ -401,25 +395,26 @@ private fun SettingsContentView(
ListItem(
headlineContent = {
Text(
- stringResource(R.string.rate_app),
+ stringResource(R.string.website),
style = MaterialTheme.typography.titleMedium,
color = MaterialTheme.colorScheme.onPrimaryContainer,
)
},
leadingContent = {
Icon(
- Icons.Outlined.ThumbUp,
- contentDescription = stringResource(R.string.rate_app),
+ Icons.Outlined.Language,
+ contentDescription = stringResource(R.string.website),
tint = MaterialTheme.colorScheme.onSurfaceVariant,
)
},
modifier = Modifier
.clickable {
- try {
- context.startActivity(Intent(Intent.ACTION_VIEW, Utility.marketUri()))
- } catch (e: ActivityNotFoundException) {
- context.startActivity(Intent(Intent.ACTION_VIEW, Utility.googlePlayStoreUri()))
- }
+ context.startActivity(
+ Intent(
+ Intent.ACTION_VIEW,
+ Uri.parse(NatConstants.SUPPORT_WEBSITE_URL),
+ ),
+ )
},
)
HorizontalDivider()
@@ -433,6 +428,13 @@ private fun SettingsContentView(
color = MaterialTheme.colorScheme.onPrimaryContainer,
)
},
+ leadingContent = {
+ Icon(
+ Icons.Outlined.Info,
+ contentDescription = stringResource(R.string.privacy_policy),
+ tint = MaterialTheme.colorScheme.onSurfaceVariant,
+ )
+ },
modifier = Modifier
.clickable {
context.startActivity(
@@ -454,6 +456,13 @@ private fun SettingsContentView(
color = MaterialTheme.colorScheme.onPrimaryContainer,
)
},
+ leadingContent = {
+ Icon(
+ Icons.Outlined.Info,
+ contentDescription = stringResource(R.string.terms_of_use),
+ tint = MaterialTheme.colorScheme.onSurfaceVariant,
+ )
+ },
modifier = Modifier
.clickable {
context.startActivity(
@@ -464,8 +473,48 @@ private fun SettingsContentView(
)
},
)
+ }
+
+ item {
+ ListItem(
+ headlineContent = {
+ Text(
+ "",
+ style = MaterialTheme.typography.titleMedium,
+ )
+ },
+ )
+ }
+
+ item {
+ ListItem(
+ headlineContent = {
+ Text(
+ stringResource(R.string.app_section),
+ style = MaterialTheme.typography.titleMedium,
+ )
+ },
+ )
HorizontalDivider()
}
+ item {
+ ListItem(
+ headlineContent = {
+ Row {
+ Text(
+ stringResource(R.string.version),
+ style = MaterialTheme.typography.titleMedium,
+ )
+ Spacer(modifier = Modifier.weight(1f))
+ Text(
+ "${BuildConfig.VERSION_NAME} (${BuildConfig.VERSION_CODE})",
+ style = MaterialTheme.typography.titleMedium,
+ color = MaterialTheme.colorScheme.onSurfaceVariant,
+ )
+ }
+ },
+ )
+ }
item {
Column(
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 167ed36..67ea8cf 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -159,11 +159,14 @@
Dark Mode Preference
My Account
Profile
- Information
+ Support
+ About
+ App
+ Version
+ Website
How To Use
Support Website
FAQs
- Discussions
Rate or Review the App
Contact
Email app is not found.