When the commit graph is present, we prefer to draw it along the left edge,
and moving the 'Age' column to the right of the 'Author' column, like in gitk.
Signed-off-by: Johan Herland <johan@herland.net>
Signed-off-by: Lars Hjemli <hjemli@gmail.com>
{
struct commitinfo *info;
char *tmp;
{
struct commitinfo *info;
char *tmp;
+ int cols = revs->graph ? 3 : 2;
struct strbuf graphbuf = STRBUF_INIT;
struct strbuf msgbuf = STRBUF_INIT;
struct strbuf graphbuf = STRBUF_INIT;
struct strbuf msgbuf = STRBUF_INIT;
/* Advance graph until current commit */
while (!graph_next_line(revs->graph, &graphbuf)) {
/* Print graph segment in otherwise empty table row */
/* Advance graph until current commit */
while (!graph_next_line(revs->graph, &graphbuf)) {
/* Print graph segment in otherwise empty table row */
- html("<tr class='nohover'><td/><td class='commitgraph'>");
+ html("<tr class='nohover'><td class='commitgraph'>");
html(graphbuf.buf);
htmlf("</td><td colspan='%d' /></tr>\n", cols);
strbuf_setlen(&graphbuf, 0);
html(graphbuf.buf);
htmlf("</td><td colspan='%d' /></tr>\n", cols);
strbuf_setlen(&graphbuf, 0);
}
info = cgit_parse_commit(commit);
}
info = cgit_parse_commit(commit);
- htmlf("<tr%s><td>",
- ctx.qry.showmsg ? " class='logheader'" : "");
- tmp = fmt("id=%s", sha1_to_hex(commit->object.sha1));
- 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();
- html("</td>");
+ htmlf("<tr%s>", ctx.qry.showmsg ? " class='logheader'" : "");
if (revs->graph) {
/* Print graph segment for current commit */
if (revs->graph) {
/* Print graph segment for current commit */
html("</td>");
strbuf_setlen(&graphbuf, 0);
}
html("</td>");
strbuf_setlen(&graphbuf, 0);
}
+ else {
+ html("<td>");
+ tmp = fmt("id=%s", sha1_to_hex(commit->object.sha1));
+ 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();
+ html("</td>");
+ }
htmlf("<td%s>", ctx.qry.showmsg ? " class='logsubject'" : "");
if (ctx.qry.showmsg) {
htmlf("<td%s>", ctx.qry.showmsg ? " class='logsubject'" : "");
if (ctx.qry.showmsg) {
show_commit_decorations(commit);
html("</td><td>");
html_txt(info->author);
show_commit_decorations(commit);
html("</td><td>");
html_txt(info->author);
+
+ if (revs->graph) {
+ html("</td><td>");
+ tmp = fmt("id=%s", sha1_to_hex(commit->object.sha1));
+ 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();
+ }
+
if (ctx.repo->enable_log_filecount) {
files = 0;
add_lines = 0;
if (ctx.repo->enable_log_filecount) {
files = 0;
add_lines = 0;
html("</td></tr>\n");
if (revs->graph || ctx.qry.showmsg) { /* Print a second table row */
html("</td></tr>\n");
if (revs->graph || ctx.qry.showmsg) { /* Print a second table row */
- html("<tr class='nohover'><td/>"); /* Empty 'Age' column */
+ html("<tr class='nohover'>");
if (ctx.qry.showmsg) {
/* Concatenate commit message + notes in msgbuf */
if (ctx.qry.showmsg) {
/* Concatenate commit message + notes in msgbuf */
+ else
+ html("<td/>"); /* Empty 'Age' column */
/* Print msgbuf into remainder of table row */
htmlf("<td colspan='%d'%s>\n", cols,
/* Print msgbuf into remainder of table row */
htmlf("<td colspan='%d'%s>\n", cols,
if (pager)
html("<table class='list nowrap'>");
if (pager)
html("<table class='list nowrap'>");
- html("<tr class='nohover'><th class='left'>Age</th>");
+ html("<tr class='nohover'>");
if (commit_graph)
html("<th></th>");
if (commit_graph)
html("<th></th>");
+ else
+ html("<th class='left'>Age</th>");
html("<th class='left'>Commit message");
if (pager) {
html(" (");
html("<th class='left'>Commit message");
if (pager) {
html(" (");
html(")");
}
html("</th><th class='left'>Author</th>");
html(")");
}
html("</th><th class='left'>Author</th>");
+ if (commit_graph)
+ html("<th class='left'>Age</th>");
if (ctx.repo->enable_log_filecount) {
html("<th class='left'>Files</th>");
columns++;
if (ctx.repo->enable_log_filecount) {
html("<th class='left'>Files</th>");
columns++;