From 292f95ca667a399363e1a074b484212ec1bf9aed Mon Sep 17 00:00:00 2001 From: Brian Yencho Date: Wed, 3 Jan 2024 17:24:06 -0600 Subject: [PATCH] BIT-842: Fix various paddings and sizes on Vault Screen (#489) --- ...twardenListHeaderTextWithSupportingText.kt | 1 + .../itemlisting/VaultItemListingContent.kt | 7 +++++- .../ui/vault/feature/vault/VaultContent.kt | 7 +++++- .../vault/feature/vault/VaultEntryListItem.kt | 25 ++++++++++++++----- .../vault/feature/vault/VaultGroupListItem.kt | 3 +++ .../ui/vault/feature/vault/VaultScreen.kt | 7 +++++- 6 files changed, 41 insertions(+), 9 deletions(-) diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/platform/components/BitwardenListHeaderTextWithSupportingText.kt b/app/src/main/java/com/x8bit/bitwarden/ui/platform/components/BitwardenListHeaderTextWithSupportingText.kt index 2ffcb4779e..3b55d465d0 100644 --- a/app/src/main/java/com/x8bit/bitwarden/ui/platform/components/BitwardenListHeaderTextWithSupportingText.kt +++ b/app/src/main/java/com/x8bit/bitwarden/ui/platform/components/BitwardenListHeaderTextWithSupportingText.kt @@ -30,6 +30,7 @@ fun BitwardenListHeaderTextWithSupportLabel( .padding( top = 12.dp, bottom = 4.dp, + end = 8.dp, ) .semantics(mergeDescendants = true) { }, horizontalArrangement = Arrangement.SpaceBetween, diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/itemlisting/VaultItemListingContent.kt b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/itemlisting/VaultItemListingContent.kt index ee4d61c4f1..8812b1f038 100644 --- a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/itemlisting/VaultItemListingContent.kt +++ b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/itemlisting/VaultItemListingContent.kt @@ -42,7 +42,12 @@ fun VaultItemListingContent( onClick = { vaultItemClick(it.id) }, modifier = Modifier .fillMaxWidth() - .padding(horizontal = 16.dp), + .padding( + start = 16.dp, + // There is some built-in padding to the menu button that makes up + // the visual difference here. + end = 12.dp, + ), ) } } diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultContent.kt b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultContent.kt index 3ff29eef47..200c079983 100644 --- a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultContent.kt +++ b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultContent.kt @@ -61,7 +61,12 @@ fun VaultContent( onClick = { vaultItemClick(favoriteItem) }, modifier = Modifier .fillMaxWidth() - .padding(horizontal = 16.dp), + .padding( + start = 16.dp, + // There is some built-in padding to the menu button that makes up + // the visual difference here. + end = 12.dp, + ), ) } diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultEntryListItem.kt b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultEntryListItem.kt index 5300277f62..91254daec6 100644 --- a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultEntryListItem.kt +++ b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultEntryListItem.kt @@ -1,13 +1,16 @@ package com.x8bit.bitwarden.ui.vault.feature.vault +import android.widget.Toast import androidx.compose.foundation.clickable import androidx.compose.foundation.interaction.MutableInteractionSource import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Column import androidx.compose.foundation.layout.Row +import androidx.compose.foundation.layout.defaultMinSize import androidx.compose.foundation.layout.padding import androidx.compose.material.ripple.rememberRipple import androidx.compose.material3.Icon +import androidx.compose.material3.IconButton import androidx.compose.material3.MaterialTheme import androidx.compose.material3.Text import androidx.compose.runtime.Composable @@ -15,6 +18,7 @@ import androidx.compose.runtime.remember import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.graphics.painter.Painter +import androidx.compose.ui.platform.LocalContext import androidx.compose.ui.res.painterResource import androidx.compose.ui.tooling.preview.Preview import androidx.compose.ui.unit.dp @@ -45,7 +49,8 @@ fun VaultEntryListItem( indication = rememberRipple(color = MaterialTheme.colorScheme.primary), onClick = onClick, ) - .padding(vertical = 16.dp) + .defaultMinSize(minHeight = 72.dp) + .padding(vertical = 8.dp) .then(modifier), verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(16.dp), @@ -72,11 +77,19 @@ fun VaultEntryListItem( } } - Icon( - painter = painterResource(id = R.drawable.ic_more_horizontal), - contentDescription = null, - tint = MaterialTheme.colorScheme.onSurfaceVariant, - ) + val context = LocalContext.current + IconButton( + onClick = { + // TODO: Provide dialog-based implementation (BIT-1353 - BIT-1356) + Toast.makeText(context, "Not yet implemented.", Toast.LENGTH_SHORT).show() + }, + ) { + Icon( + painter = painterResource(id = R.drawable.ic_more_horizontal), + contentDescription = null, + tint = MaterialTheme.colorScheme.onSurfaceVariant, + ) + } } } diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultGroupListItem.kt b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultGroupListItem.kt index 406ce863cc..b02509dbda 100644 --- a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultGroupListItem.kt +++ b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultGroupListItem.kt @@ -5,6 +5,7 @@ import androidx.compose.foundation.interaction.MutableInteractionSource import androidx.compose.foundation.layout.Arrangement import androidx.compose.foundation.layout.Row import androidx.compose.foundation.layout.padding +import androidx.compose.foundation.layout.size import androidx.compose.material.ripple.rememberRipple import androidx.compose.material3.Icon import androidx.compose.material3.MaterialTheme @@ -46,6 +47,7 @@ fun VaultGroupListItem( onClick = onClick, ) .padding(vertical = 16.dp) + .padding(end = 8.dp) .then(modifier), verticalAlignment = Alignment.CenterVertically, horizontalArrangement = Arrangement.spacedBy(16.dp), @@ -73,6 +75,7 @@ fun VaultGroupListItem( painter = painterResource(id = R.drawable.ic_navigate_next), contentDescription = null, tint = MaterialTheme.colorScheme.onSurfaceVariant, + modifier = Modifier.size(24.dp), ) } } diff --git a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultScreen.kt b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultScreen.kt index e499a9f0e4..46a845c913 100644 --- a/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultScreen.kt +++ b/app/src/main/java/com/x8bit/bitwarden/ui/vault/feature/vault/VaultScreen.kt @@ -318,7 +318,12 @@ private fun VaultScreenScaffold( onVaultFilterTypeSelect = vaultFilterTypeSelect, topAppBarScrollBehavior = scrollBehavior, modifier = Modifier - .padding(horizontal = 16.dp) + .padding( + start = 16.dp, + // There is some built-in padding to the menu button that makes up + // the visual difference here. + end = 12.dp, + ) .fillMaxWidth(), )