Skip to content

Commit

Permalink
Fix issue 2664 - Refactor new screens to use Material 3 design (#2665)
Browse files Browse the repository at this point in the history
* Refactor AttributionsScreen

* Refactor ContributorsScreen

* Update dependencies in FeaturesScreen's build.gradle

* Show contributors count on ContributorsScreen
  • Loading branch information
nicolegeorgieva committed Sep 22, 2023
1 parent a2aa50b commit 20d8480
Show file tree
Hide file tree
Showing 6 changed files with 31 additions and 30 deletions.
4 changes: 4 additions & 0 deletions ivy-design/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,8 @@ plugins {

android {
namespace = "com.ivy.design"
}

dependencies {
implementation(projects.ivyResources)
}
3 changes: 1 addition & 2 deletions screen-attributions/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,7 @@ android {
dependencies {
implementation(projects.ivyCore)
implementation(projects.ivyResources)
implementation(projects.tempOldDesign)
implementation(projects.ivyNavigation)
implementation(projects.ivyCoreUi)
implementation(projects.tempLegacyCode)
implementation(projects.ivyDesign)
}
Original file line number Diff line number Diff line change
Expand Up @@ -16,22 +16,18 @@ import androidx.compose.material3.Card
import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.Icon
import androidx.compose.material3.IconButton
import androidx.compose.material3.MaterialTheme
import androidx.compose.material3.Scaffold
import androidx.compose.material3.Text
import androidx.compose.material3.TopAppBar
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.platform.LocalUriHandler
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.text.style.TextOverflow
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import androidx.lifecycle.viewmodel.compose.viewModel
import com.ivy.design.l0_system.Gray
import com.ivy.design.l0_system.UI
import com.ivy.design.l0_system.style
import com.ivy.legacy.IvyWalletPreview
import com.ivy.design.system.IvyPreview
import com.ivy.navigation.Navigation
import com.ivy.navigation.navigation
import kotlinx.collections.immutable.ImmutableList
Expand All @@ -57,7 +53,7 @@ private fun AttributionsUI(
topBar = {
TopAppBar(
title = {
TopAppBarTitle(text = "Attributions")
TopAppBarTitle(title = "Attributions")
},
navigationIcon = {
BackButton(nav = nav)
Expand All @@ -71,14 +67,11 @@ private fun AttributionsUI(
}

@Composable
private fun TopAppBarTitle(text: String) {
private fun TopAppBarTitle(title: String) {
Text(
text = text,
text = title,
maxLines = 1,
overflow = TextOverflow.Ellipsis,
style = UI.typo.h2.style(
fontWeight = FontWeight.Black
)
overflow = TextOverflow.Ellipsis
)
}

Expand Down Expand Up @@ -151,16 +144,13 @@ private fun AttributionCard(attribution: AttributionItem.Attribution) {

@Composable
private fun AttributionsSectionDivider(
text: String,
color: Color = Gray
text: String
) {
Text(
modifier = Modifier.padding(start = 12.dp),
text = text,
style = UI.typo.b2.style(
color = color,
fontWeight = FontWeight.Bold
)
style = MaterialTheme.typography.labelLarge,
color = MaterialTheme.colorScheme.tertiary
)
}

Expand Down Expand Up @@ -193,7 +183,7 @@ private fun AttributionsUIPreview() {
)
)

IvyWalletPreview {
IvyPreview {
AttributionsUI(uiState = AttributionsState(attributionItems))
}
}
4 changes: 2 additions & 2 deletions screen-contributors/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,6 @@ dependencies {
implementation(projects.ivyCoreUi)

implementation(libs.bundles.ktor)
implementation(projects.tempLegacyCode)
implementation(projects.tempOldDesign)

implementation(projects.ivyDesign)
}
Original file line number Diff line number Diff line change
Expand Up @@ -42,7 +42,7 @@ import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import androidx.lifecycle.viewmodel.compose.viewModel
import coil.compose.AsyncImage
import com.ivy.legacy.IvyWalletPreview
import com.ivy.design.system.IvyPreview
import com.ivy.navigation.Navigation
import com.ivy.navigation.navigation
import com.ivy.resources.R
Expand Down Expand Up @@ -74,7 +74,15 @@ private fun ContributorsUi(
topBar = {
TopAppBar(
title = {
TopAppBarTitle(title = "Contributors")
TopAppBarTitle(
title = when (uiState.contributorsResponse) {
is ContributorsResponse.Error, ContributorsResponse.Loading ->
"Contributors"

is ContributorsResponse.Success ->
"${uiState.contributorsResponse.contributors.size} Contributors"
}
)
},
navigationIcon = {
BackButton(nav = nav)
Expand Down Expand Up @@ -344,7 +352,7 @@ private fun GitHubButton(
@Preview
@Composable
private fun PreviewSuccess() {
IvyWalletPreview {
IvyPreview {
ContributorsUi(
uiState = ContributorsState(
projectResponse = ProjectResponse.Success(
Expand Down Expand Up @@ -373,7 +381,7 @@ private fun PreviewSuccess() {
@Preview
@Composable
private fun PreviewError() {
IvyWalletPreview {
IvyPreview {
ContributorsUi(
uiState = ContributorsState(
projectResponse = ProjectResponse.Error,
Expand All @@ -387,7 +395,7 @@ private fun PreviewError() {
@Preview
@Composable
private fun PreviewLoading() {
IvyWalletPreview {
IvyPreview {
ContributorsUi(
uiState = ContributorsState(
projectResponse = ProjectResponse.Loading,
Expand Down
2 changes: 1 addition & 1 deletion screen-features/build.gradle.kts
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ android {
dependencies {
implementation(projects.ivyCore)
implementation(projects.ivyResources)
implementation(projects.tempOldDesign)
implementation(projects.ivyNavigation)
implementation(projects.ivyCoreUi)
implementation(projects.ivyDesign)
}

0 comments on commit 20d8480

Please sign in to comment.