From f7d76f26e783f6007333fe8d4957c3e11ce63c18 Mon Sep 17 00:00:00 2001 From: Oupson Date: Tue, 22 Jun 2021 13:03:14 +0200 Subject: [PATCH] Update of dependencies --- apng_library/build.gradle | 22 ++---- app-test/build.gradle | 10 +-- .../apngcreator/activities/CreatorActivity.kt | 78 +++++++++++++++---- .../apngcreator/activities/ViewerActivity.kt | 1 + .../apngcreator/dialogs/DelayInputDialog.kt | 2 +- .../fragments/ApngDecoderFragment.kt | 2 +- .../apngcreator/fragments/KotlinFragment.kt | 2 +- build.gradle | 12 ++- gradle/wrapper/gradle-wrapper.properties | 2 +- 9 files changed, 82 insertions(+), 49 deletions(-) diff --git a/apng_library/build.gradle b/apng_library/build.gradle index 3fbb7cc..038ac45 100644 --- a/apng_library/build.gradle +++ b/apng_library/build.gradle @@ -1,14 +1,14 @@ apply plugin: 'com.android.library' apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' -apply plugin: "org.jetbrains.dokka" + android { - compileSdkVersion 29 + compileSdkVersion 30 defaultConfig { minSdkVersion 19 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "1.0.10" @@ -29,26 +29,16 @@ android { } dependencies { - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.7' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.3' implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" - implementation 'androidx.appcompat:appcompat:1.2.0' + implementation 'androidx.appcompat:appcompat:1.3.0' - testImplementation 'junit:junit:4.12' + testImplementation 'junit:junit:4.13.2' androidTestImplementation 'androidx.test:runner:1.3.0' androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' } repositories { mavenCentral() -} - - -dokkaHtml.configure { - dokkaSourceSets { - named("main") { - includes.from("Module.md") - noAndroidSdkLink.set(false) - } - } } \ No newline at end of file diff --git a/app-test/build.gradle b/app-test/build.gradle index a021359..ce736ef 100644 --- a/app-test/build.gradle +++ b/app-test/build.gradle @@ -3,12 +3,12 @@ apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' android { - compileSdkVersion 29 + compileSdkVersion 30 defaultConfig { applicationId "oupson.apngcreator" minSdkVersion 19 - targetSdkVersion 29 + targetSdkVersion 30 versionCode 1 versionName "1.0.10" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" @@ -35,14 +35,14 @@ android { dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" - implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.3.7' + implementation 'org.jetbrains.kotlinx:kotlinx-coroutines-android:1.4.3' - implementation 'androidx.appcompat:appcompat:1.2.0' + implementation 'androidx.appcompat:appcompat:1.3.0' implementation 'androidx.constraintlayout:constraintlayout:2.0.4' implementation 'androidx.legacy:legacy-support-v4:1.0.0' implementation 'com.google.android.material:material:1.3.0' - testImplementation 'junit:junit:4.12' + testImplementation 'junit:junit:4.13.2' androidTestImplementation 'androidx.test:runner:1.3.0' androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' diff --git a/app-test/src/main/java/oupson/apngcreator/activities/CreatorActivity.kt b/app-test/src/main/java/oupson/apngcreator/activities/CreatorActivity.kt index 9246fac..50427ea 100644 --- a/app-test/src/main/java/oupson/apngcreator/activities/CreatorActivity.kt +++ b/app-test/src/main/java/oupson/apngcreator/activities/CreatorActivity.kt @@ -46,7 +46,8 @@ class CreatorActivity : AppCompatActivity() { private const val WRITE_REQUEST_CODE = 2 private const val TAG = "CreatorActivity" - private const val CREATION_CHANNEL_ID = "${BuildConfig.APPLICATION_ID}.notifications_channels.create" + private const val CREATION_CHANNEL_ID = + "${BuildConfig.APPLICATION_ID}.notifications_channels.create" } private var items: ArrayList> = ArrayList() @@ -54,7 +55,7 @@ class CreatorActivity : AppCompatActivity() { private var firstFrameInAnim = true private var optimise = true - private var nextImageId : Long= 0 + private var nextImageId: Long = 0 override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) @@ -129,13 +130,20 @@ class CreatorActivity : AppCompatActivity() { return true } - override fun onOptionsItemSelected(item: MenuItem?): Boolean { - return when (item?.itemId) { + override fun onOptionsItemSelected(item: MenuItem): Boolean { + return when (item.itemId) { R.id.menu_create_apng -> { if (items.size > 0) { val builder = NotificationCompat.Builder(this, CREATION_CHANNEL_ID).apply { setContentTitle(getString(R.string.create_notification_title)) - setContentText(this@CreatorActivity.resources.getQuantityString(R.plurals.create_notification_description, 0, 0, items.size)) + setContentText( + this@CreatorActivity.resources.getQuantityString( + R.plurals.create_notification_description, + 0, + 0, + items.size + ) + ) setSmallIcon(R.drawable.ic_create_white_24dp) priority = NotificationCompat.PRIORITY_LOW } @@ -149,7 +157,11 @@ class CreatorActivity : AppCompatActivity() { } } val out = FileOutputStream(f) - saveToOutputStream(items.map { Pair(it.first, it.second) }, out, builder = builder) + saveToOutputStream( + items.map { Pair(it.first, it.second) }, + out, + builder = builder + ) out.close() if (BuildConfig.DEBUG) @@ -182,7 +194,14 @@ class CreatorActivity : AppCompatActivity() { if (items.size > 0) { val builder = NotificationCompat.Builder(this, CREATION_CHANNEL_ID).apply { setContentTitle(getString(R.string.create_notification_title)) - setContentText(this@CreatorActivity.resources.getQuantityString(R.plurals.create_notification_description, 0, 0, items.size)) + setContentText( + this@CreatorActivity.resources.getQuantityString( + R.plurals.create_notification_description, + 0, + 0, + items.size + ) + ) setSmallIcon(R.drawable.ic_create_white_24dp) priority = NotificationCompat.PRIORITY_LOW } @@ -195,7 +214,11 @@ class CreatorActivity : AppCompatActivity() { } } val out = FileOutputStream(f) - saveToOutputStream(items.map { Pair(it.first, it.second) }, out, builder = builder) + saveToOutputStream( + items.map { Pair(it.first, it.second) }, + out, + builder = builder + ) out.close() withContext(Dispatchers.Main) { @@ -285,11 +308,15 @@ class CreatorActivity : AppCompatActivity() { optimise = item.isChecked true } - else -> if (item != null) super.onOptionsItemSelected(item) else true + else -> super.onOptionsItemSelected(item) } } - private suspend fun saveToOutputStream(files : Collection>, outputStream: OutputStream, builder : NotificationCompat.Builder? = null) { + private suspend fun saveToOutputStream( + files: Collection>, + outputStream: OutputStream, + builder: NotificationCompat.Builder? = null + ) { var maxWidth = 0 var maxHeight = 0 var notificationManagerCompat: NotificationManagerCompat? @@ -334,8 +361,15 @@ class CreatorActivity : AppCompatActivity() { if (builder != null) { withContext(Dispatchers.Main) { notificationManagerCompat = NotificationManagerCompat.from(this@CreatorActivity) - builder.setProgress(files.size, i+1, false) - .setContentText(this@CreatorActivity.resources.getQuantityString(R.plurals.create_notification_description, i +1, i + 1, files.size)) + builder.setProgress(files.size, i + 1, false) + .setContentText( + this@CreatorActivity.resources.getQuantityString( + R.plurals.create_notification_description, + i + 1, + i + 1, + files.size + ) + ) notificationManagerCompat?.notify(1, builder.build()) } } @@ -375,9 +409,8 @@ class CreatorActivity : AppCompatActivity() { } } - runCatching { // TODO - encoder.writeEnd() - } + encoder.writeEnd() + if (builder != null) { withContext(Dispatchers.Main) { @@ -414,14 +447,25 @@ class CreatorActivity : AppCompatActivity() { val builder = NotificationCompat.Builder(this, CREATION_CHANNEL_ID).apply { setContentTitle(getString(R.string.create_notification_title)) - setContentText(this@CreatorActivity.resources.getQuantityString(R.plurals.create_notification_description, 0, 0, items.size)) + setContentText( + this@CreatorActivity.resources.getQuantityString( + R.plurals.create_notification_description, + 0, + 0, + items.size + ) + ) setSmallIcon(R.drawable.ic_create_white_24dp) priority = NotificationCompat.PRIORITY_LOW } GlobalScope.launch(Dispatchers.IO) { val out = contentResolver.openOutputStream(data.data!!) ?: return@launch - saveToOutputStream(items.map { Pair(it.first, it.second) }, out, builder = builder) + saveToOutputStream( + items.map { Pair(it.first, it.second) }, + out, + builder = builder + ) out.close() withContext(Dispatchers.Main) { diff --git a/app-test/src/main/java/oupson/apngcreator/activities/ViewerActivity.kt b/app-test/src/main/java/oupson/apngcreator/activities/ViewerActivity.kt index d12bf09..36a9cc7 100644 --- a/app-test/src/main/java/oupson/apngcreator/activities/ViewerActivity.kt +++ b/app-test/src/main/java/oupson/apngcreator/activities/ViewerActivity.kt @@ -60,6 +60,7 @@ class ViewerActivity : AppCompatActivity() { override fun onRequestPermissionsResult(requestCode: Int, permissions: Array, grantResults: IntArray) { + super.onRequestPermissionsResult(requestCode, permissions, grantResults) when (requestCode) { 2 -> { if (grantResults.isNotEmpty() && grantResults[0] == PackageManager.PERMISSION_GRANTED) { diff --git a/app-test/src/main/java/oupson/apngcreator/dialogs/DelayInputDialog.kt b/app-test/src/main/java/oupson/apngcreator/dialogs/DelayInputDialog.kt index 870b41f..f11840d 100644 --- a/app-test/src/main/java/oupson/apngcreator/dialogs/DelayInputDialog.kt +++ b/app-test/src/main/java/oupson/apngcreator/dialogs/DelayInputDialog.kt @@ -30,7 +30,7 @@ class DelayInputDialog( if (value != null) mNumberEdit?.setText(value.toString()) return MaterialAlertDialogBuilder( - context!!, + requireContext(), R.style.RoundedCornersDialog ) .setTitle(R.string.delay) diff --git a/app-test/src/main/java/oupson/apngcreator/fragments/ApngDecoderFragment.kt b/app-test/src/main/java/oupson/apngcreator/fragments/ApngDecoderFragment.kt index ebbb85b..c6543fc 100644 --- a/app-test/src/main/java/oupson/apngcreator/fragments/ApngDecoderFragment.kt +++ b/app-test/src/main/java/oupson/apngcreator/fragments/ApngDecoderFragment.kt @@ -34,7 +34,7 @@ class ApngDecoderFragment : Fragment() { if (context != null) { ApngDecoder.decodeApngAsyncInto( - this.context!!, + this.requireContext(), URL("https://metagif.files.wordpress.com/2015/01/bugbuckbunny.png"), imageView, config = ApngDecoder.Config(bitmapConfig = Bitmap.Config.RGB_565, decodeCoverFrame = true), diff --git a/app-test/src/main/java/oupson/apngcreator/fragments/KotlinFragment.kt b/app-test/src/main/java/oupson/apngcreator/fragments/KotlinFragment.kt index b43b3a1..7c05231 100644 --- a/app-test/src/main/java/oupson/apngcreator/fragments/KotlinFragment.kt +++ b/app-test/src/main/java/oupson/apngcreator/fragments/KotlinFragment.kt @@ -139,7 +139,7 @@ class KotlinFragment : Fragment() { if (animation == null) { ApngDecoder.decodeApngAsyncInto( - this.context!!, + requireContext(), imageUrls[selected], apngImageView!!, callback = object : ApngDecoder.Callback { diff --git a/build.gradle b/build.gradle index adbe242..94d8f3a 100644 --- a/build.gradle +++ b/build.gradle @@ -1,26 +1,24 @@ // Top-level build file where you can add configuration options common to all sub-projects/modules. buildscript { - ext.kotlin_version = '1.4.30' - ext.anko_version = '0.10.8' - ext.dokka_version = '1.4.0' + ext.kotlin_version = '1.5.10' + ext.dokka_version = '1.4.3' repositories { google() - jcenter() + mavenCentral() } dependencies { - classpath 'com.android.tools.build:gradle:4.1.2' + classpath 'com.android.tools.build:gradle:4.2.1' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files - classpath "org.jetbrains.dokka:dokka-gradle-plugin:${dokka_version}" } } allprojects { repositories { google() - jcenter() + mavenCentral() maven { url "https://jitpack.io" } } } diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 30118f0..bbfb4df 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -3,4 +3,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-bin.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-bin.zip