Skip to content

Commit ea4247c

Browse files
author
Aunali321
committed
feat(update screen): complete main update screen
1 parent fec8c0c commit ea4247c

File tree

4 files changed

+68
-3
lines changed

4 files changed

+68
-3
lines changed

app/src/main/java/app/revanced/manager/compose/ui/screen/SettingsScreen.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ fun SettingsScreen(
111111
ListItem(
112112
modifier = Modifier.clickable { navController.navigate(destination) },
113113
headlineContent = { Text(stringResource(titleDescIcon.first), style = MaterialTheme.typography.titleLarge) },
114-
supportingContent = { Text(stringResource(titleDescIcon.second), style = MaterialTheme.typography.bodyMedium) },
114+
supportingContent = { Text(stringResource(titleDescIcon.second), style = MaterialTheme.typography.bodyMedium, color = MaterialTheme.colorScheme.outline) },
115115
leadingContent = { Icon(titleDescIcon.third, null) }
116116
)
117117
}

app/src/main/java/app/revanced/manager/compose/ui/screen/settings/AboutSettingsScreen.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -174,7 +174,7 @@ fun AboutSettingsScreen(
174174
.padding(8.dp)
175175
.clickable { onClick() },
176176
headlineContent = { Text(title, style = MaterialTheme.typography.titleLarge) },
177-
supportingContent = { Text(description, style = MaterialTheme.typography.bodyMedium) }
177+
supportingContent = { Text(description, style = MaterialTheme.typography.bodyMedium,color = MaterialTheme.colorScheme.outline) }
178178
)
179179
}
180180
}

app/src/main/java/app/revanced/manager/compose/ui/screen/settings/UpdatesSettingsScreen.kt

Lines changed: 59 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,31 @@
11
package app.revanced.manager.compose.ui.screen.settings
22

3+
import androidx.compose.foundation.background
4+
import androidx.compose.foundation.clickable
5+
import androidx.compose.foundation.layout.Arrangement
6+
import androidx.compose.foundation.layout.Box
37
import androidx.compose.foundation.layout.Column
8+
import androidx.compose.foundation.layout.Row
49
import androidx.compose.foundation.layout.fillMaxSize
10+
import androidx.compose.foundation.layout.fillMaxWidth
511
import androidx.compose.foundation.layout.padding
612
import androidx.compose.foundation.rememberScrollState
13+
import androidx.compose.foundation.shape.RoundedCornerShape
714
import androidx.compose.foundation.verticalScroll
15+
import androidx.compose.material.icons.Icons
16+
import androidx.compose.material.icons.filled.Update
817
import androidx.compose.material3.ExperimentalMaterial3Api
18+
import androidx.compose.material3.Icon
19+
import androidx.compose.material3.ListItem
20+
import androidx.compose.material3.MaterialTheme
921
import androidx.compose.material3.Scaffold
22+
import androidx.compose.material3.Text
1023
import androidx.compose.runtime.Composable
24+
import androidx.compose.ui.Alignment
1125
import androidx.compose.ui.Modifier
26+
import androidx.compose.ui.draw.clip
1227
import androidx.compose.ui.res.stringResource
28+
import androidx.compose.ui.unit.dp
1329
import app.revanced.manager.compose.R
1430
import app.revanced.manager.compose.ui.component.AppTopBar
1531

@@ -18,6 +34,13 @@ import app.revanced.manager.compose.ui.component.AppTopBar
1834
fun UpdatesSettingsScreen(
1935
onBackClick: () -> Unit
2036
) {
37+
38+
val listItems = listOf(
39+
Triple(stringResource(R.string.update_channel), stringResource(R.string.update_channel_description), third = { /*TODO*/ }),
40+
Triple(stringResource(R.string.update_notifications), stringResource(R.string.update_notifications_description), third = { /*TODO*/ }),
41+
Triple(stringResource(R.string.changelog), stringResource(R.string.changelog_description), third = { /*TODO*/ }),
42+
)
43+
2144
Scaffold(
2245
topBar = {
2346
AppTopBar(
@@ -27,9 +50,44 @@ fun UpdatesSettingsScreen(
2750
}
2851
) { paddingValues ->
2952
Column(
30-
modifier = Modifier.fillMaxSize().padding(paddingValues).verticalScroll(rememberScrollState())
53+
modifier = Modifier
54+
.fillMaxSize()
55+
.padding(paddingValues)
56+
.verticalScroll(rememberScrollState())
3157
) {
58+
UpdateNotification()
59+
listItems.forEach { (title, description, onClick) ->
60+
ListItem(
61+
modifier = Modifier
62+
.fillMaxWidth()
63+
.padding(8.dp)
64+
.clickable { onClick() },
65+
headlineContent = { Text(title, style = MaterialTheme.typography.titleLarge) },
66+
supportingContent = { Text(description, style = MaterialTheme.typography.bodyMedium, color = MaterialTheme.colorScheme.outline) }
67+
)
68+
}
69+
}
70+
}
71+
}
3272

73+
@Composable
74+
fun UpdateNotification() {
75+
Box(
76+
modifier = Modifier
77+
.fillMaxWidth()
78+
.padding(16.dp)
79+
.clip(RoundedCornerShape(16.dp))
80+
.background(MaterialTheme.colorScheme.secondaryContainer)
81+
) {
82+
Row(
83+
modifier = Modifier
84+
.fillMaxWidth()
85+
.padding(16.dp),
86+
verticalAlignment = Alignment.CenterVertically,
87+
horizontalArrangement = Arrangement.spacedBy(16.dp)
88+
) {
89+
Icon(imageVector = Icons.Default.Update, contentDescription = null)
90+
Text(text = stringResource(R.string.update_notification), style = MaterialTheme.typography.bodyMedium)
3391
}
3492
}
3593
}

app/src/main/res/values/strings.xml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -84,4 +84,11 @@
8484
<string name="developer_options_description">Options for debugging issues</string>
8585
<string name="about_revanced_manager">About ReVanced Manager</string>
8686
<string name="revanced_manager_description">ReVanced Manager is an application designed to work with ReVanced Patcher, which allows for long-lasting patches to be created for Android apps. The patching system is designed to automatically work with new versions of apps with minimal maintenance.</string>
87+
<string name="update_notification">A minor update for ReVanced Manager is available. Click here to update and get the latest features and fixes!</string>
88+
<string name="update_channel">Update channel</string>
89+
<string name="update_channel_description">Stable</string>
90+
<string name="update_notifications">Update notifications</string>
91+
<string name="update_notifications_description">Dialog on app launch + badges</string>
92+
<string name="changelog">Changelog</string>
93+
<string name="changelog_description">Check out the latest changes in this update</string>
8794
</resources>

0 commit comments

Comments
 (0)