diff --git a/ledfx/__main__.py b/ledfx/__main__.py index db937605..5d7e32dd 100644 --- a/ledfx/__main__.py +++ b/ledfx/__main__.py @@ -359,8 +359,8 @@ def main(): # icon = None - if not args.offline_mode and currently_frozen(): - update_ledfx(icon) + # if not args.offline_mode and currently_frozen(): + # update_ledfx(icon) if icon: icon.run(setup=entry_point) diff --git a/ledfx/api/scenes.py b/ledfx/api/scenes.py index b506a8cc..14da8f88 100644 --- a/ledfx/api/scenes.py +++ b/ledfx/api/scenes.py @@ -81,7 +81,7 @@ class ScenesEndpoint(RestEndpoint): } return web.json_response(data=response, status=400) - if action not in ["activate", "deactivate", "rename"]: + if action not in ["activate", "activate_in", "deactivate", "rename"]: response = { "status": "failed", "reason": f'Invalid action "{action}"', @@ -105,6 +105,24 @@ class ScenesEndpoint(RestEndpoint): scene = self._ledfx.config["scenes"][scene_id] + if action == "activate_in": + ms = data.get("ms") + if ms is None: + response = { + "status": "failed", + "reason": 'Required attribute "ms" was not provided', + } + return web.json_response(data=response, status=400) + self._ledfx.loop.call_later(ms, self._ledfx.scenes.activate, scene_id) + response = { + "status": "success", + "payload": { + "type": "info", + "message": f"Activated scene {scene['name']}", + }, + } + return web.json_response(data=response, status=200) + if action == "activate": for virtual in self._ledfx.virtuals.values(): # Check virtual is in scene, make no changes if it isn't diff --git a/ledfx/effects/__init__.py b/ledfx/effects/__init__.py index e24be2f3..8e1234a4 100644 --- a/ledfx/effects/__init__.py +++ b/ledfx/effects/__init__.py @@ -318,6 +318,7 @@ class Effect(BaseRegistry): pass def get_pixels(self): + if not hasattr(self, 'pixels'): return pixels = np.copy(self.pixels) # Apply some of the base output filters if necessary if self._config["flip"]: diff --git a/ledfx_frontend/asset-manifest.json b/ledfx_frontend/asset-manifest.json index b91dfce6..fc720207 100644 --- a/ledfx_frontend/asset-manifest.json +++ b/ledfx_frontend/asset-manifest.json @@ -1,22 +1,22 @@ { "files": { - "main.css": "./static/css/main.e749384b.css", - "main.js": "./static/js/main.20432217.js", - "static/js/787.15424a8e.chunk.js": "./static/js/787.15424a8e.chunk.js", - "static/media/transitions.gif": "./static/media/transitions.53b6d6f458b421f00872.gif", - "static/media/materialdesignicons-webfont.woff": "./static/media/materialdesignicons-webfont.d8e8e0f7931afa097409.woff", - "static/media/materialdesignicons-webfont.woff2": "./static/media/materialdesignicons-webfont.e9db4005489e24809b62.woff2", - "static/media/MaterialIcons-Regular.woff2": "./static/media/MaterialIcons-Regular.f71673ad689fb42ddae1.woff2", - "static/media/ring.png": "./static/media/ring.1faea45b576b5380bde1.png", - "service-worker.js": "./service-worker.js", - "static/media/blademod.svg": "./static/media/blademod.f939f478785a84b3edcc820eef654556.svg", - "index.html": "./index.html", - "main.e749384b.css.map": "./static/css/main.e749384b.css.map", - "main.20432217.js.map": "./static/js/main.20432217.js.map", - "787.15424a8e.chunk.js.map": "./static/js/787.15424a8e.chunk.js.map" + "main.css": "/static/css/main.5721f888.css", + "main.js": "/static/js/main.e30d7aee.js", + "static/js/787.15424a8e.chunk.js": "/static/js/787.15424a8e.chunk.js", + "static/media/transitions.gif": "/static/media/transitions.53b6d6f458b421f00872.gif", + "static/media/materialdesignicons-webfont.woff": "/static/media/materialdesignicons-webfont.d8e8e0f7931afa097409.woff", + "static/media/materialdesignicons-webfont.woff2": "/static/media/materialdesignicons-webfont.e9db4005489e24809b62.woff2", + "static/media/MaterialIcons-Regular.woff2": "/static/media/MaterialIcons-Regular.f71673ad689fb42ddae1.woff2", + "service-worker.js": "/service-worker.js", + "static/media/ring.png": "/static/media/ring.1faea45b576b5380bde1.png", + "static/media/blademod.svg": "/static/media/blademod.f939f478785a84b3edcc820eef654556.svg", + "index.html": "/index.html", + "main.5721f888.css.map": "/static/css/main.5721f888.css.map", + "main.e30d7aee.js.map": "/static/js/main.e30d7aee.js.map", + "787.15424a8e.chunk.js.map": "/static/js/787.15424a8e.chunk.js.map" }, "entrypoints": [ - "static/css/main.e749384b.css", - "static/js/main.20432217.js" + "static/css/main.5721f888.css", + "static/js/main.e30d7aee.js" ] } \ No newline at end of file diff --git a/ledfx_frontend/electron.js b/ledfx_frontend/electron.js index b4cb36c0..4f390339 100644 --- a/ledfx_frontend/electron.js +++ b/ledfx_frontend/electron.js @@ -34,6 +34,7 @@ function createWindow(args) { // frame: false, webPreferences: { webSecurity: false, + allowRunningInsecureContent: true, plugins: true, enableRemoteModule: true, backgroundThrottling: false, diff --git a/ledfx_frontend/index.html b/ledfx_frontend/index.html index 3f60d3a7..99940b42 100644 --- a/ledfx_frontend/index.html +++ b/ledfx_frontend/index.html @@ -1 +1 @@ -