diff options
author | Allan Wang <me@allanwang.ca> | 2021-04-17 18:35:14 -0700 |
---|---|---|
committer | Allan Wang <me@allanwang.ca> | 2021-04-17 18:35:14 -0700 |
commit | 8b233b2629039e8144fe6eef5438125cd48c8973 (patch) | |
tree | cd6eb898a9791b91e0879170d4832f304d3af848 /app/src/main/kotlin/com/pitchedapps/frost/activities/BaseMainActivity.kt | |
parent | 2c20f85be14abfd45017b2b0f3a0f5d7c7886b90 (diff) | |
download | frost-8b233b2629039e8144fe6eef5438125cd48c8973.tar.gz frost-8b233b2629039e8144fe6eef5438125cd48c8973.tar.bz2 frost-8b233b2629039e8144fe6eef5438125cd48c8973.zip |
Inject main activity contract
Diffstat (limited to 'app/src/main/kotlin/com/pitchedapps/frost/activities/BaseMainActivity.kt')
-rw-r--r-- | app/src/main/kotlin/com/pitchedapps/frost/activities/BaseMainActivity.kt | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/app/src/main/kotlin/com/pitchedapps/frost/activities/BaseMainActivity.kt b/app/src/main/kotlin/com/pitchedapps/frost/activities/BaseMainActivity.kt index 8f440129..51f4732a 100644 --- a/app/src/main/kotlin/com/pitchedapps/frost/activities/BaseMainActivity.kt +++ b/app/src/main/kotlin/com/pitchedapps/frost/activities/BaseMainActivity.kt @@ -128,7 +128,13 @@ import com.pitchedapps.frost.views.BadgedIcon import com.pitchedapps.frost.views.FrostVideoViewer import com.pitchedapps.frost.views.FrostViewPager import com.pitchedapps.frost.widgets.NotificationWidget +import dagger.Module +import dagger.Provides +import dagger.hilt.InstallIn import dagger.hilt.android.AndroidEntryPoint +import dagger.hilt.android.components.ActivityComponent +import dagger.hilt.android.qualifiers.ActivityContext +import dagger.hilt.android.scopes.ActivityScoped import kotlinx.coroutines.ExperimentalCoroutinesApi import kotlinx.coroutines.launch import javax.inject.Inject @@ -936,3 +942,13 @@ abstract class BaseMainActivity : const val UNSELECTED_TAB_ALPHA = 128f } } + +@Module +@InstallIn(ActivityComponent::class) +object MainActivityModule { + @Provides + @ActivityScoped + fun contract(@ActivityContext context: Context): MainActivityContract = + (context as? BaseMainActivity) + ?: throw IllegalArgumentException("${context::class.java.simpleName} does not implement MainActivityContract") +} |