Skip to content

Commit bc638da

Browse files
committed
android.activity: fix unbind and activity result bind()
1 parent 646bd83 commit bc638da

File tree

3 files changed

+13
-4
lines changed

3 files changed

+13
-4
lines changed

recipes/android/src/android/activity.py

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,6 @@
1-
from jnius import PythonJavaClass, java_method
1+
from jnius import PythonJavaClass, java_method, autoclass
2+
3+
_activity = autoclass('org.renpy.android.PythonActivity').mActivity
24

35
_callbacks = {
46
'on_new_intent': [],
@@ -36,10 +38,12 @@ def bind(**kwargs):
3638
raise Exception('Unknown {!r} event'.format(event))
3739
elif event == 'on_new_intent':
3840
listener = NewIntentListener(callback)
41+
_activity.registerNewIntentListener(listener)
3942
_callbacks[event].append(listener)
4043
elif event == 'on_activity_result':
4144
listener = ActivityResultListener(callback)
42-
_callbacks[event].append(callback)
45+
_activity.registerActivityResultListener(listener)
46+
_callbacks[event].append(listener)
4347

4448
def unbind(**kwargs):
4549
for event, callback in kwargs.items():
@@ -49,4 +53,8 @@ def unbind(**kwargs):
4953
for listener in _callbacks[event][:]:
5054
if listener.callback is callback:
5155
_callbacks[event].remove(listener)
56+
if event == 'on_new_intent':
57+
_activity.unregisterNewIntentListener(listener)
58+
elif event == 'on_activity_result':
59+
_activity.unregisterActivityResultListener(listener)
5260

recipes/kivy/recipe.sh

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,7 @@ function prebuild_kivy() {
1313

1414
function build_kivy() {
1515
if [ -d "$BUILD_PATH/python-install/lib/python2.7/site-packages/kivy" ]; then
16-
#return
17-
true
16+
return
1817
fi
1918

2019
cd $BUILD_kivy

src/src/org/renpy/android/PythonActivity.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -430,6 +430,8 @@ public void unregisterActivityResultListener(ActivityResultListener listener) {
430430
protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
431431
if ( this.activityResultListeners == null )
432432
return;
433+
if ( this.mView != null )
434+
this.mView.onResume();
433435
for ( ActivityResultListener listener : this.activityResultListeners )
434436
listener.onActivityResult(requestCode, resultCode, intent);
435437
}

0 commit comments

Comments
 (0)