Skip to content

Commit 7ef9e63

Browse files
authored
Merge pull request #30 from Omega-R/develop
Develop
2 parents 30793bd + efdf8a3 commit 7ef9e63

File tree

17 files changed

+197
-93
lines changed

17 files changed

+197
-93
lines changed

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

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package example.com.moxy_androidx_sample;
22

3+
import android.widget.Toast;
4+
35
import androidx.annotation.ContentView;
46
import androidx.annotation.LayoutRes;
57
import com.omegar.mvp.MvpAppCompatActivity;
@@ -17,7 +19,7 @@ public BaseActivity(@LayoutRes int contentLayoutId) {
1719

1820
@Override
1921
public void testFunction() {
20-
22+
Toast.makeText(this, "testFunction", Toast.LENGTH_LONG).show();
2123
}
2224

2325
}

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

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ class MainPresenter : BasePresenter<Contract.MainView<Double>>() {
99

1010

1111
init {
12+
viewState.testFunction()
1213
viewState.printLog(10.0, "Kek")
1314
viewState.value = "test";
1415
}

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ interface Contract {
1010

1111
var value: String
1212

13-
@StateStrategyType(ADD_TO_END_SINGLE)
13+
@StateStrategyType(ADD_TO_END_SINGLE, singleInstance = true)
1414
fun printLog(msg: D?, log: String?)
1515

1616
}

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

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import android.os.Build;
44
import android.os.Bundle;
55

6+
import androidx.annotation.LayoutRes;
67
import androidx.appcompat.app.AppCompatDialogFragment;
78
import androidx.fragment.app.Fragment;
89

@@ -11,6 +12,10 @@ public class MvpAppCompatDialogFragment extends AppCompatDialogFragment implemen
1112
private boolean mIsStateSaved;
1213
private MvpDelegate<? extends MvpAppCompatDialogFragment> mMvpDelegate;
1314

15+
public MvpAppCompatDialogFragment() { super(); }
16+
17+
public MvpAppCompatDialogFragment(@LayoutRes int contentLayoutId) { super(contentLayoutId); }
18+
1419
public void onCreate(Bundle savedInstanceState) {
1520
super.onCreate(savedInstanceState);
1621

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

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import android.os.Build;
44
import android.os.Bundle;
55

6+
import androidx.annotation.LayoutRes;
67
import androidx.fragment.app.Fragment;
78

89
import com.google.android.material.bottomsheet.BottomSheetDialogFragment;
@@ -11,7 +12,7 @@ public class MvpBottomSheetDialogFragment extends BottomSheetDialogFragment impl
1112

1213
private boolean mIsStateSaved;
1314
private MvpDelegate<? extends MvpBottomSheetDialogFragment> mMvpDelegate;
14-
15+
1516
public void onCreate(Bundle savedInstanceState) {
1617
super.onCreate(savedInstanceState);
1718

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

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

3+
import androidx.annotation.LayoutRes;
34
import androidx.fragment.app.DialogFragment;
45

56
/**
@@ -10,4 +11,8 @@
1011
*/
1112
public class AppCompatDialogFragment extends DialogFragment {
1213

14+
public AppCompatDialogFragment() { super(); }
15+
16+
public AppCompatDialogFragment(@LayoutRes int contentLayoutId) { super(contentLayoutId); }
17+
1318
}

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

Lines changed: 6 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: 22-March-19
57
* Time: 08:58
@@ -8,4 +10,8 @@
810
*/
911
public class DialogFragment extends Fragment {
1012

13+
public DialogFragment() { super(); }
14+
15+
public DialogFragment(@LayoutRes int contentLayoutId) { super(contentLayoutId); }
16+
1117
}

moxy-androidx/stub-androidx/src/main/java/com/google/android/material/bottomsheet/BottomSheetDialogFragment.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@
44

55
public class BottomSheetDialogFragment extends AppCompatDialogFragment {
66

7+
78
}

moxy-compiler/src/main/java/com/omegar/mvp/compiler/Util.java

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -187,6 +187,17 @@ public static String getAnnotationValueAsString(AnnotationMirror annotationMirro
187187
}
188188
}
189189

190+
public static boolean getAnnotationValueAsBoolean(AnnotationMirror annotationMirror, String key) {
191+
AnnotationValue av = getAnnotationValue(annotationMirror, key);
192+
193+
if (av != null) {
194+
return Boolean.parseBoolean(av.getValue().toString());
195+
} else {
196+
return false;
197+
}
198+
}
199+
200+
190201
public static AnnotationValue getAnnotationValue(AnnotationMirror annotationMirror, String key) {
191202
if (annotationMirror == null) return null;
192203

moxy-compiler/src/main/java/com/omegar/mvp/compiler/entity/CommandViewMethod.java

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,16 +21,19 @@ public class CommandViewMethod extends ViewMethod {
2121
private final String mUniqueSuffix;
2222
private final TypeElement mStrategy;
2323
private final String mTag;
24+
private final boolean mSingleInstance;
2425

2526
public CommandViewMethod(Types types, DeclaredType targetInterfaceElement,
2627
ExecutableElement methodElement,
2728
TypeElement strategy,
2829
String tag,
29-
String uniqueSuffix) {
30+
String uniqueSuffix,
31+
boolean singleInstance) {
3032
super(types, targetInterfaceElement, methodElement);
3133
mStrategy = strategy;
3234
mTag = tag;
3335
mUniqueSuffix = uniqueSuffix;
36+
mSingleInstance = singleInstance;
3437
}
3538

3639
public TypeElement getStrategy() {
@@ -49,6 +52,10 @@ public String getCommandClassName() {
4952
return Util.capitalizeString(getName()) + mUniqueSuffix + "Command";
5053
}
5154

55+
public boolean isSingleInstance() {
56+
return mSingleInstance;
57+
}
58+
5259
@Override
5360
public boolean equals(Object o) {
5461
if (this == o) return true;
@@ -57,11 +64,12 @@ public boolean equals(Object o) {
5764
CommandViewMethod that = (CommandViewMethod) o;
5865
return Objects.equals(mUniqueSuffix, that.mUniqueSuffix) &&
5966
Objects.equals(mStrategy, that.mStrategy) &&
60-
Objects.equals(mTag, that.mTag);
67+
Objects.equals(mTag, that.mTag) &&
68+
mSingleInstance == that.mSingleInstance;
6169
}
6270

6371
@Override
6472
public int hashCode() {
65-
return Objects.hash(super.hashCode(), mUniqueSuffix, mStrategy, mTag);
73+
return Objects.hash(super.hashCode(), mUniqueSuffix, mStrategy, mTag, mSingleInstance);
6674
}
6775
}

0 commit comments

Comments
 (0)