-rw-r--r-- | cgit.css | 13 | ||||
-rw-r--r-- | ui-log.c | 30 |
2 files changed, 18 insertions, 25 deletions
@@ -140,60 +140,49 @@ table.list tr.nohover:hover { table.list th { font-weight: bold; /* color: #888; border-top: dashed 1px #888; border-bottom: dashed 1px #888; */ padding: 0.1em 0.5em 0.05em 0.5em; vertical-align: baseline; } table.list td { border: none; padding: 0.1em 0.5em 0.1em 0.5em; } table.list td.logsubject { font-family: monospace; font-weight: bold; } table.list td.logmsg { font-family: monospace; white-space: pre; - padding: 1em 0.5em 2em 0.5em; -} - -table.list td.lognotes-label { - text-align:right; - vertical-align:top; -} - -table.list td.lognotes { - font-family: monospace; - white-space: pre; - padding: 0em 0.5em 2em 0.5em; + padding: 0 0.5em; } table.list td a { color: black; } table.list td a.ls-dir { font-weight: bold; color: #00f; } table.list td a:hover { color: #00f; } img { border: none; } input#switch-btn { margin: 2px 0px 0px 0px; } td#sidebar input.txt { @@ -90,71 +90,75 @@ void print_commit(struct commit *commit) tmp = cgit_fileurl(ctx.repo->url, "commit", ctx.qry.vpath, tmp); html_link_open(tmp, NULL, NULL); cgit_print_age(commit->date, TM_WEEK * 2, FMT_SHORTDATE); html_link_close(); htmlf("</td><td%s>", ctx.qry.showmsg ? " class='logsubject'" : ""); cgit_commit_link(info->subject, NULL, NULL, ctx.qry.head, sha1_to_hex(commit->object.sha1), ctx.qry.vpath, 0); show_commit_decorations(commit); html("</td><td>"); html_txt(info->author); if (ctx.repo->enable_log_filecount) { files = 0; add_lines = 0; rem_lines = 0; cgit_diff_commit(commit, inspect_files, ctx.qry.vpath); html("</td><td>"); htmlf("%d", files); if (ctx.repo->enable_log_linecount) { html("</td><td>"); htmlf("-%d/+%d", rem_lines, add_lines); } } html("</td></tr>\n"); - if (ctx.qry.showmsg) { - struct strbuf notes = STRBUF_INIT; - format_note(NULL, commit->object.sha1, ¬es, PAGE_ENCODING, 0); + + if (ctx.qry.showmsg) { /* Print message + notes in a second table row */ + /* Concatenate commit message and notes in msgbuf */ + struct strbuf msgbuf = STRBUF_INIT; + if (info->msg && *(info->msg)) { + strbuf_addstr(&msgbuf, info->msg); + strbuf_addch(&msgbuf, '\n'); + } + format_note(NULL, commit->object.sha1, &msgbuf, PAGE_ENCODING, + NOTES_SHOW_HEADER | NOTES_INDENT); + strbuf_addch(&msgbuf, '\n'); + strbuf_ltrim(&msgbuf); if (ctx.repo->enable_log_filecount) { cols++; if (ctx.repo->enable_log_linecount) cols++; } + + /* Create second table row containing msgbuf */ htmlf("<tr class='nohover'><td/><td colspan='%d' class='logmsg'>", cols); - html_txt(info->msg); + html_txt(msgbuf.buf); html("</td></tr>\n"); - if (notes.len != 0) { - html("<tr class='nohover'>"); - html("<td class='lognotes-label'>Notes:</td>"); - htmlf("<td colspan='%d' class='lognotes'>", - cols); - html_txt(notes.buf); - html("</td></tr>\n"); - } - strbuf_release(¬es); + strbuf_release(&msgbuf); } + cgit_free_commitinfo(info); } static const char *disambiguate_ref(const char *ref) { unsigned char sha1[20]; const char *longref; longref = fmt("refs/heads/%s", ref); if (get_sha1(longref, sha1) == 0) return longref; return ref; } static char *next_token(char **src) { char *result; if (!src || !*src) return NULL; while (isspace(**src)) (*src)++; if (!**src) |