diff --git a/app/src/main/java/org/koitharu/kotatsu/base/ui/list/SectionedSelectionController.kt b/app/src/main/java/org/koitharu/kotatsu/base/ui/list/SectionedSelectionController.kt index 3f7abea0b..d210c6991 100644 --- a/app/src/main/java/org/koitharu/kotatsu/base/ui/list/SectionedSelectionController.kt +++ b/app/src/main/java/org/koitharu/kotatsu/base/ui/list/SectionedSelectionController.kt @@ -2,20 +2,20 @@ package org.koitharu.kotatsu.base.ui.list import android.app.Activity import android.os.Bundle -import android.util.ArrayMap import android.view.Menu import android.view.MenuItem import androidx.appcompat.app.AppCompatActivity import androidx.appcompat.view.ActionMode +import androidx.collection.ArrayMap import androidx.lifecycle.Lifecycle import androidx.lifecycle.LifecycleEventObserver import androidx.lifecycle.LifecycleOwner import androidx.recyclerview.widget.RecyclerView import androidx.savedstate.SavedStateRegistry import androidx.savedstate.SavedStateRegistryOwner -import kotlin.coroutines.EmptyCoroutineContext import kotlinx.coroutines.Dispatchers import org.koitharu.kotatsu.base.ui.list.decor.AbstractSelectionItemDecoration +import kotlin.coroutines.EmptyCoroutineContext private const val PROVIDER_NAME = "selection_decoration_sectioned" diff --git a/app/src/main/java/org/koitharu/kotatsu/core/exceptions/resolve/ExceptionResolver.kt b/app/src/main/java/org/koitharu/kotatsu/core/exceptions/resolve/ExceptionResolver.kt index 8ae3565e5..b7147aadd 100644 --- a/app/src/main/java/org/koitharu/kotatsu/core/exceptions/resolve/ExceptionResolver.kt +++ b/app/src/main/java/org/koitharu/kotatsu/core/exceptions/resolve/ExceptionResolver.kt @@ -1,9 +1,9 @@ package org.koitharu.kotatsu.core.exceptions.resolve -import android.util.ArrayMap import androidx.activity.result.ActivityResultCallback import androidx.activity.result.ActivityResultLauncher import androidx.annotation.StringRes +import androidx.collection.ArrayMap import androidx.fragment.app.Fragment import androidx.fragment.app.FragmentActivity import kotlinx.coroutines.suspendCancellableCoroutine diff --git a/app/src/main/java/org/koitharu/kotatsu/sync/domain/SyncController.kt b/app/src/main/java/org/koitharu/kotatsu/sync/domain/SyncController.kt index 9dff00923..c0c00aeab 100644 --- a/app/src/main/java/org/koitharu/kotatsu/sync/domain/SyncController.kt +++ b/app/src/main/java/org/koitharu/kotatsu/sync/domain/SyncController.kt @@ -5,16 +5,17 @@ import android.accounts.AccountManager import android.content.ContentResolver import android.content.Context import android.os.Bundle -import android.util.ArrayMap +import androidx.collection.ArrayMap import androidx.room.InvalidationTracker import androidx.room.withTransaction import dagger.hilt.android.qualifiers.ApplicationContext -import java.util.concurrent.TimeUnit -import javax.inject.Inject -import javax.inject.Singleton -import kotlinx.coroutines.* +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.Job +import kotlinx.coroutines.delay +import kotlinx.coroutines.launch import kotlinx.coroutines.sync.Mutex import kotlinx.coroutines.sync.withLock +import kotlinx.coroutines.withContext import org.koitharu.kotatsu.BuildConfig import org.koitharu.kotatsu.R import org.koitharu.kotatsu.core.db.MangaDatabase @@ -22,6 +23,9 @@ import org.koitharu.kotatsu.core.db.TABLE_FAVOURITES import org.koitharu.kotatsu.core.db.TABLE_FAVOURITE_CATEGORIES import org.koitharu.kotatsu.core.db.TABLE_HISTORY import org.koitharu.kotatsu.utils.ext.processLifecycleScope +import java.util.concurrent.TimeUnit +import javax.inject.Inject +import javax.inject.Singleton @Singleton class SyncController @Inject constructor( diff --git a/app/src/main/java/org/koitharu/kotatsu/utils/CompositeMutex.kt b/app/src/main/java/org/koitharu/kotatsu/utils/CompositeMutex.kt index 5f4f12fda..859e7e391 100644 --- a/app/src/main/java/org/koitharu/kotatsu/utils/CompositeMutex.kt +++ b/app/src/main/java/org/koitharu/kotatsu/utils/CompositeMutex.kt @@ -1,14 +1,14 @@ package org.koitharu.kotatsu.utils -import android.util.ArrayMap -import java.util.* -import kotlin.coroutines.coroutineContext -import kotlin.coroutines.resume +import androidx.collection.ArrayMap import kotlinx.coroutines.CancellableContinuation import kotlinx.coroutines.isActive import kotlinx.coroutines.suspendCancellableCoroutine import kotlinx.coroutines.sync.Mutex import kotlinx.coroutines.sync.withLock +import java.util.LinkedList +import kotlin.coroutines.coroutineContext +import kotlin.coroutines.resume class CompositeMutex : Set { @@ -27,7 +27,7 @@ class CompositeMutex : Set { } override fun isEmpty(): Boolean { - return data.isEmpty() + return data.isEmpty } override fun iterator(): Iterator { @@ -59,7 +59,7 @@ class CompositeMutex : Set { private suspend fun waitForRemoval(element: T) { val list = data[element] ?: return - suspendCancellableCoroutine { continuation -> + suspendCancellableCoroutine { continuation -> list.add(continuation) continuation.invokeOnCancellation { list.remove(continuation)