diff --git a/app/src/main/java/com/lorenzovainigli/foodexpirationdates/model/Contributor.kt b/app/src/main/java/com/lorenzovainigli/foodexpirationdates/model/Contributor.kt
new file mode 100644
index 0000000..aabc41f
--- /dev/null
+++ b/app/src/main/java/com/lorenzovainigli/foodexpirationdates/model/Contributor.kt
@@ -0,0 +1,16 @@
+package com.lorenzovainigli.foodexpirationdates.model
+
+class Contributor(
+ val name: String,
+ val username: String
+)
+
+val contributors = listOf(
+ Contributor("Lorenzo Vainigli", "lorenzovngl"),
+ Contributor("Abdul Muizz", "abdulmuizz0903"),
+ Contributor("Steve", "uDEV2019"),
+ Contributor("Devpreyo Roy", "devedroy"),
+ Contributor("Quadropo", "Quadropo"),
+ Contributor("Bhavesh Kumawat", "bhavesh100"),
+ Contributor("Richard", "Rick-AB"),
+)
diff --git a/app/src/main/java/com/lorenzovainigli/foodexpirationdates/view/composable/activity/InfoActivityLayout.kt b/app/src/main/java/com/lorenzovainigli/foodexpirationdates/view/composable/activity/InfoActivityLayout.kt
index 7fb54cf..71ce5b4 100644
--- a/app/src/main/java/com/lorenzovainigli/foodexpirationdates/view/composable/activity/InfoActivityLayout.kt
+++ b/app/src/main/java/com/lorenzovainigli/foodexpirationdates/view/composable/activity/InfoActivityLayout.kt
@@ -27,6 +27,7 @@ import androidx.compose.material3.Text
import androidx.compose.material3.TopAppBarDefaults
import androidx.compose.runtime.Composable
import androidx.compose.runtime.collectAsState
+import androidx.compose.runtime.remember
import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.input.nestedscroll.nestedScroll
@@ -42,6 +43,7 @@ import androidx.compose.ui.unit.dp
import androidx.lifecycle.viewmodel.compose.viewModel
import com.lorenzovainigli.foodexpirationdates.BuildConfig
import com.lorenzovainigli.foodexpirationdates.R
+import com.lorenzovainigli.foodexpirationdates.model.contributors
import com.lorenzovainigli.foodexpirationdates.model.repository.PreferencesRepository
import com.lorenzovainigli.foodexpirationdates.ui.theme.FoodExpirationDatesTheme
import com.lorenzovainigli.foodexpirationdates.view.composable.MyTopAppBar
@@ -68,6 +70,8 @@ fun InfoActivityLayout(
PreferencesRepository.Companion.ThemeMode.DARK.ordinal -> true
else -> isSystemInDarkTheme()
}
+ val features = stringArrayResource(id = R.array.features)
+ .joinToString(separator = "\n") { it.asListItem() }
FoodExpirationDatesTheme(
darkTheme = isInDarkTheme,
dynamicColor = dynamicColorsState
@@ -147,13 +151,9 @@ fun InfoActivityLayout(
style = MaterialTheme.typography.headlineMedium,
textAlign = TextAlign.Center
)
- val sb = StringBuilder()
- stringArrayResource(id = R.array.features).map {
- sb.append(" ● ").append(it).append("\n")
- }
Text(
modifier = Modifier.fillMaxWidth(),
- text = sb.toString()
+ text = features
)
/*TextIconButton(
modifier = Modifier.align(CenterHorizontally),
@@ -164,6 +164,7 @@ fun InfoActivityLayout(
contentDescription = "Star",
text = stringResource(id = R.string.report_a_bug)
)*/
+ ContributorsList()
Text(
modifier = Modifier.padding(top = 16.dp),
text = stringResource(id = R.string.support_this_project),
@@ -229,10 +230,47 @@ fun InfoActivityLayout(
}
}
+@Composable
+fun ContributorsList(
+ modifier: Modifier = Modifier
+) {
+ val contributorsText = remember {
+ contributors.joinToString(separator = "\n") {
+ "${it.name} (@${it.username})".asListItem()
+ }
+ }
+ Column(modifier = modifier.fillMaxWidth()) {
+ Text(
+ modifier = Modifier.padding(top = 16.dp),
+ text = stringResource(id = R.string.contributors_list_title),
+ style = MaterialTheme.typography.headlineMedium,
+ textAlign = TextAlign.Center
+ )
+ Text(
+ modifier = Modifier.fillMaxWidth(),
+ text = stringResource(id = R.string.contributors_list_subtitle)
+ )
+ Text(
+ modifier = Modifier.fillMaxWidth(),
+ text = contributorsText
+ )
+ }
+}
+
+private fun String.asListItem() = " ● $this"
+
@DefaultPreviews
@DevicePreviews
@LanguagePreviews
@Composable
fun InfoActivityLayoutPreview() {
InfoActivityLayout()
-}
\ No newline at end of file
+}
+
+@DefaultPreviews
+@DevicePreviews
+@LanguagePreviews
+@Composable
+fun ContributorsListPreview() {
+ ContributorsList()
+}
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index aae9637..3f75b51 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -26,6 +26,8 @@
%1$s is an open source project developed by Lorenzo Vainigli and other contributors.\nThe code of this application is published under the MIT license and available on GitHub.
About this app
Privacy policy
+ Contributors
+ Thanks to these awesome people for contributing to the development of this app.
Back
No items found
Please insert one
@@ -67,4 +69,4 @@
- Mushrooms
- Tomatoes
-
\ No newline at end of file
+