From 60c5a0a4f8a11bf1cb655aefc1317b11771fcd9f Mon Sep 17 00:00:00 2001 From: Robert Linsener Date: Tue, 1 Nov 2022 00:11:44 +0300 Subject: [PATCH 01/11] Migrated to Material3 --- .../java/com/madrapps/plot/line/Components.kt | 12 ++++---- .../java/com/madrapps/plot/line/LineGraph.kt | 4 +-- .../madrapps/sample/linegraph/LineGraph3.kt | 8 ++--- .../madrapps/sample/linegraph/LineGraph4.kt | 14 ++++----- .../com/madrapps/sample/ui/theme/Shape.kt | 2 +- .../com/madrapps/sample/ui/theme/Theme.kt | 16 +++++----- .../java/com/madrapps/sample/ui/theme/Type.kt | 29 +------------------ 7 files changed, 29 insertions(+), 56 deletions(-) diff --git a/plot/src/main/java/com/madrapps/plot/line/Components.kt b/plot/src/main/java/com/madrapps/plot/line/Components.kt index 28925b2..0aeb66c 100644 --- a/plot/src/main/java/com/madrapps/plot/line/Components.kt +++ b/plot/src/main/java/com/madrapps/plot/line/Components.kt @@ -1,7 +1,7 @@ package com.madrapps.plot.line -import androidx.compose.material.MaterialTheme -import androidx.compose.material.Text +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.geometry.Offset import androidx.compose.ui.geometry.Rect @@ -288,8 +288,8 @@ data class LinePlot( text = value.string(), maxLines = 1, overflow = TextOverflow.Ellipsis, - style = MaterialTheme.typography.caption, - color = MaterialTheme.colors.onSurface + style = MaterialTheme.typography.labelMedium, + color = MaterialTheme.colorScheme.onSurface ) if (value > max) { break @@ -322,8 +322,8 @@ data class LinePlot( text = value.string(), maxLines = 1, overflow = TextOverflow.Ellipsis, - style = MaterialTheme.typography.caption, - color = MaterialTheme.colors.onSurface + style = MaterialTheme.typography.labelMedium, + color = MaterialTheme.colorScheme.onSurface ) } } diff --git a/plot/src/main/java/com/madrapps/plot/line/LineGraph.kt b/plot/src/main/java/com/madrapps/plot/line/LineGraph.kt index 16ff880..aa6a538 100644 --- a/plot/src/main/java/com/madrapps/plot/line/LineGraph.kt +++ b/plot/src/main/java/com/madrapps/plot/line/LineGraph.kt @@ -11,7 +11,7 @@ import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.wrapContentHeight import androidx.compose.foundation.layout.wrapContentWidth -import androidx.compose.material.MaterialTheme +import androidx.compose.material3.MaterialTheme import androidx.compose.runtime.Composable import androidx.compose.runtime.CompositionLocalProvider import androidx.compose.runtime.mutableStateOf @@ -74,7 +74,7 @@ fun LineGraph( val xZoom = remember { mutableStateOf(globalXScale) } val rowHeight = remember { mutableStateOf(0f) } val columnWidth = remember { mutableStateOf(0f) } - val bgColor = MaterialTheme.colors.surface + val bgColor = MaterialTheme.colorScheme.surface val lines = plot.lines val xUnit = plot.xAxis.unit diff --git a/sample/src/main/java/com/madrapps/sample/linegraph/LineGraph3.kt b/sample/src/main/java/com/madrapps/sample/linegraph/LineGraph3.kt index fe60d5e..e7ee712 100644 --- a/sample/src/main/java/com/madrapps/sample/linegraph/LineGraph3.kt +++ b/sample/src/main/java/com/madrapps/sample/linegraph/LineGraph3.kt @@ -3,8 +3,8 @@ package com.madrapps.sample.linegraph import androidx.compose.foundation.Canvas import androidx.compose.foundation.layout.fillMaxWidth import androidx.compose.foundation.layout.height -import androidx.compose.material.MaterialTheme -import androidx.compose.material.Text +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.ui.Alignment import androidx.compose.ui.Modifier @@ -38,7 +38,7 @@ internal fun LineGraph3(lines: List>) { androidx.compose.foundation.layout.Column { val isMajor = value % 4 == 0f val radius = if (isMajor) 6f else 3f - val color = MaterialTheme.colors.onSurface + val color = MaterialTheme.colorScheme.onSurface Canvas( modifier = Modifier .align(Alignment.CenterHorizontally) @@ -55,7 +55,7 @@ internal fun LineGraph3(lines: List>) { text = DecimalFormat("#.#").format(value), maxLines = 1, overflow = TextOverflow.Ellipsis, - style = MaterialTheme.typography.caption, + style = MaterialTheme.typography.labelMedium, color = color ) } diff --git a/sample/src/main/java/com/madrapps/sample/linegraph/LineGraph4.kt b/sample/src/main/java/com/madrapps/sample/linegraph/LineGraph4.kt index 6dffc53..4b01f41 100644 --- a/sample/src/main/java/com/madrapps/sample/linegraph/LineGraph4.kt +++ b/sample/src/main/java/com/madrapps/sample/linegraph/LineGraph4.kt @@ -9,9 +9,9 @@ import androidx.compose.foundation.layout.height import androidx.compose.foundation.layout.padding import androidx.compose.foundation.layout.size import androidx.compose.foundation.layout.width -import androidx.compose.material.MaterialTheme -import androidx.compose.material.Surface -import androidx.compose.material.Text +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.Surface +import androidx.compose.material3.Text import androidx.compose.runtime.Composable import androidx.compose.runtime.mutableStateOf import androidx.compose.runtime.remember @@ -69,7 +69,7 @@ internal fun LineGraph4(lines: List>, modifier: Modifier) { Text( modifier = Modifier.padding(vertical = 8.dp), text = "Score at $x:00 hrs", - style = MaterialTheme.typography.subtitle1, + style = MaterialTheme.typography.headlineMedium, color = Color.Gray ) ScoreRow("Today", value[1].y, Color.Blue) @@ -81,7 +81,7 @@ internal fun LineGraph4(lines: List>, modifier: Modifier) { } } val padding = 16.dp - MaterialTheme(colors = MaterialTheme.colors.copy(surface = Color.White)) { + MaterialTheme(colorScheme = MaterialTheme.colorScheme.copy(surface = Color.White)) { LineGraph( plot = LinePlot( listOf( @@ -150,7 +150,7 @@ private fun ScoreRow(title: String, value: Float, color: Color) { ) Text( text = title, - style = MaterialTheme.typography.subtitle1, + style = MaterialTheme.typography.headlineMedium, color = Color.DarkGray ) } @@ -159,7 +159,7 @@ private fun ScoreRow(title: String, value: Float, color: Color) { .padding(end = 8.dp) .align(Alignment.CenterEnd), text = formatted, - style = MaterialTheme.typography.subtitle2, + style = MaterialTheme.typography.headlineSmall, color = Color.DarkGray ) } diff --git a/sample/src/main/java/com/madrapps/sample/ui/theme/Shape.kt b/sample/src/main/java/com/madrapps/sample/ui/theme/Shape.kt index 3be07a5..63111f5 100644 --- a/sample/src/main/java/com/madrapps/sample/ui/theme/Shape.kt +++ b/sample/src/main/java/com/madrapps/sample/ui/theme/Shape.kt @@ -1,7 +1,7 @@ package com.madrapps.sample.ui.theme import androidx.compose.foundation.shape.RoundedCornerShape -import androidx.compose.material.Shapes +import androidx.compose.material3.Shapes import androidx.compose.ui.unit.dp val Shapes = Shapes( diff --git a/sample/src/main/java/com/madrapps/sample/ui/theme/Theme.kt b/sample/src/main/java/com/madrapps/sample/ui/theme/Theme.kt index 105cb1f..e350d17 100644 --- a/sample/src/main/java/com/madrapps/sample/ui/theme/Theme.kt +++ b/sample/src/main/java/com/madrapps/sample/ui/theme/Theme.kt @@ -1,25 +1,25 @@ package com.madrapps.sample.ui.theme import androidx.compose.foundation.isSystemInDarkTheme -import androidx.compose.material.MaterialTheme -import androidx.compose.material.darkColors -import androidx.compose.material.lightColors +import androidx.compose.material3.MaterialTheme +import androidx.compose.material3.darkColorScheme +import androidx.compose.material3.lightColorScheme import androidx.compose.runtime.Composable import androidx.compose.ui.graphics.Color -private val DarkColorPalette = darkColors( +private val DarkColorPalette = darkColorScheme( primary = Purple200, - primaryVariant = Purple700, secondary = Teal200, + tertiary = Purple700, background = Color.White, onSurface = Color.Black, surface = Grey50 ) -private val LightColorPalette = lightColors( +private val LightColorPalette = lightColorScheme( primary = Purple500, - primaryVariant = Purple700, secondary = Teal200, + tertiary = Purple700, background = Color.White, onSurface = Color.Black, surface = Grey50 @@ -43,7 +43,7 @@ fun PlotTheme(darkTheme: Boolean = isSystemInDarkTheme(), content: @Composable ( } MaterialTheme( - colors = colors, + colorScheme = colors, typography = Typography, shapes = Shapes, content = content diff --git a/sample/src/main/java/com/madrapps/sample/ui/theme/Type.kt b/sample/src/main/java/com/madrapps/sample/ui/theme/Type.kt index 57210a6..49050e6 100644 --- a/sample/src/main/java/com/madrapps/sample/ui/theme/Type.kt +++ b/sample/src/main/java/com/madrapps/sample/ui/theme/Type.kt @@ -1,35 +1,8 @@ package com.madrapps.sample.ui.theme -import androidx.compose.material.Typography -import androidx.compose.ui.text.TextStyle -import androidx.compose.ui.text.font.FontFamily -import androidx.compose.ui.text.font.FontWeight -import androidx.compose.ui.unit.sp +import androidx.compose.material3.Typography // Set of Material typography styles to start with val Typography = Typography( - body1 = TextStyle( - fontFamily = FontFamily.Default, - fontWeight = FontWeight.Normal, - fontSize = 16.sp - ), - caption = TextStyle( - fontFamily = FontFamily.Default, - fontWeight = FontWeight.Normal, - fontSize = 14.sp, - lineHeight = 18.sp - ), - subtitle1 = TextStyle( - fontFamily = FontFamily.SansSerif, - fontWeight = FontWeight.Normal, - fontSize = 16.sp, - lineHeight = 18.sp - ), - subtitle2 = TextStyle( - fontFamily = FontFamily.SansSerif, - fontWeight = FontWeight.Medium, - fontSize = 16.sp, - lineHeight = 18.sp - ) ) From 9511d16179b9ac0bf7b0b8913bb1807cc682ef4b Mon Sep 17 00:00:00 2001 From: Robert Linsener Date: Tue, 1 Nov 2022 00:03:39 +0300 Subject: [PATCH 02/11] Updated Gradle Version to 7.3.1 and Kotlin Version to 1.7.20 --- build.gradle.kts | 4 ++-- gradle/wrapper/gradle-wrapper.properties | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index 63c1c06..d3114bd 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -6,8 +6,8 @@ buildscript { mavenCentral() } dependencies { - classpath("com.android.tools.build:gradle:7.0.1") - classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.5.21") + classpath("com.android.tools.build:gradle:7.3.1") + classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.7.20") // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle.kts files diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index be18468..48bba24 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ #Thu Jul 22 19:40:39 IST 2021 distributionBase=GRADLE_USER_HOME -distributionUrl=https\://services.gradle.org/distributions/gradle-7.2-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-bin.zip distributionPath=wrapper/dists zipStorePath=wrapper/dists zipStoreBase=GRADLE_USER_HOME From 71e66d1343397c8f4e4c06d1510b07801f037b6d Mon Sep 17 00:00:00 2001 From: Robert Linsener Date: Tue, 1 Nov 2022 00:04:44 +0300 Subject: [PATCH 03/11] Updated SDK to 33 --- plot/build.gradle.kts | 4 ++-- sample/build.gradle.kts | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/plot/build.gradle.kts b/plot/build.gradle.kts index 340577b..5c9d53e 100644 --- a/plot/build.gradle.kts +++ b/plot/build.gradle.kts @@ -16,11 +16,11 @@ ext { apply(from = "publish.gradle") android { - compileSdk = 30 + compileSdk = 33 defaultConfig { minSdk = 21 - targetSdk = 30 + targetSdk = 33 version = libVersion testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner" } diff --git a/sample/build.gradle.kts b/sample/build.gradle.kts index 710e174..7783315 100644 --- a/sample/build.gradle.kts +++ b/sample/build.gradle.kts @@ -4,13 +4,13 @@ plugins { } android { - compileSdk = 30 + compileSdk = 33 buildToolsVersion = "30.0.3" defaultConfig { applicationId = "com.madrapps.plot" minSdk = 21 - targetSdk = 30 + targetSdk = 33 versionCode = 1 versionName = "0.1.0" From 218889936056f212057002d71a4f7c9235bd4663 Mon Sep 17 00:00:00 2001 From: Robert Linsener Date: Tue, 1 Nov 2022 00:05:35 +0300 Subject: [PATCH 04/11] Removed deprecated jcenter --- settings.gradle.kts | 1 - 1 file changed, 1 deletion(-) diff --git a/settings.gradle.kts b/settings.gradle.kts index 4495a96..fde8be4 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -3,7 +3,6 @@ dependencyResolutionManagement { repositories { google() mavenCentral() - jcenter() // Warning: this repository is going to shut down soon } } rootProject.name = "plot" From 69cbbd087040d655eeb004fef1629257d55c3c18 Mon Sep 17 00:00:00 2001 From: Robert Linsener Date: Tue, 1 Nov 2022 00:06:51 +0300 Subject: [PATCH 05/11] Added kotlinCompilerExtensionVersion and set to latest 1.3.2 --- build.gradle.kts | 3 ++- plot/build.gradle.kts | 2 +- sample/build.gradle.kts | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/build.gradle.kts b/build.gradle.kts index d3114bd..df335e0 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -1,6 +1,7 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { - val compose_version by extra("1.0.1") + val kotlinCompilerExtensionVersion by extra("1.3.2") + repositories { google() mavenCentral() diff --git a/plot/build.gradle.kts b/plot/build.gradle.kts index 5c9d53e..36118c6 100644 --- a/plot/build.gradle.kts +++ b/plot/build.gradle.kts @@ -45,7 +45,7 @@ android { compose = true } composeOptions { - kotlinCompilerExtensionVersion = rootProject.extra["compose_version"] as String + kotlinCompilerExtensionVersion = rootProject.extra["kotlinCompilerExtensionVersion"] as String } lint { isAbortOnError = true diff --git a/sample/build.gradle.kts b/sample/build.gradle.kts index 7783315..7858994 100644 --- a/sample/build.gradle.kts +++ b/sample/build.gradle.kts @@ -41,7 +41,7 @@ android { compose = true } composeOptions { - kotlinCompilerExtensionVersion = rootProject.extra["compose_version"] as String + kotlinCompilerExtensionVersion = rootProject.extra["kotlinCompilerExtensionVersion"] as String } lint { isAbortOnError = true From afd408cd440ed9e14d5eb6e5d8f4c8de9510dd0c Mon Sep 17 00:00:00 2001 From: Robert Linsener Date: Tue, 1 Nov 2022 00:07:53 +0300 Subject: [PATCH 06/11] Moved namespace from Manifest to build.gradle --- plot/build.gradle.kts | 1 + plot/src/main/AndroidManifest.xml | 2 +- sample/build.gradle.kts | 1 + sample/src/main/AndroidManifest.xml | 4 +--- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/plot/build.gradle.kts b/plot/build.gradle.kts index 36118c6..0af2f84 100644 --- a/plot/build.gradle.kts +++ b/plot/build.gradle.kts @@ -51,6 +51,7 @@ android { isAbortOnError = true isWarningsAsErrors = true } + namespace = "com.madrapps.plot" } dependencies { diff --git a/plot/src/main/AndroidManifest.xml b/plot/src/main/AndroidManifest.xml index b9a6cdd..8072ee0 100644 --- a/plot/src/main/AndroidManifest.xml +++ b/plot/src/main/AndroidManifest.xml @@ -1,2 +1,2 @@ - + diff --git a/sample/build.gradle.kts b/sample/build.gradle.kts index 7858994..0102444 100644 --- a/sample/build.gradle.kts +++ b/sample/build.gradle.kts @@ -47,6 +47,7 @@ android { isAbortOnError = true isWarningsAsErrors = true } + namespace = "com.madrapps.sample" } dependencies { diff --git a/sample/src/main/AndroidManifest.xml b/sample/src/main/AndroidManifest.xml index 55cb6d4..2151fb1 100644 --- a/sample/src/main/AndroidManifest.xml +++ b/sample/src/main/AndroidManifest.xml @@ -1,6 +1,5 @@ - + From b8f221372832d4e747ae656367b2a827933b5ac4 Mon Sep 17 00:00:00 2001 From: Robert Linsener Date: Tue, 1 Nov 2022 00:10:26 +0300 Subject: [PATCH 07/11] Updated dependencies, added compose BOM (2022.10.00) --- plot/build.gradle.kts | 20 ++++++++++++++------ sample/build.gradle.kts | 28 ++++++++++++++++++---------- 2 files changed, 32 insertions(+), 16 deletions(-) diff --git a/plot/build.gradle.kts b/plot/build.gradle.kts index 0af2f84..db51664 100644 --- a/plot/build.gradle.kts +++ b/plot/build.gradle.kts @@ -55,12 +55,20 @@ android { } dependencies { - implementation("androidx.core:core-ktx:1.6.0") - implementation("androidx.appcompat:appcompat:1.3.1") - implementation("com.google.android.material:material:1.4.0") - implementation("androidx.compose.ui:ui:${rootProject.extra["compose_version"]}") - implementation("androidx.compose.material:material:${rootProject.extra["compose_version"]}") - implementation("androidx.compose.ui:ui-tooling:${rootProject.extra["compose_version"]}") + implementation("androidx.core:core-ktx:1.9.0") + implementation("androidx.appcompat:appcompat:1.5.1") + implementation("com.google.android.material:material:1.7.0") + + // Compose + val composeBom = platform("androidx.compose:compose-bom:2022.10.00") + implementation(composeBom) + androidTestImplementation(composeBom) + implementation("androidx.compose.material3:material3") + implementation("androidx.compose.ui:ui") + implementation("androidx.compose.ui:ui-tooling-preview") + debugImplementation("androidx.compose.ui:ui-tooling") + androidTestImplementation("androidx.compose.ui:ui-test-junit4") + implementation("androidx.activity:activity-compose:1.6.1") testImplementation("junit:junit:4.13.2") androidTestImplementation("androidx.test.ext:junit:1.1.3") diff --git a/sample/build.gradle.kts b/sample/build.gradle.kts index 0102444..3681100 100644 --- a/sample/build.gradle.kts +++ b/sample/build.gradle.kts @@ -54,16 +54,24 @@ dependencies { // implementation(project(mapOf("path" to ":plot"))) implementation("com.github.madrapps:plot:0.1.1") - implementation("androidx.core:core-ktx:1.6.0") - implementation("androidx.appcompat:appcompat:1.3.1") - implementation("com.google.android.material:material:1.4.0") - implementation("androidx.compose.ui:ui:${rootProject.extra["compose_version"]}") - implementation("androidx.compose.material:material:${rootProject.extra["compose_version"]}") - implementation("androidx.compose.ui:ui-tooling:${rootProject.extra["compose_version"]}") - implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.3.1") - implementation("androidx.activity:activity-compose:1.3.1") - implementation("androidx.activity:activity-ktx:1.3.1") - implementation("androidx.compose.runtime:runtime-livedata:${rootProject.extra["compose_version"]}") + implementation("androidx.core:core-ktx:1.9.0") + implementation("androidx.appcompat:appcompat:1.5.1") + implementation("com.google.android.material:material:1.7.0") + + // Compose + val composeBom = platform("androidx.compose:compose-bom:2022.10.00") + implementation(composeBom) + androidTestImplementation(composeBom) + implementation("androidx.compose.material3:material3") + implementation("androidx.compose.ui:ui") + implementation("androidx.compose.ui:ui-tooling-preview") + debugImplementation("androidx.compose.ui:ui-tooling") + androidTestImplementation("androidx.compose.ui:ui-test-junit4") + implementation("androidx.activity:activity-compose:1.6.1") + + /*implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.5.1") + implementation("androidx.activity:activity-ktx:1.6.1") + implementation("androidx.compose.runtime:runtime-livedata:${rootProject.extra["compose_version"]}")*/ testImplementation("junit:junit:4.13.2") androidTestImplementation("androidx.test.ext:junit:1.1.3") From 26826b34133565a7f422209777a4831de8ac9002 Mon Sep 17 00:00:00 2001 From: Robert Linsener Date: Tue, 1 Nov 2022 00:10:36 +0300 Subject: [PATCH 08/11] Updated dependencies, added compose BOM (2022.10.00) --- plot/build.gradle.kts | 1 - sample/build.gradle.kts | 1 - 2 files changed, 2 deletions(-) diff --git a/plot/build.gradle.kts b/plot/build.gradle.kts index db51664..4021e2a 100644 --- a/plot/build.gradle.kts +++ b/plot/build.gradle.kts @@ -73,5 +73,4 @@ dependencies { testImplementation("junit:junit:4.13.2") androidTestImplementation("androidx.test.ext:junit:1.1.3") androidTestImplementation("androidx.test.espresso:espresso-core:3.4.0") - androidTestImplementation("androidx.compose.ui:ui-test-junit4:${rootProject.extra["compose_version"]}") } diff --git a/sample/build.gradle.kts b/sample/build.gradle.kts index 3681100..3a53b9b 100644 --- a/sample/build.gradle.kts +++ b/sample/build.gradle.kts @@ -76,5 +76,4 @@ dependencies { testImplementation("junit:junit:4.13.2") androidTestImplementation("androidx.test.ext:junit:1.1.3") androidTestImplementation("androidx.test.espresso:espresso-core:3.4.0") - androidTestImplementation("androidx.compose.ui:ui-test-junit4:${rootProject.extra["compose_version"]}") } \ No newline at end of file From 81cc628143cba303f6318f0b377a3ebddd5b1aa6 Mon Sep 17 00:00:00 2001 From: Robert Linsener Date: Tue, 1 Nov 2022 00:13:21 +0300 Subject: [PATCH 09/11] Removed unnecessary Api check --- sample/src/main/res/values-night/themes.xml | 2 +- sample/src/main/res/values/themes.xml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sample/src/main/res/values-night/themes.xml b/sample/src/main/res/values-night/themes.xml index 760ba11..ded03cf 100644 --- a/sample/src/main/res/values-night/themes.xml +++ b/sample/src/main/res/values-night/themes.xml @@ -10,7 +10,7 @@ @color/teal_200 @color/black - ?attr/colorPrimaryVariant + ?attr/colorPrimaryVariant \ No newline at end of file diff --git a/sample/src/main/res/values/themes.xml b/sample/src/main/res/values/themes.xml index 9112a6c..f2c393c 100644 --- a/sample/src/main/res/values/themes.xml +++ b/sample/src/main/res/values/themes.xml @@ -10,7 +10,7 @@ @color/teal_700 @color/black - ?attr/colorPrimaryVariant + ?attr/colorPrimaryVariant From 6874dc9e5c879e2b4a8a4d0e3a3e238a6836bb8a Mon Sep 17 00:00:00 2001 From: Robert Linsener Date: Tue, 1 Nov 2022 00:55:01 +0300 Subject: [PATCH 10/11] Applied recommended code changes --- .../main/java/com/madrapps/plot/Gestures.kt | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/plot/src/main/java/com/madrapps/plot/Gestures.kt b/plot/src/main/java/com/madrapps/plot/Gestures.kt index 5791349..f9f8c56 100644 --- a/plot/src/main/java/com/madrapps/plot/Gestures.kt +++ b/plot/src/main/java/com/madrapps/plot/Gestures.kt @@ -1,5 +1,6 @@ package com.madrapps.plot +import android.annotation.SuppressLint import androidx.compose.foundation.gestures.awaitFirstDown import androidx.compose.foundation.gestures.calculateCentroidSize import androidx.compose.foundation.gestures.calculateZoom @@ -13,18 +14,15 @@ import androidx.compose.ui.input.pointer.PointerInputChange import androidx.compose.ui.input.pointer.PointerInputScope import androidx.compose.ui.input.pointer.changedToUp import androidx.compose.ui.input.pointer.changedToUpIgnoreConsumed -import androidx.compose.ui.input.pointer.consumeAllChanges -import androidx.compose.ui.input.pointer.consumeDownChange -import androidx.compose.ui.input.pointer.consumePositionChange import androidx.compose.ui.input.pointer.isOutOfBounds import androidx.compose.ui.input.pointer.positionChange -import androidx.compose.ui.input.pointer.positionChangeConsumed import androidx.compose.ui.input.pointer.positionChanged import kotlinx.coroutines.TimeoutCancellationException import kotlinx.coroutines.withTimeout import kotlin.coroutines.cancellation.CancellationException import kotlin.math.abs +@SuppressLint("ReturnFromAwaitPointerEventScope", "MultipleAwaitPointerEventScopes") @SuppressWarnings("LoopWithTooManyJumpStatements") internal suspend fun PointerInputScope.detectDragZoomGesture( isZoomAllowed: Boolean = false, @@ -47,7 +45,7 @@ internal suspend fun PointerInputScope.detectDragZoomGesture( do { val event = awaitPointerEvent() - val canceled = event.changes.any { it.positionChangeConsumed() } + val canceled = event.changes.any { it.isConsumed } if (event.changes.size == 1) { break } else if (event.changes.size == 2) { @@ -72,7 +70,7 @@ internal suspend fun PointerInputScope.detectDragZoomGesture( } event.changes.forEach { if (it.positionChanged()) { - it.consumeAllChanges() + it.consume() } } } @@ -93,13 +91,13 @@ internal suspend fun PointerInputScope.detectDragZoomGesture( if ( drag(drag.id) { onDrag(it, it.positionChange()) - it.consumePositionChange() + if (it.positionChange() != Offset.Zero) it.consume() } ) { // consume up if we quit drag gracefully with the up currentEvent.changes.forEach { if (it.changedToUp()) { - it.consumeDownChange() + if (it.pressed != it.previousPressed) it.consume() } } onDragEnd() @@ -136,7 +134,11 @@ private suspend fun PointerInputScope.awaitLongPressOrCancellation( } if ( - event.changes.any { it.consumed.downChange || it.isOutOfBounds(size) } + event.changes.any { it.isConsumed || it.isOutOfBounds( + size, + extendedTouchPadding + ) + } ) { finished = true // Canceled } @@ -145,7 +147,7 @@ private suspend fun PointerInputScope.awaitLongPressOrCancellation( // the existing pointer event because it comes after the Main pass we checked // above. val consumeCheck = awaitPointerEvent(PointerEventPass.Final) - if (consumeCheck.changes.any { it.positionChangeConsumed() }) { + if (consumeCheck.changes.any { it.isConsumed }) { finished = true } if (!event.isPointerUp(currentDown.id)) { From 399e40d2e2c2336885f049eb46fe5af6ff9a501f Mon Sep 17 00:00:00 2001 From: Robert Linsener Date: Tue, 1 Nov 2022 00:55:29 +0300 Subject: [PATCH 11/11] Changed lint syntax --- plot/build.gradle.kts | 4 ++-- sample/build.gradle.kts | 9 ++------- 2 files changed, 4 insertions(+), 9 deletions(-) diff --git a/plot/build.gradle.kts b/plot/build.gradle.kts index 4021e2a..92b15b6 100644 --- a/plot/build.gradle.kts +++ b/plot/build.gradle.kts @@ -48,8 +48,8 @@ android { kotlinCompilerExtensionVersion = rootProject.extra["kotlinCompilerExtensionVersion"] as String } lint { - isAbortOnError = true - isWarningsAsErrors = true + abortOnError = true + warningsAsErrors = true } namespace = "com.madrapps.plot" } diff --git a/sample/build.gradle.kts b/sample/build.gradle.kts index 3a53b9b..3cd142d 100644 --- a/sample/build.gradle.kts +++ b/sample/build.gradle.kts @@ -35,7 +35,6 @@ android { } kotlinOptions { jvmTarget = "1.8" - useIR = true } buildFeatures { compose = true @@ -44,8 +43,8 @@ android { kotlinCompilerExtensionVersion = rootProject.extra["kotlinCompilerExtensionVersion"] as String } lint { - isAbortOnError = true - isWarningsAsErrors = true + abortOnError = true + warningsAsErrors = true } namespace = "com.madrapps.sample" } @@ -69,10 +68,6 @@ dependencies { androidTestImplementation("androidx.compose.ui:ui-test-junit4") implementation("androidx.activity:activity-compose:1.6.1") - /*implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.5.1") - implementation("androidx.activity:activity-ktx:1.6.1") - implementation("androidx.compose.runtime:runtime-livedata:${rootProject.extra["compose_version"]}")*/ - testImplementation("junit:junit:4.13.2") androidTestImplementation("androidx.test.ext:junit:1.1.3") androidTestImplementation("androidx.test.espresso:espresso-core:3.4.0")