Skip to content

Commit 9b7cd60

Browse files
bhmKuzniarski Jacek
authored andcommitted
Switches for HasSupportFragmentInjector and HasFragmentInjector
1 parent 457a499 commit 9b7cd60

File tree

5 files changed

+50
-10
lines changed

5 files changed

+50
-10
lines changed

android-studio-plugin/InFullMvpActivityJava_dagger2.11+/template.xml

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,6 @@
4040
suggest="${applicationPackage}"
4141
help="Path to .R of this app/module" />
4242

43-
<parameter
44-
id="useApplicationComponent"
45-
name="Use ApplicationComponent"
46-
type="boolean"
47-
default="true"
48-
help="If true, ApplicationComponent will be used in generated Graph" />
4943

5044
<parameter
5145
id="appComponentPackage"

android-studio-plugin/InfullAplicationKotlin_dagger2.11+/root/src/mvp_folder/Application.kt.ftl

Lines changed: 26 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,25 @@ import ${relativePackage}.di.Dagger${componentClass}
66
import dagger.android.AndroidInjector
77
import dagger.android.DispatchingAndroidInjector
88
import dagger.android.HasActivityInjector
9+
<#if addDispatchingFragmentInjector>
10+
import android.app.Fragment
11+
import dagger.android.HasFragmentInjector
12+
</#if>
13+
<#if addDispatchingSupportFragmentInjector>
14+
import dagger.android.support.HasSupportFragmentInjector
15+
import android.support.v4.app.Fragment as SupportFragment
16+
</#if>
917
import javax.inject.Inject
1018

11-
class ${applicationClass} : Application(), HasActivityInjector {
19+
class ${applicationClass} : Application(), HasActivityInjector<#if addDispatchingFragmentInjector>, HasFragmentInjector</#if><#if addDispatchingSupportFragmentInjector>, HasSupportFragmentInjector</#if> {
1220

13-
@Inject lateinit var dispatchingAndroidInjector: DispatchingAndroidInjector<Activity>
21+
@Inject lateinit var dispatchingActivityInjector: DispatchingAndroidInjector<Activity>
22+
<#if addDispatchingFragmentInjector>
23+
@Inject lateinit var dispatchingFragmentInjector: DispatchingAndroidInjector<Fragment>
24+
</#if>
25+
<#if addDispatchingSupportFragmentInjector>
26+
@Inject lateinit var dispatchingSupportFragmentInjector: DispatchingAndroidInjector<SupportFragment>
27+
</#if>
1428

1529
override fun onCreate() {
1630
super.onCreate()
@@ -20,5 +34,14 @@ class ${applicationClass} : Application(), HasActivityInjector {
2034
.inject(this)
2135
}
2236

23-
override fun activityInjector(): AndroidInjector<Activity> = dispatchingAndroidInjector
37+
override fun activityInjector(): AndroidInjector<Activity> = dispatchingActivityInjector
38+
<#if addDispatchingFragmentInjector>
39+
40+
override fun fragmentInjector(): AndroidInjector<Fragment> = dispatchingFragmentInjector
41+
</#if>
42+
<#if addDispatchingSupportFragmentInjector>
43+
44+
override fun supportFragmentInjector(): AndroidInjector<SupportFragment> = dispatchingSupportFragmentInjector
45+
</#if>
46+
2447
}

android-studio-plugin/InfullAplicationKotlin_dagger2.11+/template.xml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -40,6 +40,20 @@
4040
type="string"
4141
visibility="useApplicationComponent"/>
4242

43+
<parameter
44+
name="with HasSupportFragmentInjector"
45+
default="true"
46+
help="Adds HasSupportFragmentInjector and logic for injecting support Fragments"
47+
id="addDispatchingSupportFragmentInjector"
48+
type="boolean"/>
49+
50+
<parameter
51+
name="With HasFragmentInjector"
52+
default="false"
53+
help="Adds HasFragmentInjector and logic for injecting Fragments"
54+
id="addDispatchingFragmentInjector"
55+
type="boolean"/>
56+
4357
<thumbs>
4458
<thumb>ifmdagger.png</thumb>
4559
</thumbs>
-112 KB
Loading

sample-kotlin-dagger-2.1x/src/main/java/com/infullmobile/android/infullmvp/sample_dagger21x/application/SampleApp.kt

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,16 @@ import com.infullmobile.android.infullmvp.sample_dagger21x.application.di.Dagger
66
import dagger.android.AndroidInjector
77
import dagger.android.DispatchingAndroidInjector
88
import dagger.android.HasActivityInjector
9+
import dagger.android.HasFragmentInjector
10+
import dagger.android.support.HasSupportFragmentInjector
11+
import android.support.v4.app.Fragment as SupportFragment
912
import javax.inject.Inject
1013

11-
class SampleApp : Application(), HasActivityInjector {
14+
class SampleApp : Application(), HasActivityInjector, HasSupportFragmentInjector, HasFragmentInjector {
1215

1316
@Inject lateinit var dispatchingAndroidInjector: DispatchingAndroidInjector<Activity>
17+
@Inject lateinit var dispatchingSupportFragmentInjector: DispatchingAndroidInjector<SupportFragment>
18+
@Inject lateinit var dispatchingFragmentInjector: DispatchingAndroidInjector<android.app.Fragment>
1419

1520
override fun onCreate() {
1621
super.onCreate()
@@ -22,4 +27,8 @@ class SampleApp : Application(), HasActivityInjector {
2227

2328
override fun activityInjector(): AndroidInjector<Activity> = dispatchingAndroidInjector
2429

30+
override fun fragmentInjector(): AndroidInjector<android.app.Fragment> = dispatchingFragmentInjector
31+
32+
override fun supportFragmentInjector(): AndroidInjector<SupportFragment> = dispatchingSupportFragmentInjector
33+
2534
}

0 commit comments

Comments
 (0)