summaryrefslogtreecommitdiff
path: root/plugin_loader/loader.py
diff options
context:
space:
mode:
authortza <marios8543@gmail.com>2022-04-13 22:47:22 +0300
committertza <marios8543@gmail.com>2022-04-13 22:47:22 +0300
commitf685eeb4207e972d98d5e1f92ec0a74cf38a3f85 (patch)
treeda52161af80af7e8f21015488999d42f9d93b151 /plugin_loader/loader.py
parent6250fafa6e35277d3f30cb23b11193da18adee6c (diff)
downloaddecky-loader-f685eeb4207e972d98d5e1f92ec0a74cf38a3f85.tar.gz
decky-loader-f685eeb4207e972d98d5e1f92ec0a74cf38a3f85.zip
Added support for passive plugins (that don't implement main.py)
Diffstat (limited to 'plugin_loader/loader.py')
-rw-r--r--plugin_loader/loader.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/plugin_loader/loader.py b/plugin_loader/loader.py
index 9523d73d..74c99442 100644
--- a/plugin_loader/loader.py
+++ b/plugin_loader/loader.py
@@ -83,6 +83,8 @@ class Loader:
else:
self.plugins[plugin.name].stop(self.loop)
self.plugins.pop(plugin.name, None)
+ if plugin.passive:
+ self.logger.info(f"Plugin {plugin.name} is passive")
self.plugins[plugin.name] = plugin.start(self.loop)
self.logger.info(f"Loaded {plugin.name}")
except Exception as e:
@@ -94,7 +96,7 @@ class Loader:
def import_plugins(self):
self.logger.info(f"import plugins from {self.plugin_path}")
- directories = [i for i in listdir(self.plugin_path) if path.isdir(path.join(self.plugin_path, i)) and path.isfile(path.join(self.plugin_path, i, "main.py"))]
+ directories = [i for i in listdir(self.plugin_path) if path.isdir(path.join(self.plugin_path, i)) and path.isfile(path.join(self.plugin_path, i, "plugin.json"))]
for directory in directories:
self.logger.info(f"found plugin: {directory}")
self.import_plugin(path.join(self.plugin_path, directory, "main.py"), directory)
@@ -176,4 +178,4 @@ class Loader:
async def refresh_iframe(self):
tab = await get_tab("QuickAccess")
await tab.open_websocket()
- return await tab.evaluate_js("reloadIframe()", False) \ No newline at end of file
+ return await tab.evaluate_js("reloadIframe()", False)