diff --git a/app/src/main/java/org/koitharu/kotatsu/scrobbling/ScrobblingModule.kt b/app/src/main/java/org/koitharu/kotatsu/scrobbling/ScrobblingModule.kt index 6f1b5592c..0cbd62f4a 100644 --- a/app/src/main/java/org/koitharu/kotatsu/scrobbling/ScrobblingModule.kt +++ b/app/src/main/java/org/koitharu/kotatsu/scrobbling/ScrobblingModule.kt @@ -5,6 +5,7 @@ import dagger.Provides import dagger.hilt.InstallIn import dagger.hilt.components.SingletonComponent import dagger.multibindings.ElementsIntoSet +import javax.inject.Singleton import okhttp3.OkHttpClient import org.koitharu.kotatsu.core.db.MangaDatabase import org.koitharu.kotatsu.scrobbling.domain.Scrobbler @@ -13,7 +14,6 @@ import org.koitharu.kotatsu.scrobbling.shikimori.data.ShikimoriInterceptor import org.koitharu.kotatsu.scrobbling.shikimori.data.ShikimoriRepository import org.koitharu.kotatsu.scrobbling.shikimori.data.ShikimoriStorage import org.koitharu.kotatsu.scrobbling.shikimori.domain.ShikimoriScrobbler -import javax.inject.Singleton @Module @InstallIn(SingletonComponent::class) diff --git a/app/src/main/java/org/koitharu/kotatsu/scrobbling/shikimori/ui/ShikimoriSettingsFragment.kt b/app/src/main/java/org/koitharu/kotatsu/scrobbling/shikimori/ui/ShikimoriSettingsFragment.kt index 6588ef675..03fd7d882 100644 --- a/app/src/main/java/org/koitharu/kotatsu/scrobbling/shikimori/ui/ShikimoriSettingsFragment.kt +++ b/app/src/main/java/org/koitharu/kotatsu/scrobbling/shikimori/ui/ShikimoriSettingsFragment.kt @@ -8,6 +8,7 @@ import androidx.preference.Preference import coil.ImageLoader import coil.request.ImageRequest import coil.transform.CircleCropTransformation +import dagger.hilt.android.AndroidEntryPoint import javax.inject.Inject import org.koitharu.kotatsu.R import org.koitharu.kotatsu.base.ui.BasePreferenceFragment @@ -17,6 +18,7 @@ import org.koitharu.kotatsu.utils.ext.assistedViewModels import org.koitharu.kotatsu.utils.ext.enqueueWith import org.koitharu.kotatsu.utils.ext.withArgs +@AndroidEntryPoint class ShikimoriSettingsFragment : BasePreferenceFragment(R.string.shikimori) { @Inject diff --git a/app/src/main/java/org/koitharu/kotatsu/scrobbling/ui/selector/ScrobblingSelectorBottomSheet.kt b/app/src/main/java/org/koitharu/kotatsu/scrobbling/ui/selector/ScrobblingSelectorBottomSheet.kt index 4da8ccb08..e278ae0ca 100644 --- a/app/src/main/java/org/koitharu/kotatsu/scrobbling/ui/selector/ScrobblingSelectorBottomSheet.kt +++ b/app/src/main/java/org/koitharu/kotatsu/scrobbling/ui/selector/ScrobblingSelectorBottomSheet.kt @@ -8,6 +8,8 @@ import android.widget.Toast import androidx.appcompat.widget.SearchView import androidx.fragment.app.FragmentManager import coil.ImageLoader +import dagger.hilt.android.AndroidEntryPoint +import javax.inject.Inject import org.koitharu.kotatsu.R import org.koitharu.kotatsu.base.domain.MangaIntent import org.koitharu.kotatsu.base.ui.BaseBottomSheet @@ -22,8 +24,8 @@ import org.koitharu.kotatsu.scrobbling.ui.selector.adapter.ShikimoriSelectorAdap import org.koitharu.kotatsu.utils.ext.assistedViewModels import org.koitharu.kotatsu.utils.ext.getDisplayMessage import org.koitharu.kotatsu.utils.ext.withArgs -import javax.inject.Inject +@AndroidEntryPoint class ScrobblingSelectorBottomSheet : BaseBottomSheet(), OnListItemClickListener, diff --git a/app/src/main/java/org/koitharu/kotatsu/scrobbling/ui/selector/ScrobblingSelectorViewModel.kt b/app/src/main/java/org/koitharu/kotatsu/scrobbling/ui/selector/ScrobblingSelectorViewModel.kt index 5a121f52c..d6b111b3d 100644 --- a/app/src/main/java/org/koitharu/kotatsu/scrobbling/ui/selector/ScrobblingSelectorViewModel.kt +++ b/app/src/main/java/org/koitharu/kotatsu/scrobbling/ui/selector/ScrobblingSelectorViewModel.kt @@ -24,9 +24,11 @@ import org.koitharu.kotatsu.utils.ext.asLiveDataDistinct class ScrobblingSelectorViewModel @AssistedInject constructor( @Assisted val manga: Manga, - private val scrobbler: Scrobbler, + scrobblers: Set<@JvmSuppressWildcards Scrobbler>, ) : BaseViewModel() { + private val scrobbler = scrobblers.first() // TODO support multiple scrobblers + private val shikiMangaList = MutableStateFlow?>(null) private val hasNextPage = MutableStateFlow(false) private var loadingJob: Job? = null