Download raw body.
gotwebd: foldable briefs?
Good idea! My only feedback is that I agree with you that the brief toggles are a little noisy (see below). Tracey Emery <tracey@traceyemery.net> writes: > On Fri, Dec 01, 2023 at 08:55:17PM +0100, Omar Polo wrote: >> I'm a bit unsure about this. It's nice since it makes the full commit >> message accessible in the briefs pages, and doesn't depend on javascript >> (just a plain <details> tag.) Most (all?) text browsers however don't >> understand it and so this diffs adds some "noise" (the three dots) to >> the briefs page. >> >> I have this too on my instance: >> <https://got.omarpolo.com/?action=summary&path=got.git> >> >> (the aria-hidden attribute is just to make screen reader & co ignoring >> the three dots that are only decorative.) > > I don't mind this. It could be handy. Let's wait for more feedback. > >> >> diff /home/op/w/got >> commit - 227f81a40643e9c82bb019336421e17e914d015a >> path + /home/op/w/got >> blob - c6f473ced0d7b7454f210dfaa119b63cd96d2ba4 >> file + gotwebd/files/htdocs/gotwebd/gotweb.css >> --- gotwebd/files/htdocs/gotwebd/gotweb.css >> +++ gotwebd/files/htdocs/gotwebd/gotweb.css >> @@ -213,6 +213,24 @@ header.subtitle h2 { >> } >> } >> >> +.briefs_log summary { >> + display: inline; >> + cursor: pointer; >> +} >> + >> +.briefs_toggle { >> + display: inline-block; >> + padding: 3px 4px; >> + border: 1px solid #222; >> + border-radius: 3px; >> + user-select: none; After playing around with it, I'd only change the padding to "0px 4px" and border-radius to 6px. The intent is to soften out the boxes, but this of course is only a nit. This does tempt me to submit a dark mode patch to change the border color of this to the purple I've been using. >> >> diff_url = (struct gotweb_url){ >> .action = DIFF, >> @@ -385,9 +385,12 @@ nextsep(char *s, char **t) >> if (tmp) >> *tmp = '\0'; >> >> - tmp = strchr(rc->commit_msg, '\n'); >> - if (tmp) >> - *tmp = '\0'; >> + body = strchr(rc->commit_msg, '\n'); >> + if (body) { >> + *body++ = '\0'; >> + while (*body == '\n') >> + body++; >> + } >> !} >> <div class='brief'> >> <p class='brief_meta'> >> @@ -399,15 +402,33 @@ nextsep(char *s, char **t) >> {{ rc->committer }} >> </span> >> </p> >> - <p class="briefs_log"> >> - <a href="{{ render gotweb_render_url(tp->tp_arg, &diff_url) }}"> >> - {{ rc->commit_msg }} >> - </a> >> - {{ if rc->refs_str }} >> - {{ " " }} <span class="refs_str">({{ rc->refs_str }})</span> >> - {{ end }} >> - </a> >> - </p> >> + {{ if body && *body != '\0' }} >> + <details class="briefs_log"> >> + <summary> >> + <a href="{{ render gotweb_render_url(tp->tp_arg, &diff_url) }}"> >> + {{ rc->commit_msg }} >> + </a> >> + {{ if rc->refs_str }} >> + {{ " " }} <span class="refs_str">({{ rc->refs_str }})</span> >> + {{ end }} >> + {{ " " }} >> + <span class="briefs_toggle" aria-hidden="true"> >> + {{ " ⋅⋅⋅ " }} >> + </span> >> + </summary> >> + {{ "\n" }} >> + <p>{{ body }}</p> >> + </details> >> + {{ else }} >> + <p class="briefs_log"> >> + <a href="{{ render gotweb_render_url(tp->tp_arg, &diff_url) }}"> >> + {{ rc->commit_msg }} >> + </a> >> + {{ if rc->refs_str }} >> + {{ " " }} <span class="refs_str">({{ rc->refs_str }})</span> >> + {{ end }} >> + </p> >> + {{ end }} >> </div> >> <div class="navs_wrapper"> >> <div class="navs"> >>
gotwebd: foldable briefs?