From 558dbc9e4bcf80f6d36be40ec1927ecadf890bf0 Mon Sep 17 00:00:00 2001 From: Nick Chalko Date: Mon, 1 Jul 2019 19:04:53 -0700 Subject: Inject SystemSetupActivity PiperOrigin-RevId: 256080550 Change-Id: I8bd16e0aac2b5493e540cbc3bb7686105b7bf532 --- .../android/tv/modules/TvApplicationModule.java | 2 ++ src/com/android/tv/setup/SystemSetupActivity.java | 23 ++++++++++++++++++---- 2 files changed, 21 insertions(+), 4 deletions(-) (limited to 'src') diff --git a/src/com/android/tv/modules/TvApplicationModule.java b/src/com/android/tv/modules/TvApplicationModule.java index 9a312aec..3e7d901f 100644 --- a/src/com/android/tv/modules/TvApplicationModule.java +++ b/src/com/android/tv/modules/TvApplicationModule.java @@ -35,6 +35,7 @@ import com.android.tv.dvr.DvrDataManagerImpl; import com.android.tv.dvr.WritableDvrDataManager; import com.android.tv.dvr.ui.playback.DvrPlaybackActivity; import com.android.tv.onboarding.OnboardingActivity; +import com.android.tv.setup.SystemSetupActivity; import com.android.tv.ui.DetailsActivity; import com.android.tv.util.AsyncDbTask; import com.android.tv.util.TvInputManagerHelper; @@ -61,6 +62,7 @@ import javax.inject.Singleton; MainActivity.Module.class, OnboardingActivity.Module.class, SetupPassthroughActivity.Module.class, + SystemSetupActivity.Module.class, TvSingletonsModule.class, }) public abstract class TvApplicationModule { diff --git a/src/com/android/tv/setup/SystemSetupActivity.java b/src/com/android/tv/setup/SystemSetupActivity.java index a392fdbe..890331b8 100644 --- a/src/com/android/tv/setup/SystemSetupActivity.java +++ b/src/com/android/tv/setup/SystemSetupActivity.java @@ -24,9 +24,9 @@ import android.content.Intent; import android.media.tv.TvInputInfo; import android.os.Bundle; import android.widget.Toast; + import com.android.tv.R; import com.android.tv.SetupPassthroughActivity; -import com.android.tv.TvSingletons; import com.android.tv.common.CommonConstants; import com.android.tv.common.ui.setup.SetupActivity; import com.android.tv.common.ui.setup.SetupMultiPaneFragment; @@ -36,6 +36,11 @@ import com.android.tv.util.OnboardingUtils; import com.android.tv.util.SetupUtils; import com.android.tv.util.TvInputManagerHelper; +import dagger.android.AndroidInjection; +import dagger.android.ContributesAndroidInjector; + +import javax.inject.Inject; + /** A activity to start input sources setup fragment for initial setup flow. */ public class SystemSetupActivity extends SetupActivity { private static final String SYSTEM_SETUP = @@ -43,18 +48,17 @@ public class SystemSetupActivity extends SetupActivity { private static final int SHOW_RIPPLE_DURATION_MS = 266; private static final int REQUEST_CODE_START_SETUP_ACTIVITY = 1; - private TvInputManagerHelper mInputManager; + @Inject TvInputManagerHelper mInputManager; @Override protected void onCreate(Bundle savedInstanceState) { + AndroidInjection.inject(this); super.onCreate(savedInstanceState); Intent intent = getIntent(); if (!SYSTEM_SETUP.equals(intent.getAction())) { finish(); return; } - TvSingletons singletons = TvSingletons.getSingletons(this); - mInputManager = singletons.getTvInputManagerHelper(); } @Override @@ -124,4 +128,15 @@ public class SystemSetupActivity extends SetupActivity { } return false; } + + /** + * Exports {@link SystemSetupActivity} for Dagger codegen to create the appropriate injector. + */ + @dagger.Module + public abstract static class Module { + + @ContributesAndroidInjector + abstract SetupSourcesFragment.ContentFragment + contributesSetupSourcesFragmentContentFragment(); + } } -- cgit v1.2.3