@@ -41,17 +41,7 @@ redef extern class NativeActivity
41
41
42
42
# Set the main layout of this activity
43
43
fun content_view =(layout : NativeViewGroup ) in "Java " `{
44
- final ViewGroup final_layout = layout;
45
- final Activity final_self = self;
46
-
47
- self.runOnUiThread(new Runnable() {
48
- @Override
49
- public void run() {
50
- final_self.setContentView(final_layout);
51
-
52
- final_layout.requestFocus();
53
- }
54
- });
44
+ self.setContentView(layout);
55
45
`}
56
46
end
57
47
@@ -63,17 +53,7 @@ extern class NativeView in "Java" `{ android.view.View `}
63
53
fun minimum_height =(val : Int ) in "Java " `{ self.setMinimumHeight((int)val); `}
64
54
65
55
fun enabled : Bool in "Java " `{ return self.isEnabled(); `}
66
- fun enabled =(value : Bool ) in "Java " `{
67
- final View final_self = self;
68
- final boolean final_value = value;
69
-
70
- ((Activity)self.getContext()).runOnUiThread(new Runnable() {
71
- @Override
72
- public void run() {
73
- final_self.setEnabled(final_value);
74
- }
75
- });
76
- `}
56
+ fun enabled =(value : Bool ) in "Java " `{ self.setEnabled(value); `}
77
57
end
78
58
79
59
# A collection of `NativeView`
@@ -82,6 +62,8 @@ extern class NativeViewGroup in "Java" `{ android.view.ViewGroup `}
82
62
83
63
fun add_view (view : NativeView ) in "Java " `{ self.addView(view); `}
84
64
65
+ fun remove_view (view : NativeView ) in "Java " `{ self.removeView(view); `}
66
+
85
67
fun add_view_with_weight (view : NativeView , weight : Float )
86
68
in "Java " `{
87
69
self.addView(view, new LinearLayout.LayoutParams(LinearLayout.LayoutParams.MATCH_PARENT, LinearLayout.LayoutParams.MATCH_PARENT, (float)weight));
@@ -104,6 +86,12 @@ extern class NativeLinearLayout in "Java" `{ android.widget.LinearLayout `}
104
86
LinearLayout.LayoutParams.WRAP_CONTENT);
105
87
self.addView(view, params);
106
88
`}
89
+
90
+ redef fun new_global_ref import sys , Sys .jni_env `{
91
+ Sys sys = NativeLinearLayout_sys(self);
92
+ JNIEnv *env = Sys_jni_env(sys);
93
+ return (*env)->NewGlobalRef(env, self);
94
+ `}
107
95
end
108
96
109
97
# A `NativeViewGroup` organized as a grid
@@ -117,6 +105,12 @@ extern class NativeGridLayout in "Java" `{ android.widget.GridLayout `}
117
105
fun column_count =(val : Int ) in "Java " `{ self.setColumnCount((int)val); `}
118
106
119
107
redef fun add_view (view ) in "Java " `{ self.addView(view); `}
108
+
109
+ redef fun new_global_ref import sys , Sys .jni_env `{
110
+ Sys sys = NativeGridLayout_sys(self);
111
+ JNIEnv *env = Sys_jni_env(sys);
112
+ return (*env)->NewGlobalRef(env, self);
113
+ `}
120
114
end
121
115
122
116
extern class NativePopupWindow in "Java " `{ android.widget.PopupWindow `}
@@ -131,6 +125,12 @@ extern class NativePopupWindow in "Java" `{ android.widget.PopupWindow `}
131
125
`}
132
126
133
127
fun content_view =(layout : NativeViewGroup ) in "Java " `{ self.setContentView(layout); `}
128
+
129
+ redef fun new_global_ref import sys , Sys .jni_env `{
130
+ Sys sys = NativePopupWindow_sys(self);
131
+ JNIEnv *env = Sys_jni_env(sys);
132
+ return (*env)->NewGlobalRef(env, self);
133
+ `}
134
134
end
135
135
136
136
extern class NativeTextView in "Java " `{ android.widget.TextView `}
@@ -140,18 +140,7 @@ extern class NativeTextView in "Java" `{ android.widget.TextView `}
140
140
141
141
fun text : JavaString in "Java " `{ return self.getText().toString(); `}
142
142
143
- fun text =(value : JavaString ) in "Java " `{
144
-
145
- final TextView final_self = self;
146
- final String final_value = value;
147
-
148
- ((Activity)self.getContext()).runOnUiThread(new Runnable() {
149
- @Override
150
- public void run() {
151
- final_self.setText(final_value);
152
- }
153
- });
154
- `}
143
+ fun text =(value : JavaString ) in "Java " `{ self.setText(value); `}
155
144
156
145
fun gravity_center in "Java " `{
157
146
self.setGravity(Gravity.CENTER);
@@ -163,6 +152,12 @@ extern class NativeTextView in "Java" `{ android.widget.TextView `}
163
152
fun text_size =(dpi : Float ) in "Java " `{
164
153
self.setTextSize(android.util.TypedValue.COMPLEX_UNIT_DIP, (float)dpi);
165
154
`}
155
+
156
+ redef fun new_global_ref import sys , Sys .jni_env `{
157
+ Sys sys = NativeTextView_sys(self);
158
+ JNIEnv *env = Sys_jni_env(sys);
159
+ return (*env)->NewGlobalRef(env, self);
160
+ `}
166
161
end
167
162
168
163
extern class NativeEditText in "Java " `{ android.widget.EditText `}
@@ -176,7 +171,7 @@ extern class NativeEditText in "Java" `{ android.widget.EditText `}
176
171
177
172
fun input_type_text in "Java " `{ self.setInputType(android.text.InputType.TYPE_CLASS_TEXT); `}
178
173
179
- redef fun new_global_ref : SELF import sys , Sys .jni_env `{
174
+ redef fun new_global_ref import sys , Sys .jni_env `{
180
175
Sys sys = NativeEditText_sys(self);
181
176
JNIEnv *env = Sys_jni_env(sys);
182
177
return (*env)->NewGlobalRef(env, self);
@@ -188,7 +183,7 @@ extern class NativeButton in "Java" `{ android.widget.Button `}
188
183
189
184
redef type SELF : NativeButton
190
185
191
- redef fun new_global_ref : SELF import sys , Sys .jni_env `{
186
+ redef fun new_global_ref import sys , Sys .jni_env `{
192
187
Sys sys = NativeButton_sys(self);
193
188
JNIEnv *env = Sys_jni_env(sys);
194
189
return (*env)->NewGlobalRef(env, self);
0 commit comments