Skip to content

Commit 9579356

Browse files
committed
Switches for HasSupportFragmentInjector and HasFragmentInjector
1 parent 457a499 commit 9579356

File tree

5 files changed

+50
-11
lines changed

5 files changed

+50
-11
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 & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,19 +6,41 @@ 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 dagger.android.HasFragmentInjector
11+
</#if>
12+
<#if addDispatchingSupportFragmentInjector>
13+
import dagger.android.support.HasSupportFragmentInjector
14+
</#if>
915
import javax.inject.Inject
1016

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

13-
@Inject lateinit var dispatchingAndroidInjector: DispatchingAndroidInjector<Activity>
19+
@Inject lateinit var dispatchingActivityInjector: DispatchingAndroidInjector<Activity>
20+
<#if addDispatchingFragmentInjector>
21+
@Inject lateinit var dispatchingFragmentInjector: DispatchingAndroidInjector<android.app.Fragment>
22+
</#if>
23+
<#if addDispatchingSupportFragmentInjector>
24+
@Inject lateinit var dispatchingSupportFragmentInjector: DispatchingAndroidInjector<android.support.v4.app.Fragment>
25+
</#if>
1426

1527
override fun onCreate() {
1628
super.onCreate()
17-
Dagger${componentClass}.builder()
29+
DaggerSampleAppComponent.builder()
1830
.application(this)
1931
.build()
2032
.inject(this)
2133
}
2234

23-
override fun activityInjector(): AndroidInjector<Activity> = dispatchingAndroidInjector
35+
override fun activityInjector(): AndroidInjector<Activity> = dispatchingActivityInjector
36+
<#if addDispatchingFragmentInjector>
37+
38+
override fun fragmentInjector(): AndroidInjector<android.app.Fragment> = dispatchingFragmentInjector
39+
</#if>
40+
<#if addDispatchingSupportFragmentInjector>
41+
42+
override fun supportFragmentInjector(): AndroidInjector<android.support.v4.app.Fragment>
43+
= dispatchingSupportFragmentInjector
44+
</#if>
45+
2446
}

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
@@ -2,15 +2,20 @@ package com.infullmobile.android.infullmvp.sample_dagger21x.application
22

33
import android.app.Activity
44
import android.app.Application
5+
import android.support.v4.app.Fragment
56
import com.infullmobile.android.infullmvp.sample_dagger21x.application.di.DaggerSampleAppComponent
67
import dagger.android.AndroidInjector
78
import dagger.android.DispatchingAndroidInjector
89
import dagger.android.HasActivityInjector
10+
import dagger.android.HasFragmentInjector
11+
import dagger.android.support.HasSupportFragmentInjector
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<android.support.v4.app.Fragment>
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<Fragment> = dispatchingSupportFragmentInjector
33+
2534
}

0 commit comments

Comments
 (0)