Skip to content

Commit 9621bce

Browse files
authored
Merge pull request #1230 from NativeScript/trifonov/use-appcompat-activity
Use AppCompatActivity instead of Activity
2 parents e41c243 + c107ba6 commit 9621bce

5 files changed

Lines changed: 11 additions & 9 deletions

File tree

test-app/app/src/debug/java/com/tns/ErrorReport.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@
2222
import android.content.Context;
2323
import android.content.Intent;
2424
import android.content.pm.PackageManager;
25-
import android.graphics.Color;
2625
import android.os.Build;
2726
import android.os.Bundle;
2827
import android.os.Environment;

test-app/app/src/main/assets/app/MyActivity.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
}
1414
1515
@JavaProxy("com.tns.NativeScriptActivity")
16-
class MyActivity extends android.app.Activity
16+
class MyActivity extends android.support.v7.app.AppCompatActivity
1717
{
1818
onCreate(bundle: android.os.Bundle)
1919
{
@@ -61,4 +61,4 @@ var MyActivity = (function (_super) {
6161
JavaProxy("com.tns.NativeScriptActivity")
6262
], MyActivity);
6363
return MyActivity;
64-
})(android.app.Activity);
64+
})(android.support.v7.app.AppCompatActivity);

test-app/build-tools/jsparser/tests/cases/decorated_double_assignment_ts/app/myCustomActivity.android.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import Bundle = android.os.Bundle;
22

33
@JavaProxy('org.nativescript.MyCustomActivity')
4-
export class TestActivity extends android.app.Activity {
4+
export class TestActivity extends android.support.v7.app.AppCompatActivity {
55
static readonly TEST1: string = "my_test";
66
public onCreate(savedInstanceState?: Bundle): void {
77
super.onCreate(savedInstanceState);

test-app/build-tools/jsparser/tests/cases/decorated_double_assignment_ts/app/myCustomActivity_ts.android.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,5 +16,5 @@ var TestActivity = (function (_super) {
1616
JavaProxy('org.nativescript.MyCustomActivity')
1717
], TestActivity);
1818
return TestActivity;
19-
}(android.app.Activity));
19+
}(android.support.v7.app.AppCompatActivity));
2020
exports.TestActivity = TestActivity;

test-app/build-tools/static-binding-generator/src/main/java/org/nativescript/staticbindinggenerator/Generator.java

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,7 @@
1313
import java.nio.file.Paths;
1414
import java.util.ArrayDeque;
1515
import java.util.ArrayList;
16+
import java.util.Arrays;
1617
import java.util.HashMap;
1718
import java.util.HashSet;
1819
import java.util.List;
@@ -747,15 +748,17 @@ private boolean isApplicationClass(JavaClass clazz, Map<String, JavaClass> class
747748
private boolean isActivityClass(JavaClass clazz, Map<String, JavaClass> classes) throws ClassNotFoundException {
748749
boolean isActivityClass = false;
749750

750-
String activityClassname = "android.app.Activity";
751+
List<String> activityClassNames = Arrays.asList("android.app.Activity", "android.support.v7.app.AppCompatActivity", "androidx.appcompat.app.AppCompatActivity");
751752

752753
JavaClass currentClass = clazz;
753754
while (true) {
754755
String currentClassname = currentClass.getClassName();
755756

756-
isActivityClass = currentClassname.equals(activityClassname);
757-
if (isActivityClass) {
758-
break;
757+
for (String activityClassName: activityClassNames) {
758+
isActivityClass = currentClassname.equals(activityClassName);
759+
if (isActivityClass) {
760+
return true;
761+
}
759762
}
760763

761764
if (currentClassname.endsWith("java.lang.Object")) {

0 commit comments

Comments
 (0)