Skip to content

Fix the Composer stuttering with large pictures attached - #458

Merged
panarch merged 1 commit into
mainfrom
composer-incremental-render
Oct 17, 2026
Merged

panarch merged 1 commit into
mainfrom
composer-incremental-render

Conversation

@panarch

@panarch panarch commented Oct 17, 2026

Copy link
Copy Markdown
Owner

With a few large pictures attached, the Composer stuttered: voice input, its spinner, and its level meter jerked, and the Composer froze for a moment at each voice step.

Web:

  • A picture larger than 216px on its short side shows as a thumbnail drawn from a copy reduced to that size, three device pixels for each of the thumbnail's 72px. The image preview, the message sent, and the picture shown in the conversation keep the original. An animated GIF's thumbnail stays on its first frame.
  • Drawing the Composer again no longer rebuilds its attachments or its voice and send buttons. A thumbnail, file chip, or button keeps its node: the spinner does not restart within a voice step, the level meter keeps its bars through a Task update while recording, and an error containing a quote is not announced again.
  • A Send or Stop key shown by Action Hints no longer presses the other action after the button changes in place.

Docs:

  • frontend.md lists the attachment strip and describes how its thumbnails are drawn.

With a few large pictures attached, the Composer stuttered, voice input and
its spinner included. Every render rebuilt the thumbnails and the voice and
send buttons from markup, and each thumbnail drew the whole photo into its
72px box. Attachments now have their own strip that keeps a node per
attachment and draws a picture from a copy 216px on its short side; the
Composer's buttons stay mounted and only what changed is patched.
@cloudflare-workers-and-pages

cloudflare-workers-and-pages Bot commented Oct 17, 2026 •

Copy link
Copy Markdown

🚀 Deploying Preview to Cloudflare 🚀

Preview URL: https://composer-incremental-render-caffold.taehoon-moon.workers.dev (commit 49b6726)

This URL reflects your latest Preview deployment

Preview Deployments by commit

Status Deployment URL Commit Updated (UTC) See this deployment's details
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://215d60b5-caffold.taehoon-moon.workers.dev 49b6726 2026-10-17T22:26:53.010Z Visit the dashboard ↗

@panarch panarch self-assigned this Oct 17, 2026
@panarch
panarch merged commit 7fc9903 into main Oct 17, 2026
10 checks passed
@panarch
panarch deleted the composer-incremental-render branch October 17, 2026 22:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant