diff --git a/pythonforandroid/recipes/android/src/android/runnable.py b/pythonforandroid/recipes/android/src/android/runnable.py index 9ed419eeaf..74268c803f 100644 --- a/pythonforandroid/recipes/android/src/android/runnable.py +++ b/pythonforandroid/recipes/android/src/android/runnable.py @@ -1,7 +1,6 @@ ''' Runnable ======== - ''' from jnius import PythonJavaClass, java_method, autoclass @@ -14,6 +13,7 @@ # is limited, so by caching them we avoid running out. __functionstable__ = {} + class Runnable(PythonJavaClass): '''Wrapper around Java Runnable class. This class can be used to schedule a call of a Python function into the PythonActivity thread. @@ -30,7 +30,6 @@ def __call__(self, *args, **kwargs): self.args = args self.kwargs = kwargs Runnable.__runnables__.append(self) - _PythonActivity.mActivity.runOnUiThread(self) @java_method('()V') @@ -42,24 +41,18 @@ def run(self): traceback.print_exc() Runnable.__runnables__.remove(self) - - def run_on_ui_thread(f): '''Decorator to create automatically a :class:`Runnable` object with the function. The function will be delayed and call into the Activity thread. ''' - if f not in __functionstable__: - - rfunction = Runnable(f) #store the runnable function - - __functionstable__[f] = {"rfunction":rfunction} - + rfunction = Runnable(f) # store the runnable function + __functionstable__[f] = {"rfunction": rfunction} rfunction = __functionstable__[f]["rfunction"] - + def f2(*args, **kwargs): rfunction(*args, **kwargs) - + return f2