From 1b5713ab2d585078baed0c4c00545b227b0c07f0 Mon Sep 17 00:00:00 2001 From: Christian Bastian <80225746+cdb-boop@users.noreply.github.com> Date: Wed, 3 Apr 2024 23:53:56 -0400 Subject: [PATCH] Added filename to right-click open preview. --- __init__.py | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/__init__.py b/__init__.py index 6f4ed60..814cea8 100644 --- a/__init__.py +++ b/__init__.py @@ -277,6 +277,7 @@ async def get_model_preview(request): uri = request.query.get("uri") image_path = no_preview_image image_type = "png" + file_name = os.path.split(no_preview_image)[1] if uri != "no-preview": sep = os.path.sep uri = uri.replace("/" if sep == "\\" else "/", sep) @@ -285,9 +286,11 @@ async def get_model_preview(request): if os.path.exists(path): image_path = path image_type = extension.rsplit(".", 1)[1] + file_name = os.path.split(head)[1] + "." + image_type elif os.path.exists(head) and head.endswith(".safetensors"): image_path = head image_type = extension.rsplit(".", 1)[1] + file_name = os.path.splitext(os.path.split(head)[1])[0] + "." + image_type w = request.query.get("width") h = request.query.get("height") @@ -340,7 +343,13 @@ async def get_model_preview(request): image.save(image_bytes, format=image.format, exif=exif, pnginfo=metadata) image_data = image_bytes.getvalue() - return web.Response(body=image_data, content_type="image/" + image_type) + return web.Response( + headers={ + "Content-Disposition": f"inline; filename={file_name}", + }, + body=image_data, + content_type="image/" + image_type, + ) @server.PromptServer.instance.routes.get("/model-manager/image/extensions")