diff options
Diffstat (limited to 'wasp')
| -rw-r--r-- | wasp/apps/software.py | 3 | ||||
| -rw-r--r-- | wasp/wasp.py | 4 |
2 files changed, 5 insertions, 2 deletions
diff --git a/wasp/apps/software.py b/wasp/apps/software.py index 2c7869c..a39cce0 100644 --- a/wasp/apps/software.py +++ b/wasp/apps/software.py @@ -63,8 +63,7 @@ class SoftwareApp(): if checkbox.touch(event): label = checkbox.label.replace(' ', '') if checkbox.state: - exec('import apps.{}'.format(module)) - exec('wasp.system.register(apps.{}.{}App())'.format(module, label)) + wasp.system.register('apps.{}.{}App'.format(module, label)) else: for app in wasp.system.launcher_ring: if type(app).__name__.startswith(label): diff --git a/wasp/wasp.py b/wasp/wasp.py index 79f706c..c9f40db 100644 --- a/wasp/wasp.py +++ b/wasp/wasp.py @@ -164,6 +164,10 @@ class Manager(): :param object app: The application to regsister """ + if isinstance(app, str): + exec('import ' + app[:app.rindex('.')]) + app = eval(app + '()') + if quick_ring == True: self.quick_ring.append(app) else: |
