From 2b63cdbd2eacbcbd031de6616147d467da8a7c3c Mon Sep 17 00:00:00 2001 From: Adam Soltys Date: Mon, 14 Sep 2026 19:18:28 -0700 Subject: A picture sent to a channel shows up as a picture, not an empty bubble. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Vector attaches files as NIP-92 imeta tags: the blob is encrypted with a one-off AES-GCM key before it reaches Blossom, and the tag carries the url, mime, key, nonce, plaintext sha256 and dimensions. Such a message has no text, so the bubble rendered blank. The blob is now fetched (fallback hosts too), decrypted in the browser, checked against the hash, and shown from an object URL — a grey box its shape while it loads, tap to view full size, other file types as a download by name. The same tags render in DMs. Co-Authored-By: Claude Fable 5.1 --- src/style.css | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/style.css') diff --git a/src/style.css b/src/style.css index 7b16e16..1ce01ad 100644 --- a/src/style.css +++ b/src/style.css @@ -1003,3 +1003,7 @@ body::after { .footer { padding-top: 14px; padding-bottom: 0; } .tabs { margin: 10px 0; } } + +/* an encrypted picture on its way: a box the picture's shape, then the picture */ +.chat-attach-ph { display: block; width: 240px; max-width: 100%; max-height: 320px; margin-top: 6px; border-radius: 10px; background: var(--line); } +.chat-attach { display: inline-block; margin-top: 6px; } -- cgit v1.2.3