Skip to content

Commit db441eb

Browse files
Merge pull request #21 from Omega-R/develop
Make injectviewstate not required Fix save state for child fragment add constructors to fragments
2 parents ae6ec6b + c24a35c commit db441eb

File tree

13 files changed

+89
-2
lines changed

13 files changed

+89
-2
lines changed

moxy-androidx-sample/src/main/kotlin/example/com/moxy_androidx_sample/BaseActivity.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,20 @@
11
package example.com.moxy_androidx_sample;
22

3+
import androidx.annotation.ContentView;
4+
import androidx.annotation.LayoutRes;
35
import com.omegar.mvp.MvpAppCompatActivity;
46

57
public abstract class BaseActivity extends MvpAppCompatActivity implements BaseView {
68

9+
public BaseActivity() {
10+
super();
11+
}
12+
13+
@ContentView
14+
public BaseActivity(@LayoutRes int contentLayoutId) {
15+
super(contentLayoutId);
16+
}
17+
718
@Override
819
public void testFunction() {
920

moxy-androidx-sample/src/main/kotlin/example/com/moxy_androidx_sample/MainActivity.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import com.omegar.mvp.presenter.InjectPresenter
77
import example.com.moxy_androidx_sample.contract.Contract
88
import example.com.moxy_androidx_sample.packagee.Item
99

10-
class MainActivity : BaseActivity(), Contract.MainView, SecondInterface {
10+
class MainActivity : BaseActivity(R.layout.activity_main), Contract.MainView, SecondInterface {
1111
override fun fourth(item: String?) {
1212
TODO("not implemented") //To change body of created functions use File | Settings | File Templates.
1313
}

moxy-androidx-sample/src/main/kotlin/example/com/moxy_androidx_sample/MainPresenter.kt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@ import com.omegar.mvp.InjectViewState
55
import com.omegar.mvp.MvpPresenter
66
import example.com.moxy_androidx_sample.contract.Contract
77

8-
@InjectViewState
98
class MainPresenter : MvpPresenter<Contract.MainView>() {
109

1110
override fun onFirstViewAttach() {

moxy-androidx/src/main/java/com/omegar/mvp/MvpAppCompatActivity.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,11 @@
22

33
import android.os.Bundle;
44

5+
import androidx.annotation.ContentView;
6+
import androidx.annotation.LayoutRes;
57
import androidx.appcompat.app.AppCompatActivity;
68

9+
710
/**
811
* Date: 25-July-18
912
* Time: 2:51
@@ -14,6 +17,11 @@
1417
public class MvpAppCompatActivity extends AppCompatActivity {
1518
private MvpDelegate<? extends MvpAppCompatActivity> mMvpDelegate;
1619

20+
public MvpAppCompatActivity() { super(); }
21+
22+
@ContentView
23+
public MvpAppCompatActivity(@LayoutRes int contentLayoutId) { super(contentLayoutId); }
24+
1725
@Override
1826
protected void onCreate(Bundle savedInstanceState) {
1927
super.onCreate(savedInstanceState);

moxy-androidx/src/main/java/com/omegar/mvp/MvpAppCompatFragment.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,9 @@
11
package com.omegar.mvp;
22

33
import android.os.Bundle;
4+
5+
import androidx.annotation.ContentView;
6+
import androidx.annotation.LayoutRes;
47
import androidx.fragment.app.Fragment;
58

69
/**
@@ -17,6 +20,11 @@ public class MvpAppCompatFragment extends Fragment {
1720

1821
private MvpDelegate<? extends MvpAppCompatFragment> mMvpDelegate;
1922

23+
public MvpAppCompatFragment() { super(); }
24+
25+
@ContentView
26+
public MvpAppCompatFragment(@LayoutRes int contentLayoutId) { super(contentLayoutId); }
27+
2028
public void onCreate(Bundle savedInstanceState) {
2129
super.onCreate(savedInstanceState);
2230

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
package androidx.annotation;
2+
3+
import java.lang.annotation.Retention;
4+
import java.lang.annotation.Target;
5+
6+
import static java.lang.annotation.ElementType.CONSTRUCTOR;
7+
import static java.lang.annotation.RetentionPolicy.CLASS;
8+
9+
@Retention(CLASS)
10+
@Target({CONSTRUCTOR})
11+
public @interface ContentView {
12+
}
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
package androidx.annotation;
2+
3+
import java.lang.annotation.Documented;
4+
import java.lang.annotation.Retention;
5+
import java.lang.annotation.Target;
6+
7+
import static java.lang.annotation.ElementType.FIELD;
8+
import static java.lang.annotation.ElementType.LOCAL_VARIABLE;
9+
import static java.lang.annotation.ElementType.METHOD;
10+
import static java.lang.annotation.ElementType.PARAMETER;
11+
import static java.lang.annotation.RetentionPolicy.CLASS;
12+
13+
@Documented
14+
@Retention(CLASS)
15+
@Target({METHOD, PARAMETER, FIELD, LOCAL_VARIABLE})
16+
public @interface LayoutRes {
17+
}

moxy-androidx/stub-androidx/src/main/java/androidx/appcompat/app/AppCompatActivity.java

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,11 @@
22

33
import android.os.Bundle;
44

5+
import androidx.annotation.ContentView;
6+
import androidx.annotation.LayoutRes;
57
import androidx.fragment.app.FragmentActivity;
68

9+
710
/**
811
* Date: 25-July-18
912
* Time: 2:51
@@ -13,6 +16,15 @@
1316

1417
public class AppCompatActivity extends FragmentActivity {
1518

19+
public AppCompatActivity() {
20+
super();
21+
}
22+
23+
@ContentView
24+
public AppCompatActivity(@LayoutRes int contentLayoutId) {
25+
super(contentLayoutId);
26+
}
27+
1628
protected void onCreate(Bundle savedInstanceState) {
1729
throw new RuntimeException("Stub!");
1830
}

moxy-androidx/stub-androidx/src/main/java/androidx/fragment/app/Fragment.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,8 @@
22

33
import android.os.Bundle;
44

5+
import androidx.annotation.LayoutRes;
6+
57
/**
68
* Date: 25-July-18
79
* Time: 4:38
@@ -10,6 +12,10 @@
1012
*/
1113

1214
public class Fragment {
15+
public Fragment() { super(); }
16+
17+
public Fragment(@LayoutRes int contentLayoutId) { super(); }
18+
1319
public void onCreate(Bundle savedInstanceState) {
1420
throw new RuntimeException("Stub!");
1521
}

moxy-androidx/stub-androidx/src/main/java/androidx/fragment/app/FragmentActivity.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package androidx.fragment.app;
22

3+
import androidx.annotation.LayoutRes;
4+
35
/**
46
* Date: 25-July-18
57
* Time: 4:41
@@ -8,6 +10,14 @@
810
*/
911

1012
public class FragmentActivity {
13+
14+
public FragmentActivity() {
15+
super();
16+
}
17+
public FragmentActivity(@LayoutRes int contentLayoutId) {
18+
super();
19+
}
20+
1121
public boolean isFinishing() {
1222
throw new RuntimeException("Stub!");
1323
}

0 commit comments

Comments
 (0)