From d2459356d648825932137e9c7c5c018233c565a1 Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Mon, 24 Aug 2026 10:42:23 +0200 Subject: docs: document code block wrapping and the copy button Records why the block style carries white-space:pre-wrap and why the padding is margins plus a spacer line: Qt's markdown stylesheet does not cover pre, and Qt ignores padding and vertical margins on it. Also describes the copy button and the constraints behind its shape, since neither a widget nor :hover is available in Qt rich text. --- CHANGELOG.md | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'CHANGELOG.md') diff --git a/CHANGELOG.md b/CHANGELOG.md index 2a503a7..cc13970 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -61,9 +61,24 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - A dismiss (✕) button on status-line messages. They previously stayed until some later action replaced them; any status message can now be cleared without waiting. +- A copy button on every fenced code block, below it on the right. Qt rich + text has no widgets and no `:hover`, so it is an anchor in the same internal + scheme dispatch the thinking and search toggles use, and hovering is a + re-render driven by `QTextBrowser.highlighted()`. It is grey at rest, takes + the highlight colour under the pointer, and becomes a green tick for a + moment once used. The text comes from the source markdown, since Qt emits + one `
` per line and the block cannot be recovered from the rendered
+  HTML.
 
 ### Fixed
 
+- A long line in a code block widened the whole transcript and left it
+  scrolling sideways. Qt's markdown stylesheet wraps `p` and `li` but not
+  `pre`, and it is dropped when only the body fragment is kept, so the block
+  style now carries `white-space:pre-wrap` itself.
+- Code blocks sat flush against their tint. Qt ignores `padding` and vertical
+  margins on `
`, so the inset now comes from left and right margins and
+  the room above and below from a tinted spacer line.
 - Model listing crashed when a provider's `/v1/models` endpoint returned a
   bare JSON array instead of the standard `{"data": [...]}` envelope. The
   parser now accepts both shapes.
-- 
cgit v1.2.3