author | Johan Herland <johan@herland.net> | 2010-11-15 17:39:53 (UTC) |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2010-11-16 07:18:37 (UTC) |
commit | c2bfd40f8aaaa69a66c6eb729c202e42a43ec166 (patch) (unidiff) | |
tree | 7ab4e467a6e39124f7336b5599dfc58c8fbb4b18 | |
parent | ad230267f8ecae6cb4f0da17d7a5f75ba38203e2 (diff) | |
download | cgit-c2bfd40f8aaaa69a66c6eb729c202e42a43ec166.zip cgit-c2bfd40f8aaaa69a66c6eb729c202e42a43ec166.tar.gz cgit-c2bfd40f8aaaa69a66c6eb729c202e42a43ec166.tar.bz2 |
ui-log: Move 'Age' column when commit graph is present
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>
-rw-r--r-- | ui-log.c | 42 |
1 files changed, 30 insertions, 12 deletions
@@ -97,5 +97,5 @@ void print_commit(struct commit *commit, struct rev_info *revs) | |||
97 | struct commitinfo *info; | 97 | struct commitinfo *info; |
98 | char *tmp; | 98 | char *tmp; |
99 | int cols = 2; | 99 | int cols = revs->graph ? 3 : 2; |
100 | struct strbuf graphbuf = STRBUF_INIT; | 100 | struct strbuf graphbuf = STRBUF_INIT; |
101 | struct strbuf msgbuf = STRBUF_INIT; | 101 | struct strbuf msgbuf = STRBUF_INIT; |
@@ -111,5 +111,5 @@ void print_commit(struct commit *commit, struct rev_info *revs) | |||
111 | while (!graph_next_line(revs->graph, &graphbuf)) { | 111 | while (!graph_next_line(revs->graph, &graphbuf)) { |
112 | /* Print graph segment in otherwise empty table row */ | 112 | /* Print graph segment in otherwise empty table row */ |
113 | html("<tr class='nohover'><td/><td class='commitgraph'>"); | 113 | html("<tr class='nohover'><td class='commitgraph'>"); |
114 | html(graphbuf.buf); | 114 | html(graphbuf.buf); |
115 | htmlf("</td><td colspan='%d' /></tr>\n", cols); | 115 | htmlf("</td><td colspan='%d' /></tr>\n", cols); |
@@ -120,12 +120,5 @@ void print_commit(struct commit *commit, struct rev_info *revs) | |||
120 | 120 | ||
121 | info = cgit_parse_commit(commit); | 121 | info = cgit_parse_commit(commit); |
122 | htmlf("<tr%s><td>", | 122 | htmlf("<tr%s>", ctx.qry.showmsg ? " class='logheader'" : ""); |
123 | ctx.qry.showmsg ? " class='logheader'" : ""); | ||
124 | tmp = fmt("id=%s", sha1_to_hex(commit->object.sha1)); | ||
125 | tmp = cgit_fileurl(ctx.repo->url, "commit", ctx.qry.vpath, tmp); | ||
126 | html_link_open(tmp, NULL, NULL); | ||
127 | cgit_print_age(commit->date, TM_WEEK * 2, FMT_SHORTDATE); | ||
128 | html_link_close(); | ||
129 | html("</td>"); | ||
130 | 123 | ||
131 | if (revs->graph) { | 124 | if (revs->graph) { |
@@ -136,4 +129,13 @@ void print_commit(struct commit *commit, struct rev_info *revs) | |||
136 | strbuf_setlen(&graphbuf, 0); | 129 | strbuf_setlen(&graphbuf, 0); |
137 | } | 130 | } |
131 | else { | ||
132 | html("<td>"); | ||
133 | tmp = fmt("id=%s", sha1_to_hex(commit->object.sha1)); | ||
134 | tmp = cgit_fileurl(ctx.repo->url, "commit", ctx.qry.vpath, tmp); | ||
135 | html_link_open(tmp, NULL, NULL); | ||
136 | cgit_print_age(commit->date, TM_WEEK * 2, FMT_SHORTDATE); | ||
137 | html_link_close(); | ||
138 | html("</td>"); | ||
139 | } | ||
138 | 140 | ||
139 | htmlf("<td%s>", ctx.qry.showmsg ? " class='logsubject'" : ""); | 141 | htmlf("<td%s>", ctx.qry.showmsg ? " class='logsubject'" : ""); |
@@ -168,4 +170,14 @@ void print_commit(struct commit *commit, struct rev_info *revs) | |||
168 | html("</td><td>"); | 170 | html("</td><td>"); |
169 | html_txt(info->author); | 171 | html_txt(info->author); |
172 | |||
173 | if (revs->graph) { | ||
174 | html("</td><td>"); | ||
175 | tmp = fmt("id=%s", sha1_to_hex(commit->object.sha1)); | ||
176 | tmp = cgit_fileurl(ctx.repo->url, "commit", ctx.qry.vpath, tmp); | ||
177 | html_link_open(tmp, NULL, NULL); | ||
178 | cgit_print_age(commit->date, TM_WEEK * 2, FMT_SHORTDATE); | ||
179 | html_link_close(); | ||
180 | } | ||
181 | |||
170 | if (ctx.repo->enable_log_filecount) { | 182 | if (ctx.repo->enable_log_filecount) { |
171 | files = 0; | 183 | files = 0; |
@@ -183,5 +195,5 @@ void print_commit(struct commit *commit, struct rev_info *revs) | |||
183 | 195 | ||
184 | if (revs->graph || ctx.qry.showmsg) { /* Print a second table row */ | 196 | if (revs->graph || ctx.qry.showmsg) { /* Print a second table row */ |
185 | html("<tr class='nohover'><td/>"); /* Empty 'Age' column */ | 197 | html("<tr class='nohover'>"); |
186 | 198 | ||
187 | if (ctx.qry.showmsg) { | 199 | if (ctx.qry.showmsg) { |
@@ -224,4 +236,6 @@ void print_commit(struct commit *commit, struct rev_info *revs) | |||
224 | html("</td>\n"); | 236 | html("</td>\n"); |
225 | } | 237 | } |
238 | else | ||
239 | html("<td/>"); /* Empty 'Age' column */ | ||
226 | 240 | ||
227 | /* Print msgbuf into remainder of table row */ | 241 | /* Print msgbuf into remainder of table row */ |
@@ -346,7 +360,9 @@ void cgit_print_log(const char *tip, int ofs, int cnt, char *grep, char *pattern | |||
346 | html("<table class='list nowrap'>"); | 360 | html("<table class='list nowrap'>"); |
347 | 361 | ||
348 | html("<tr class='nohover'><th class='left'>Age</th>"); | 362 | html("<tr class='nohover'>"); |
349 | if (commit_graph) | 363 | if (commit_graph) |
350 | html("<th></th>"); | 364 | html("<th></th>"); |
365 | else | ||
366 | html("<th class='left'>Age</th>"); | ||
351 | html("<th class='left'>Commit message"); | 367 | html("<th class='left'>Commit message"); |
352 | if (pager) { | 368 | if (pager) { |
@@ -359,4 +375,6 @@ void cgit_print_log(const char *tip, int ofs, int cnt, char *grep, char *pattern | |||
359 | } | 375 | } |
360 | html("</th><th class='left'>Author</th>"); | 376 | html("</th><th class='left'>Author</th>"); |
377 | if (commit_graph) | ||
378 | html("<th class='left'>Age</th>"); | ||
361 | if (ctx.repo->enable_log_filecount) { | 379 | if (ctx.repo->enable_log_filecount) { |
362 | html("<th class='left'>Files</th>"); | 380 | html("<th class='left'>Files</th>"); |