From b7dca4bb2a2cf488407ae051b40782f03fcabc62 Mon Sep 17 00:00:00 2001 From: Can Celik Date: Thu, 13 Aug 2026 17:21:26 +0300 Subject: fix(graphics): support high-dpi direct file frames (#2680) --- docs/next/api/herdr-api.schema.json | 8 ++++++++ docs/next/website/src/content/docs/socket-api.mdx | 7 +++++++ 2 files changed, 15 insertions(+) (limited to 'docs') diff --git a/docs/next/api/herdr-api.schema.json b/docs/next/api/herdr-api.schema.json index 674dac8d..f9642ffa 100644 --- a/docs/next/api/herdr-api.schema.json +++ b/docs/next/api/herdr-api.schema.json @@ -9295,6 +9295,14 @@ "description": "Accepts damage metadata while still consuming a complete canonical file.", "type": "boolean" }, + "file_frame_direct_max_bytes": { + "format": "uint", + "minimum": 0, + "type": [ + "integer", + "null" + ] + }, "file_frame_directory": { "type": [ "string", diff --git a/docs/next/website/src/content/docs/socket-api.mdx b/docs/next/website/src/content/docs/socket-api.mdx index 6431dcb9..17502cee 100644 --- a/docs/next/website/src/content/docs/socket-api.mdx +++ b/docs/next/website/src/content/docs/socket-api.mdx @@ -221,6 +221,13 @@ acknowledging source reuse. Monolithic `--no-session` mode advertises neither fast file transport nor exact pixel mouse and remains on owned inline fallback. Direct files are always complete canonical `width * height * 4` RGBA frames. +`file_frame_max_bytes` is the limit that remains eligible for owned inline fallback. +Primary-layer RGBA files may use the larger `file_frame_direct_max_bytes` limit when +`file_frame_transport` is available. Frames above the fallback limit are acknowledged +only when the terminal accepts the direct transfer; rejection closes the stream. If a +frame cannot use owned inline fallback while its pane is temporarily hidden or cannot be +placed during a redraw, Herdr uploads the image without displaying it and replays its +placement when the pane becomes visible again. `file_frame_damage: true` means Herdr accepts optional damage metadata for producer-side canonical-ring efficiency; it still copies or presents the full file. Resize and full redraw replay placements without retransmitting pixels. -- cgit v1.2.3