From 1e3965a3a8c8d3717ff78175f96ba968b0d183e5 Mon Sep 17 00:00:00 2001 From: Sanju S Date: Fri, 2 Oct 2020 15:08:49 +0530 Subject: [PATCH] Update Gradle versions, Update Stack Layout (Deprecated) -> Box Layout & Add Bulb Icon Signed-off-by: Sanju S --- app/build.gradle | 4 ++-- .../www/spikeysanju/jetquotes/components/CTAButtons.kt | 10 ++++++---- .../www/spikeysanju/jetquotes/components/DetailCard.kt | 5 +++-- .../www/spikeysanju/jetquotes/components/QuotesCard.kt | 2 +- .../jetquotes/components/QuotesThemeSwitch.kt | 2 +- .../www/spikeysanju/jetquotes/view/QuoteDetails.kt | 3 --- .../www/spikeysanju/jetquotes/view/QuotesActivity.kt | 3 --- build.gradle | 4 ++-- 8 files changed, 15 insertions(+), 18 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index 177afe5..959af81 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -74,13 +74,13 @@ android { dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" - implementation 'androidx.core:core-ktx:1.3.1' + implementation 'androidx.core:core-ktx:1.3.2' implementation 'androidx.appcompat:appcompat:1.2.0' implementation 'com.google.android.material:material:1.2.1' implementation "androidx.compose.ui:ui:$compose_version" implementation "androidx.compose.material:material:$compose_version" implementation "androidx.ui:ui-tooling:$compose_version" - implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.3.0-alpha07' + implementation 'androidx.lifecycle:lifecycle-runtime-ktx:2.3.0-beta01' testImplementation 'junit:junit:4.13' androidTestImplementation 'androidx.test.ext:junit:1.1.2' androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' diff --git a/app/src/main/java/www/spikeysanju/jetquotes/components/CTAButtons.kt b/app/src/main/java/www/spikeysanju/jetquotes/components/CTAButtons.kt index a694e0d..226d01e 100644 --- a/app/src/main/java/www/spikeysanju/jetquotes/components/CTAButtons.kt +++ b/app/src/main/java/www/spikeysanju/jetquotes/components/CTAButtons.kt @@ -46,10 +46,12 @@ import www.spikeysanju.jetquotes.utils.shareToOthers @Composable fun CTAButtons(quote: String, author: String) { val context = ContextAmbient.current - Stack(modifier = Modifier.fillMaxSize()) { - Row(modifier = Modifier.background(MaterialTheme.colors.primaryVariant) - .align(Alignment.BottomEnd) - .padding(30.dp, 30.dp, 0.dp, 30.dp)) { + Box(modifier = Modifier.fillMaxSize()) { + Row( + modifier = Modifier.background(MaterialTheme.colors.primaryVariant) + .align(Alignment.BottomEnd) + .padding(30.dp, 30.dp, 0.dp, 30.dp) + ) { Button( icon = vectorResource(id = R.drawable.ic_copy), diff --git a/app/src/main/java/www/spikeysanju/jetquotes/components/DetailCard.kt b/app/src/main/java/www/spikeysanju/jetquotes/components/DetailCard.kt index ebc90f5..128afbb 100644 --- a/app/src/main/java/www/spikeysanju/jetquotes/components/DetailCard.kt +++ b/app/src/main/java/www/spikeysanju/jetquotes/components/DetailCard.kt @@ -47,13 +47,14 @@ import www.spikeysanju.jetquotes.utils.copyToClipboard fun DetailCard(quote: String, author: String) { val context = ContextAmbient.current - Stack(modifier = Modifier.fillMaxSize()) { + Box(modifier = Modifier.fillMaxSize()) { Column( modifier = Modifier.clickable(onClick = { context.copyToClipboard(quote.plus("").plus("- $author")) Toast.makeText(context, "Quote copied!", Toast.LENGTH_SHORT).show() - }).background(MaterialTheme.colors.primaryVariant).padding(40.dp).align(Alignment.Center).padding(12.dp), + }).background(MaterialTheme.colors.primaryVariant).padding(40.dp) + .align(Alignment.Center).padding(12.dp), ) { diff --git a/app/src/main/java/www/spikeysanju/jetquotes/components/QuotesCard.kt b/app/src/main/java/www/spikeysanju/jetquotes/components/QuotesCard.kt index 2a612c6..d3433ba 100644 --- a/app/src/main/java/www/spikeysanju/jetquotes/components/QuotesCard.kt +++ b/app/src/main/java/www/spikeysanju/jetquotes/components/QuotesCard.kt @@ -66,7 +66,7 @@ fun QuotesCard(quote: Quote) { Spacer(Modifier.preferredHeight(12.dp)) - Stack(modifier = Modifier.fillMaxSize()) { + Box(modifier = Modifier.fillMaxSize()) { Text( modifier = Modifier.align(Alignment.CenterEnd).padding(12.dp), text = quote.author.toString().ifBlank { " - Unknown" }, diff --git a/app/src/main/java/www/spikeysanju/jetquotes/components/QuotesThemeSwitch.kt b/app/src/main/java/www/spikeysanju/jetquotes/components/QuotesThemeSwitch.kt index b2aaf45..97e6bf8 100644 --- a/app/src/main/java/www/spikeysanju/jetquotes/components/QuotesThemeSwitch.kt +++ b/app/src/main/java/www/spikeysanju/jetquotes/components/QuotesThemeSwitch.kt @@ -39,6 +39,6 @@ import www.spikeysanju.jetquotes.R @Composable fun QuotesThemeSwitch(onToggle: () -> Unit) { - val icon = vectorResource(R.drawable.ic_share) + val icon = vectorResource(R.drawable.ic_day) Icon(icon, Modifier.padding(end = 8.dp).clickable(onClick = onToggle)) } diff --git a/app/src/main/java/www/spikeysanju/jetquotes/view/QuoteDetails.kt b/app/src/main/java/www/spikeysanju/jetquotes/view/QuoteDetails.kt index 8fb0267..610a666 100644 --- a/app/src/main/java/www/spikeysanju/jetquotes/view/QuoteDetails.kt +++ b/app/src/main/java/www/spikeysanju/jetquotes/view/QuoteDetails.kt @@ -31,14 +31,12 @@ package www.spikeysanju.jetquotes.view import android.os.Bundle import androidx.appcompat.app.AppCompatActivity import androidx.compose.foundation.Text -import androidx.compose.foundation.layout.RowScope.align import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.material.MaterialTheme import androidx.compose.material.Scaffold import androidx.compose.material.Surface import androidx.compose.material.TopAppBar import androidx.compose.runtime.Composable -import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.platform.setContent import androidx.compose.ui.text.style.TextAlign @@ -76,7 +74,6 @@ fun DetailQuoteApp(quote: String, author: String) { title = { Text(text = "JetQuotes", textAlign = TextAlign.Center, modifier = Modifier.fillMaxWidth()) }, backgroundColor = MaterialTheme.colors.primary, contentColor = MaterialTheme.colors.onPrimary, - modifier = Modifier.align(Alignment.CenterVertically), elevation = 0.dp ) }, bodyContent = { diff --git a/app/src/main/java/www/spikeysanju/jetquotes/view/QuotesActivity.kt b/app/src/main/java/www/spikeysanju/jetquotes/view/QuotesActivity.kt index 6ab1add..9eb165d 100644 --- a/app/src/main/java/www/spikeysanju/jetquotes/view/QuotesActivity.kt +++ b/app/src/main/java/www/spikeysanju/jetquotes/view/QuotesActivity.kt @@ -35,7 +35,6 @@ import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.app.AppCompatDelegate import androidx.compose.foundation.Text import androidx.compose.foundation.isSystemInDarkTheme -import androidx.compose.foundation.layout.RowScope.align import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.material.MaterialTheme import androidx.compose.material.Scaffold @@ -44,7 +43,6 @@ import androidx.compose.material.TopAppBar import androidx.compose.runtime.Composable import androidx.compose.runtime.collectAsState import androidx.compose.runtime.getValue -import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier import androidx.compose.ui.platform.ContextAmbient import androidx.compose.ui.platform.setContent @@ -161,7 +159,6 @@ fun App(toggleTheme: () -> Unit) { }, backgroundColor = MaterialTheme.colors.primary, contentColor = MaterialTheme.colors.onPrimary, - modifier = Modifier.align(Alignment.CenterVertically), elevation = 0.dp, actions = { QuotesThemeSwitch(toggleTheme) diff --git a/build.gradle b/build.gradle index 2efd1e8..c367b81 100644 --- a/build.gradle +++ b/build.gradle @@ -29,7 +29,7 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { ext { - compose_version = '1.0.0-alpha03' + compose_version = '1.0.0-alpha04' } ext.kotlin_version = "1.4.10" repositories { @@ -37,7 +37,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:4.2.0-alpha12' + classpath 'com.android.tools.build:gradle:4.2.0-alpha13' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" // NOTE: Do not place your application dependencies here; they belong