author | Lars Hjemli <hjemli@gmail.com> | 2007-05-15 23:16:56 (UTC) |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2007-05-15 23:16:56 (UTC) |
commit | dff894d12953a8a3cd7cdca2357771212a2f57d6 (patch) (side-by-side diff) | |
tree | 042f1fbc0594d61d97721167197506760847ce2a | |
parent | f9ff7df613b4ee86fe5914c4ae3400650882c03d (diff) | |
download | cgit-dff894d12953a8a3cd7cdca2357771212a2f57d6.zip cgit-dff894d12953a8a3cd7cdca2357771212a2f57d6.tar.gz cgit-dff894d12953a8a3cd7cdca2357771212a2f57d6.tar.bz2 |
Add link to commitdiff below diffstat
This link is a lot easier to locate than the links to the right of the
parent entries.
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
-rw-r--r-- | cgit.css | 6 | ||||
-rw-r--r-- | ui-commit.c | 6 |
2 files changed, 10 insertions, 2 deletions
@@ -175,131 +175,135 @@ div.error { td.ls-blob, td.ls-dir, td.ls-mod { font-family: monospace; } div.ls-dir a { font-weight: bold; } th.filesize, td.filesize { text-align: right; } td.filesize { font-family: monospace; } td.links { font-size: 80%; padding-left: 2em; } td.filemode { font-family: monospace; } td.blob { white-space: pre; font-family: monospace; background-color: white; } table.nowrap td { white-space: nowrap; } table.commit-info { border-collapse: collapse; margin-top: 1.5em; } table.commit-info th { text-align: left; font-weight: normal; padding: 0.1em 1em 0.1em 0.1em; } table.commit-info td { font-weight: normal; padding: 0.1em 1em 0.1em 0.1em; } div.commit-subject { font-weight: bold; font-size: 125%; margin: 1.5em 0em 0.5em 0em; padding: 0em; } div.commit-msg { white-space: pre; font-family: monospace; } +div.diffstat-header { + font-weight: bold; + padding-top: 1.5em; +} + table.diffstat { border-collapse: collapse; - margin-top: 1.5em; width: 100%; border: solid 1px #aaa; background-color: #eee; } table.diffstat tr:hover { background-color: #ccc; } table.diffstat th { font-weight: normal; text-align: left; text-decoration: underline; padding: 0.1em 1em 0.1em 0.1em; font-size: 100%; } table.diffstat td { padding: 0.2em 0.2em 0.1em 0.1em; font-size: 100%; border: none; } table.diffstat td span.modechange { padding-left: 1em; color: red; } table.diffstat td.add a { color: green; } table.diffstat td.del a { color: red; } table.diffstat td.upd a { color: blue; } table.diffstat td.graph { width: 75%; vertical-align: center; } table.diffstat td.graph table { border: none; } table.diffstat td.graph td { padding: 0px; border: 0px; height: 7pt; } table.diffstat td.graph td.add { background-color: #5c5; } table.diffstat td.graph td.rem { background-color: #c55; } table.diffstat td.graph td.none { diff --git a/ui-commit.c b/ui-commit.c index 93eb8fd..ff1fad3 100644 --- a/ui-commit.c +++ b/ui-commit.c @@ -160,77 +160,81 @@ void cgit_print_commit(const char *hex) return; } commit = lookup_commit_reference(sha1); if (!commit) { cgit_print_error(fmt("Bad commit reference: %s", hex)); return; } info = cgit_parse_commit(commit); html("<table class='commit-info'>\n"); html("<tr><th>author</th><td>"); html_txt(info->author); html(" "); html_txt(info->author_email); html("</td><td class='right'>"); cgit_print_date(info->author_date); html("</td></tr>\n"); html("<tr><th>committer</th><td>"); html_txt(info->committer); html(" "); html_txt(info->committer_email); html("</td><td class='right'>"); cgit_print_date(info->committer_date); html("</td></tr>\n"); html("<tr><th>tree</th><td colspan='2' class='sha1'><a href='"); query = fmt("h=%s&id=%s", sha1_to_hex(commit->object.sha1), sha1_to_hex(commit->tree->object.sha1)); html_attr(cgit_pageurl(cgit_query_repo, "tree", query)); htmlf("'>%s</a></td></tr>\n", sha1_to_hex(commit->tree->object.sha1)); for (p = commit->parents; p ; p = p->next) { parent = lookup_commit_reference(p->item->object.sha1); if (!parent) { html("<tr><td colspan='3'>"); cgit_print_error("Error reading parent commit"); html("</td></tr>"); continue; } html("<tr><th>parent</th>" "<td colspan='2' class='sha1'>" "<a href='"); query = fmt("h=%s", sha1_to_hex(p->item->object.sha1)); html_attr(cgit_pageurl(cgit_query_repo, "commit", query)); htmlf("'>%s</a> (<a href='", sha1_to_hex(p->item->object.sha1)); query = fmt("id=%s&id2=%s", sha1_to_hex(parent->tree->object.sha1), sha1_to_hex(commit->tree->object.sha1)); html_attr(cgit_pageurl(cgit_query_repo, "diff", query)); html("'>diff</a>)</td></tr>"); } if (cgit_repo->snapshots) { htmlf("<tr><th>download</th><td colspan='2' class='sha1'><a href='"); filename = fmt("%s-%s.zip", cgit_query_repo, hex); html_attr(cgit_pageurl(cgit_query_repo, "snapshot", fmt("id=%s&name=%s", hex, filename))); htmlf("'>%s</a></td></tr>", filename); } html("</table>\n"); html("<div class='commit-subject'>"); html_txt(info->subject); html("</div>"); html("<div class='commit-msg'>"); html_txt(info->msg); html("</div>"); if (!(commit->parents && commit->parents->next && commit->parents->next->next)) { + html("<div class='diffstat-header'>Diffstat</div>"); html("<table class='diffstat'>"); max_changes = 0; cgit_diff_commit(commit, inspect_filepair); for(i = 0; i<files; i++) print_fileinfo(&items[i]); html("</table>"); html("<div class='diffstat-summary'>"); - htmlf("%d files changed, %d insertions, %d deletions\n", + htmlf("%d files changed, %d insertions, %d deletions (", files, total_adds, total_rems); + query = fmt("h=%s", hex); + html_link_open(cgit_pageurl(cgit_query_repo, "diff", query), NULL, NULL); + html("show diff</a>)"); html("</div>"); } cgit_free_commitinfo(info); } |