From ac7182fdb0f247f4ff7c4d1968fd96cb8e17de85 Mon Sep 17 00:00:00 2001
From: Diamond <33725716+DiamondMiner88@users.noreply.github.com>
Date: Sun, 18 Sep 2022 12:35:07 -0700
Subject: [PATCH] feat: various ui improvements (#17)
---
.../manager/installer/service/InstallService.kt | 12 ++++++------
.../manager/ui/component/plugins/PluginCard.kt | 14 +++++++++-----
.../com/aliucord/manager/ui/screen/AboutScreen.kt | 2 +-
.../aliucord/manager/ui/screen/HomeRootScreen.kt | 10 ++++++++--
.../com/aliucord/manager/ui/screen/HomeScreen.kt | 6 ++++--
.../aliucord/manager/ui/screen/InstallScreen.kt | 9 +++++----
.../aliucord/manager/ui/screen/PluginsScreen.kt | 3 ++-
.../aliucord/manager/ui/screen/SettingsScreen.kt | 6 ++++--
app/src/main/res/values/strings.xml | 2 +-
9 files changed, 40 insertions(+), 24 deletions(-)
diff --git a/app/src/main/kotlin/com/aliucord/manager/installer/service/InstallService.kt b/app/src/main/kotlin/com/aliucord/manager/installer/service/InstallService.kt
index 6a78fda..ad99149 100644
--- a/app/src/main/kotlin/com/aliucord/manager/installer/service/InstallService.kt
+++ b/app/src/main/kotlin/com/aliucord/manager/installer/service/InstallService.kt
@@ -19,14 +19,14 @@ class InstallService : Service() {
startActivity(confirmationIntent)
}
PackageInstaller.STATUS_SUCCESS -> Toast.makeText(
- /* context = */ this,
- /* text = */ "Successfully installed Aliucord!",
- /* duration = */ Toast.LENGTH_LONG
+ this,
+ "Successfully installed Aliucord!",
+ Toast.LENGTH_LONG
).show()
PackageInstaller.STATUS_FAILURE_ABORTED -> Toast.makeText(
- /* context = */ this,
- /* text = */ "Aborted installation",
- /* duration = */ Toast.LENGTH_LONG
+ this,
+ "Aborted installation",
+ Toast.LENGTH_LONG
).show()
else -> {
Log.i(BuildConfig.TAG, "Installation failed: error code $statusCode")
diff --git a/app/src/main/kotlin/com/aliucord/manager/ui/component/plugins/PluginCard.kt b/app/src/main/kotlin/com/aliucord/manager/ui/component/plugins/PluginCard.kt
index 5239aa3..8eb88db 100644
--- a/app/src/main/kotlin/com/aliucord/manager/ui/component/plugins/PluginCard.kt
+++ b/app/src/main/kotlin/com/aliucord/manager/ui/component/plugins/PluginCard.kt
@@ -105,28 +105,31 @@ fun PluginCard(
Text(
modifier = Modifier
.heightIn(max = 150.dp, min = 40.dp)
- .padding(top = 10.dp),
+ .padding(top = 10.dp, bottom = 20.dp),
text = plugin.manifest.description,
style = MaterialTheme.typography.bodyMedium
)
Row(
- horizontalArrangement = Arrangement.spacedBy(6.dp),
+ horizontalArrangement = Arrangement.spacedBy(10.dp),
) {
IconButton(
+ modifier = Modifier.size(25.dp),
onClick = {
uriHandler.openUri(plugin.manifest.repositoryUrl)
- }
+ },
) {
Icon(
+ modifier = Modifier.fillMaxSize(),
painter = painterResource(R.drawable.ic_account_github_white_24dp),
contentDescription = stringResource(R.string.github)
)
}
if (plugin.manifest.changelog != null) {
- IconButton(onClick = onClickShowChangelog) {
+ IconButton(modifier = Modifier.size(25.dp), onClick = onClickShowChangelog) {
Icon(
+ modifier = Modifier.fillMaxSize(),
imageVector = Icons.Default.History,
contentDescription = stringResource(R.string.view_plugin_changelog, plugin.manifest.name)
)
@@ -135,8 +138,9 @@ fun PluginCard(
Spacer(Modifier.weight(1f, true))
- IconButton(onClick = onClickDelete) {
+ IconButton(modifier = Modifier.size(25.dp), onClick = onClickDelete) {
Icon(
+ modifier = Modifier.fillMaxSize(),
imageVector = Icons.Default.Delete,
contentDescription = stringResource(R.string.uninstall),
tint = MaterialTheme.colorScheme.error
diff --git a/app/src/main/kotlin/com/aliucord/manager/ui/screen/AboutScreen.kt b/app/src/main/kotlin/com/aliucord/manager/ui/screen/AboutScreen.kt
index ad15ee5..9f719db 100644
--- a/app/src/main/kotlin/com/aliucord/manager/ui/screen/AboutScreen.kt
+++ b/app/src/main/kotlin/com/aliucord/manager/ui/screen/AboutScreen.kt
@@ -32,7 +32,7 @@ fun AboutScreen(
) {
Scaffold(
topBar = {
- MediumTopAppBar(
+ TopAppBar(
title = { Text(stringResource(R.string.about)) },
navigationIcon = {
IconButton(onClick = onClickBack) {
diff --git a/app/src/main/kotlin/com/aliucord/manager/ui/screen/HomeRootScreen.kt b/app/src/main/kotlin/com/aliucord/manager/ui/screen/HomeRootScreen.kt
index fdb71ee..edb4535 100644
--- a/app/src/main/kotlin/com/aliucord/manager/ui/screen/HomeRootScreen.kt
+++ b/app/src/main/kotlin/com/aliucord/manager/ui/screen/HomeRootScreen.kt
@@ -11,6 +11,7 @@ import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.LocalUriHandler
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.res.stringResource
+import androidx.compose.ui.unit.dp
import com.aliucord.manager.BuildConfig
import com.aliucord.manager.R
import com.aliucord.manager.ui.navigation.HomeDestination
@@ -28,8 +29,13 @@ fun MainRootScreen(
Scaffold(
topBar = {
- MediumTopAppBar(
- title = { Text(stringResource(mainRootNavigator.currentDestination.label)) },
+ TopAppBar(
+ title = {
+ Text(
+ stringResource(mainRootNavigator.currentDestination.label),
+ modifier = Modifier.padding(horizontal = 4.dp)
+ )
+ },
actions = {
val localUriHandler = LocalUriHandler.current
diff --git a/app/src/main/kotlin/com/aliucord/manager/ui/screen/HomeScreen.kt b/app/src/main/kotlin/com/aliucord/manager/ui/screen/HomeScreen.kt
index f5154bf..06c67da 100644
--- a/app/src/main/kotlin/com/aliucord/manager/ui/screen/HomeScreen.kt
+++ b/app/src/main/kotlin/com/aliucord/manager/ui/screen/HomeScreen.kt
@@ -61,7 +61,9 @@ fun HomeScreen(
}
Column(
- modifier = Modifier.padding(horizontal = 16.dp),
+ modifier = Modifier
+ .padding(horizontal = 16.dp)
+ .padding(top = 8.dp),
verticalArrangement = Arrangement.spacedBy(8.dp)
) {
ElevatedCard {
@@ -187,7 +189,7 @@ fun HomeScreen(
LazyColumn(
modifier = Modifier.fillMaxWidth(),
- verticalArrangement = Arrangement.spacedBy(14.dp)
+ verticalArrangement = Arrangement.spacedBy(4.dp)
) {
if (lazyPagingItems.loadState.refresh == LoadState.Loading) {
item {
diff --git a/app/src/main/kotlin/com/aliucord/manager/ui/screen/InstallScreen.kt b/app/src/main/kotlin/com/aliucord/manager/ui/screen/InstallScreen.kt
index e8da2f6..5194a37 100644
--- a/app/src/main/kotlin/com/aliucord/manager/ui/screen/InstallScreen.kt
+++ b/app/src/main/kotlin/com/aliucord/manager/ui/screen/InstallScreen.kt
@@ -44,7 +44,7 @@ fun InstallerScreen(
Scaffold(
topBar = {
- MediumTopAppBar(
+ TopAppBar(
title = { Text("Installer") },
navigationIcon = {
IconButton(onClick = onClickBack) {
@@ -61,18 +61,19 @@ fun InstallerScreen(
modifier = Modifier
.fillMaxWidth()
.padding(paddingValues)
- .padding(horizontal = 12.dp, vertical = 14.dp)
) {
stickyHeader {
LinearProgressIndicator(
- modifier = Modifier.fillParentMaxWidth()
+ modifier = Modifier
+ .fillParentMaxWidth()
+ .padding(bottom = 4.dp)
)
}
item {
Text(
text = viewModel.log,
- modifier = Modifier.padding(8.dp)
+ modifier = Modifier.padding(horizontal = 20.dp, vertical = 6.dp)
)
}
}
diff --git a/app/src/main/kotlin/com/aliucord/manager/ui/screen/PluginsScreen.kt b/app/src/main/kotlin/com/aliucord/manager/ui/screen/PluginsScreen.kt
index 1aaedf0..d787e61 100644
--- a/app/src/main/kotlin/com/aliucord/manager/ui/screen/PluginsScreen.kt
+++ b/app/src/main/kotlin/com/aliucord/manager/ui/screen/PluginsScreen.kt
@@ -116,7 +116,8 @@ fun PluginsScreen(
)
LazyColumn(
- verticalArrangement = Arrangement.spacedBy(8.dp)
+ contentPadding = PaddingValues(bottom = 8.dp, top = 6.dp),
+ verticalArrangement = Arrangement.spacedBy(8.dp),
) {
items(
viewModel.plugins.filter { plugin ->
diff --git a/app/src/main/kotlin/com/aliucord/manager/ui/screen/SettingsScreen.kt b/app/src/main/kotlin/com/aliucord/manager/ui/screen/SettingsScreen.kt
index 986430f..079f21b 100644
--- a/app/src/main/kotlin/com/aliucord/manager/ui/screen/SettingsScreen.kt
+++ b/app/src/main/kotlin/com/aliucord/manager/ui/screen/SettingsScreen.kt
@@ -37,7 +37,7 @@ fun SettingsScreen(
Scaffold(
modifier = Modifier.nestedScroll(scrollBehavior.nestedScrollConnection),
topBar = {
- LargeTopAppBar(
+ TopAppBar(
title = { Text(stringResource(R.string.settings)) },
navigationIcon = {
IconButton(onClick = onClickBack) {
@@ -216,7 +216,9 @@ fun ThemeDialog(
Column {
Theme.values().forEach { theme ->
Row(
- modifier = Modifier.clickable { selectedTheme = theme },
+ modifier = Modifier
+ .clickable { selectedTheme = theme }
+ .padding(start = 8.dp),
verticalAlignment = Alignment.CenterVertically
) {
Text(
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index c4c94c8..8a1d627 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -47,7 +47,7 @@
Clear
Launch
Uninstall
- Version
+ Download Version
Dynamic color
Appearance
Advanced