thunderbird-patch-review
Easy-to-use patch review interface for Thunderbird
Contribute: ~marcc/thunderbird-review-plugin@lists.sr.ht
git clone git://mccd.space/thunderbird-patch-review
| Log | Files | Refs | README | LICENSE |
commit 7e7527f2aa32b3bbea1c218a9b6ded0376b13fe5 parent a23ea54eb255049183779f8e4bcf828a9a4103ba Author: Pi Agent <agent@pi.local> Date: Sat, 18 Jul 2026 22:26:25 +0200 review: re-render nav on click; prepend bold "Reviewing patch N" title The pill click handler updated state.current and the patch box but skipped\nrenderNav, so the .active pill never moved. Re-render nav on each click.\nWhile here, add a bold "Reviewing patch N" (or "Reviewing cover") label\nbefore the pills in the top bar, replacing the old static series title. Diffstat:
| M | extension/review/review.css | | | 5 | +++++ |
| M | extension/review/review.js | | | 14 | ++++++++++++++ |
2 files changed, 19 insertions(+), 0 deletions(-)
diff --git a/extension/review/review.css b/extension/review/review.css
@@ -62,6 +62,11 @@ body {
flex-wrap: wrap;
}
+#series-nav .series-title {
+ font-weight: 600;
+ white-space: nowrap;
+}
+
#actions {
display: flex;
align-items: center;
diff --git a/extension/review/review.js b/extension/review/review.js
@@ -75,6 +75,19 @@ function renderNav() {
const nav = state.navEl;
if (!nav) return;
nav.textContent = "";
+
+ const current = state.series[state.current];
+ const title = document.createElement("span");
+ title.className = "series-title";
+ title.textContent = current
+ ? current.isCover
+ ? "Reviewing cover"
+ : current.n !== null && current.m
+ ? `Reviewing patch ${current.n}`
+ : "Reviewing patch"
+ : "Review";
+ nav.appendChild(title);
+
state.series.forEach((patch, i) => {
const pill = document.createElement("span");
pill.className = "pill" + (i === state.current ? " active" : "");
@@ -93,6 +106,7 @@ function renderNav() {
pill.title = patch.subject;
pill.addEventListener("click", () => {
state.current = i;
+ renderNav();
renderPatch();
});
nav.appendChild(pill);