diff --git a/.travis.yml b/.travis.yml index 0ca2c03a..1baa9238 100644 --- a/.travis.yml +++ b/.travis.yml @@ -14,7 +14,7 @@ cache: branches: only: - develop - - 0.10.0 + - 0.10.1 android: licenses: diff --git a/app/build.gradle b/app/build.gradle index bcdf0748..725316f6 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -17,8 +17,8 @@ android { testApplicationId "io.github.tests.wulkanowy" minSdkVersion 16 targetSdkVersion 28 - versionCode 43 - versionName "0.10.0" + versionCode 44 + versionName "0.10.1" multiDexEnabled true testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" vectorDrawables.useSupportLibrary = true @@ -123,18 +123,18 @@ configurations.all { } dependencies { - implementation "io.github.wulkanowy:api:0.10.0" + implementation "io.github.wulkanowy:api:0.10.1" implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version" - implementation "androidx.core:core-ktx:1.1.0-rc03" - implementation "androidx.activity:activity-ktx:1.0.0-rc01" - implementation "androidx.appcompat:appcompat:1.1.0-rc01" - implementation "androidx.appcompat:appcompat-resources:1.1.0-rc01" - implementation "androidx.fragment:fragment-ktx:1.1.0-rc04" + implementation "androidx.core:core-ktx:1.1.0" + implementation "androidx.activity:activity-ktx:1.0.0" + implementation "androidx.appcompat:appcompat:1.1.0" + implementation "androidx.appcompat:appcompat-resources:1.1.0" + implementation "androidx.fragment:fragment-ktx:1.1.0" implementation "androidx.annotation:annotation:1.1.0" implementation "androidx.multidex:multidex:2.0.1" - implementation "androidx.preference:preference-ktx:1.1.0-rc01" + implementation "androidx.preference:preference-ktx:1.1.0" implementation "androidx.recyclerview:recyclerview:1.1.0-beta03" implementation "androidx.viewpager:viewpager:1.0.0" implementation "androidx.swiperefreshlayout:swiperefreshlayout:1.0.0" diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index a2d6346e..77339fe9 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -42,4 +42,4 @@ #Config for Material Components --keep class com.google.android.material.tabs.** \ No newline at end of file +-keep class com.google.android.material.tabs.** { *; } diff --git a/app/src/main/java/io/github/wulkanowy/ui/modules/luckynumberwidget/LuckyNumberWidgetConfigureItem.kt b/app/src/main/java/io/github/wulkanowy/ui/modules/luckynumberwidget/LuckyNumberWidgetConfigureItem.kt index bba0974b..e260b7fc 100644 --- a/app/src/main/java/io/github/wulkanowy/ui/modules/luckynumberwidget/LuckyNumberWidgetConfigureItem.kt +++ b/app/src/main/java/io/github/wulkanowy/ui/modules/luckynumberwidget/LuckyNumberWidgetConfigureItem.kt @@ -2,6 +2,7 @@ package io.github.wulkanowy.ui.modules.luckynumberwidget import android.annotation.SuppressLint import android.view.View +import androidx.core.graphics.ColorUtils import eu.davidea.flexibleadapter.FlexibleAdapter import eu.davidea.flexibleadapter.items.AbstractFlexibleItem import eu.davidea.flexibleadapter.items.IFlexible @@ -9,6 +10,7 @@ import eu.davidea.viewholders.FlexibleViewHolder import io.github.wulkanowy.R import io.github.wulkanowy.data.db.entities.Student import io.github.wulkanowy.ui.modules.timetablewidget.TimetableWidgetConfigureItem +import io.github.wulkanowy.utils.getThemeAttrColor import kotlinx.android.extensions.LayoutContainer import kotlinx.android.synthetic.main.item_account.* @@ -17,16 +19,19 @@ class LuckyNumberWidgetConfigureItem(var student: Student, val isCurrent: Boolea override fun getLayoutRes() = R.layout.item_account - override fun createViewHolder(view: View, adapter: FlexibleAdapter>): ViewHolder { - return ViewHolder(view, adapter) - } + override fun createViewHolder(view: View, adapter: FlexibleAdapter>) = ViewHolder(view, adapter) @SuppressLint("SetTextI18n") override fun bindViewHolder(adapter: FlexibleAdapter>, holder: ViewHolder, position: Int, payloads: MutableList) { - holder.apply { + val context = holder.contentView.context + + val colorImage = if (isCurrent) context.getThemeAttrColor(R.attr.colorPrimary) + else ColorUtils.setAlphaComponent(context.getThemeAttrColor(R.attr.colorOnSurface), 153) + + with(holder) { accountItemName.text = "${student.studentName} ${student.className}" accountItemSchool.text = student.schoolName - accountItemImage.setBackgroundResource(if (isCurrent) R.drawable.ic_account_circular_border else 0) + accountItemImage.setColorFilter(colorImage) } } @@ -47,8 +52,9 @@ class LuckyNumberWidgetConfigureItem(var student: Student, val isCurrent: Boolea return result } - class ViewHolder(view: View, adapter: FlexibleAdapter<*>) : FlexibleViewHolder(view, adapter), LayoutContainer { - override val containerView: View - get() = contentView + class ViewHolder(view: View, adapter: FlexibleAdapter<*>) : FlexibleViewHolder(view, adapter), + LayoutContainer { + + override val containerView: View? get() = contentView } } diff --git a/app/src/main/java/io/github/wulkanowy/ui/modules/timetablewidget/TimetableWidgetConfigureItem.kt b/app/src/main/java/io/github/wulkanowy/ui/modules/timetablewidget/TimetableWidgetConfigureItem.kt index f6ec1519..a3338c68 100644 --- a/app/src/main/java/io/github/wulkanowy/ui/modules/timetablewidget/TimetableWidgetConfigureItem.kt +++ b/app/src/main/java/io/github/wulkanowy/ui/modules/timetablewidget/TimetableWidgetConfigureItem.kt @@ -2,12 +2,14 @@ package io.github.wulkanowy.ui.modules.timetablewidget import android.annotation.SuppressLint import android.view.View +import androidx.core.graphics.ColorUtils import eu.davidea.flexibleadapter.FlexibleAdapter import eu.davidea.flexibleadapter.items.AbstractFlexibleItem import eu.davidea.flexibleadapter.items.IFlexible import eu.davidea.viewholders.FlexibleViewHolder import io.github.wulkanowy.R import io.github.wulkanowy.data.db.entities.Student +import io.github.wulkanowy.utils.getThemeAttrColor import kotlinx.android.extensions.LayoutContainer import kotlinx.android.synthetic.main.item_account.* @@ -16,16 +18,19 @@ class TimetableWidgetConfigureItem(val student: Student, private val isCurrent: override fun getLayoutRes() = R.layout.item_account - override fun createViewHolder(view: View, adapter: FlexibleAdapter>): ViewHolder { - return ViewHolder(view, adapter) - } + override fun createViewHolder(view: View, adapter: FlexibleAdapter>) = ViewHolder(view, adapter) @SuppressLint("SetTextI18n") override fun bindViewHolder(adapter: FlexibleAdapter>, holder: ViewHolder, position: Int, payloads: MutableList) { - holder.apply { + val context = holder.contentView.context + + val colorImage = if (isCurrent) context.getThemeAttrColor(R.attr.colorPrimary) + else ColorUtils.setAlphaComponent(context.getThemeAttrColor(R.attr.colorOnSurface), 153) + + with(holder) { accountItemName.text = "${student.studentName} ${student.className}" accountItemSchool.text = student.schoolName - accountItemImage.setBackgroundResource(if (isCurrent) R.drawable.ic_account_circular_border else 0) + accountItemImage.setColorFilter(colorImage) } } @@ -46,8 +51,9 @@ class TimetableWidgetConfigureItem(val student: Student, private val isCurrent: return result } - class ViewHolder(view: View, adapter: FlexibleAdapter<*>) : FlexibleViewHolder(view, adapter), LayoutContainer { - override val containerView: View - get() = contentView + class ViewHolder(view: View, adapter: FlexibleAdapter<*>) : FlexibleViewHolder(view, adapter), + LayoutContainer { + + override val containerView: View? get() = contentView } } diff --git a/app/src/main/res/drawable-night/ic_account_circular_border.xml b/app/src/main/res/drawable-night/ic_account_circular_border.xml deleted file mode 100644 index a6a9e253..00000000 --- a/app/src/main/res/drawable-night/ic_account_circular_border.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - diff --git a/app/src/main/res/drawable/ic_account_circular_border.xml b/app/src/main/res/drawable/ic_account_circular_border.xml deleted file mode 100644 index 8ba66975..00000000 --- a/app/src/main/res/drawable/ic_account_circular_border.xml +++ /dev/null @@ -1,8 +0,0 @@ - - - - - diff --git a/app/src/main/res/values-pl/strings.xml b/app/src/main/res/values-pl/strings.xml index 59bdb75a..a43493e7 100644 --- a/app/src/main/res/values-pl/strings.xml +++ b/app/src/main/res/values-pl/strings.xml @@ -226,7 +226,7 @@ Wersja aplikacji Zgłoś błąd - Wyślij zgłoszenie o błedzię poprzez e-maila + Wyślij zgłoszenie o błędzie poprzez e-maila Serwer discord Dołącz do społeczności wulkanowego Polityka prywatności diff --git a/build.gradle b/build.gradle index d1047e38..e8f29a52 100644 --- a/build.gradle +++ b/build.gradle @@ -4,6 +4,7 @@ buildscript { mavenCentral() google() jcenter() + maven { url 'https://jitpack.io' } maven { url "https://plugins.gradle.org/m2/" } maven { url 'https://maven.fabric.io/public' } } @@ -12,7 +13,7 @@ buildscript { classpath 'com.android.tools.build:gradle:3.5.0' classpath 'com.google.gms:google-services:4.3.1' classpath "io.fabric.tools:gradle:1.31.0" - classpath "com.github.triplet.gradle:play-publisher:2.3.0" + classpath "com.github.Triple-T:gradle-play-publisher:cdaeb61a87fedd1874e15e94eab7c6b80fda6727" classpath "org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:2.7.1" classpath "gradle.plugin.com.star-zero.gradle:githook:1.1.0" } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 8d58bda4..dbe85eef 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-5.6-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-5.6.1-all.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew index b0d6d0ab..83f2acfd 100755 --- a/gradlew +++ b/gradlew @@ -7,7 +7,7 @@ # you may not use this file except in compliance with the License. # You may obtain a copy of the License at # -# http://www.apache.org/licenses/LICENSE-2.0 +# https://www.apache.org/licenses/LICENSE-2.0 # # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, @@ -125,8 +125,8 @@ if $darwin; then GRADLE_OPTS="$GRADLE_OPTS \"-Xdock:name=$APP_NAME\" \"-Xdock:icon=$APP_HOME/media/gradle.icns\"" fi -# For Cygwin, switch paths to Windows format before running java -if $cygwin ; then +# For Cygwin or MSYS, switch paths to Windows format before running java +if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then APP_HOME=`cygpath --path --mixed "$APP_HOME"` CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` JAVACMD=`cygpath --unix "$JAVACMD"` diff --git a/gradlew.bat b/gradlew.bat index 15e1ee37..24467a14 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -5,7 +5,7 @@ @rem you may not use this file except in compliance with the License. @rem You may obtain a copy of the License at @rem -@rem http://www.apache.org/licenses/LICENSE-2.0 +@rem https://www.apache.org/licenses/LICENSE-2.0 @rem @rem Unless required by applicable law or agreed to in writing, software @rem distributed under the License is distributed on an "AS IS" BASIS,