aboutsummaryrefslogtreecommitdiffstats
path: root/docs/superpowers/plans/2026-08-03-post-0.1.0-usability-closed.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/superpowers/plans/2026-08-03-post-0.1.0-usability-closed.md')
-rw-r--r--docs/superpowers/plans/2026-08-03-post-0.1.0-usability-closed.md26
1 files changed, 26 insertions, 0 deletions
diff --git a/docs/superpowers/plans/2026-08-03-post-0.1.0-usability-closed.md b/docs/superpowers/plans/2026-08-03-post-0.1.0-usability-closed.md
index d1daa57..3c1c8fd 100644
--- a/docs/superpowers/plans/2026-08-03-post-0.1.0-usability-closed.md
+++ b/docs/superpowers/plans/2026-08-03-post-0.1.0-usability-closed.md
@@ -7166,6 +7166,16 @@ that grouping is theirs to make. It shares the container item 141 introduces.
`everyActionIsReachableFromAMenu()` asserts on. This is a second presentation
of the same `QAction`s. Absorbs item 139.
+**Outcome, and the revision the user made on sight.** Built 2026-08-24 with
+Compose, Reply and Forward all on the pane's bar, as the note asked. The user
+then reconsidered: Compose belongs on the main toolbar after all. The reason
+is worth keeping, because it is a better rule than the one this entry was
+written to. The useful split is not "about a message" against "about the
+list", it is what the action NEEDS: Reply and Forward are meaningless without
+a message on display, while Compose needs none and is disabled only when no
+account can send. Compose therefore sits with the window-wide actions, and the
+pane's bar holds exactly the two actions that depend on what it is showing.
+
---
## 141. The message pane has no button bar of its own
@@ -7188,4 +7198,20 @@ from named widget classes, per CLAUDE.md, and this should not become the
exception. Size assumes 140 and 141 are built together; separately they are
each S and the seam between them is wasted work.
+**Outcome.** Message actions left, view controls right, separated by an
+expanding spacer (`QToolBar` has no `addStretch()`), with `toggle_html` the
+first view control. `MessageView::setBarActions()` is the seam, so the pane
+still knows nothing about `MainWindow`'s action map.
+
+**Two things the user corrected on sight, both about placement rather than
+contents.** The bar was first put at the TOP of the pane, above the subject
+and details rows, where it read as window chrome rather than as belonging to
+the message; it now sits directly above the web view, below those rows and
+below the transient notice bars, which explain the message rather than offer
+an action on it. And its icons were the style's own default, which is 16px
+here and tiny beside a 32px toolbar: they are 7/8 of `toolbar_icon_size`,
+derived rather than hardcoded so the relation survives the user changing that
+key. A test asserting the resulting 28 alone would stop meaning anything the
+moment it did, so it asserts the relation as well.
+
---