Preserve composer hyperlinks across wrapped lines (#40720)
## What changed - Detect visible HTTP(S) URLs in the composer and attach the complete OSC 8 destination to every wrapped fragment, including when part of the URL is scrolled offscreen. - Cache hyperlink metadata with the textarea wrap state while leaving masked input and destinations larger than 8 KiB unannotated. - Make shared hyperlink mapping grapheme-aware, recognize Unicode whitespace boundaries, and scan URLs and trailing delimiters incrementally for large inputs. ## Testing - Add coverage for wrapped and scrolled URLs, joined emoji, Unicode whitespace, preserved highlighting, masked input, cache invalidation, oversized destinations, and drafts containing many URLs. GitOrigin-RevId: 40facdf2fe79438c91c82bff2d849c342f1ab28a
C
Charlie Marsh committed
d6174a8798828a41380527ca24b898a4ce47f862
Parent: 42624fd
Committed by copyberry <copyberry@app.openai.com>
on 8/25/2026, 10:05:48 PM