-rw-r--r-- | cgit.css | 29 | ||||
-rw-r--r-- | cgit.h | 1 | ||||
-rw-r--r-- | ui-commit.c | 15 | ||||
-rw-r--r-- | ui-log.c | 12 |
4 files changed, 57 insertions, 0 deletions
@@ -165,4 +165,15 @@ table.list td.logmsg { } +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; +} + table.list td a { color: black; @@ -327,4 +338,22 @@ div.commit-msg { } +div.notes-header { + font-weight: bold; + padding-top: 1.5em; +} + +div.notes { + white-space: pre; + font-family: monospace; + border: solid 1px #ee9; + background-color: #ffd; + padding: 0.3em 2em 0.3em 1em; + float: left; +} + +div.notes-footer { + clear: left; +} + div.diffstat-header { font-weight: bold; @@ -20,4 +20,5 @@ #include <xdiff/xdiff.h> #include <utf8.h> +#include <notes.h> diff --git a/ui-commit.c b/ui-commit.c index a11bc5f..45af450 100644 --- a/ui-commit.c +++ b/ui-commit.c @@ -18,4 +18,5 @@ void cgit_print_commit(char *hex, const char *prefix) struct commitinfo *info, *parent_info; struct commit_list *p; + struct strbuf notes = STRBUF_INIT; unsigned char sha1[20]; char *tmp, *tmp2; @@ -36,4 +37,6 @@ void cgit_print_commit(char *hex, const char *prefix) info = cgit_parse_commit(commit); + get_commit_notes(commit, ¬es, PAGE_ENCODING, 0); + load_ref_decorations(DECORATE_FULL_REFS); @@ -121,4 +124,15 @@ void cgit_print_commit(char *hex, const char *prefix) cgit_close_filter(ctx.repo->commit_filter); html("</div>"); + if (notes.len != 0) { + html("<div class='notes-header'>Notes</div>"); + html("<div class='notes'>"); + if (ctx.repo->commit_filter) + cgit_open_filter(ctx.repo->commit_filter); + html_txt(notes.buf); + if (ctx.repo->commit_filter) + cgit_close_filter(ctx.repo->commit_filter); + html("</div>"); + html("<div class='notes-footer'></div>"); + } if (parents < 3) { if (parents) @@ -128,4 +142,5 @@ void cgit_print_commit(char *hex, const char *prefix) cgit_print_diff(ctx.qry.sha1, tmp, prefix); } + strbuf_release(¬es); cgit_free_commitinfo(info); } @@ -112,4 +112,7 @@ void print_commit(struct commit *commit) html("</td></tr>\n"); if (ctx.qry.showmsg) { + struct strbuf notes = STRBUF_INIT; + get_commit_notes(commit, ¬es, PAGE_ENCODING, 0); + if (ctx.repo->enable_log_filecount) { cols++; @@ -121,4 +124,13 @@ void print_commit(struct commit *commit) html_txt(info->msg); 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); } cgit_free_commitinfo(info); |