neocgit

a more 'modern' version of cgit
Log | Files | Refs | Submodules | README | LICENSE | git clone https://git.ne02ptzero.me/git/neocgit

commit ef8a97d9c6983e4fc3710bdbe771edd4e3550dba
parent 6d7e3596ebb387265d8cfdc5b312e0ea76da8c8a
Author: Lukas Fleischer <cgit@cryptocrack.de>
Date:   Tue,  5 Mar 2013 15:42:14 +0100

Fix colspan values

This fixes a couple of minor oversights in previous commits and adjusts
all cells using colspan to use the correct width.

Signed-off-by: Lukas Fleischer <cgit@cryptocrack.de>

Diffstat:
Mui-log.c | 14+++++++-------
Mui-refs.c | 4++--
Mui-summary.c | 24+++++++++++++++++++-----
3 files changed, 28 insertions(+), 14 deletions(-)

diff --git a/ui-log.c b/ui-log.c @@ -98,14 +98,14 @@ next: static void print_commit(struct commit *commit, struct rev_info *revs) { struct commitinfo *info; - int cols = revs->graph ? 3 : 2; + int columns = revs->graph ? 4 : 3; struct strbuf graphbuf = STRBUF_INIT; struct strbuf msgbuf = STRBUF_INIT; if (ctx.repo->enable_log_filecount) - cols++; + columns++; if (ctx.repo->enable_log_linecount) - cols++; + columns++; if (revs->graph) { /* Advance graph until current commit */ @@ -113,7 +113,7 @@ static void print_commit(struct commit *commit, struct rev_info *revs) /* Print graph segment in otherwise empty table row */ html("<tr class='nohover'><td class='commitgraph'>"); html(graphbuf.buf); - htmlf("</td><td colspan='%d' /></tr>\n", cols); + htmlf("</td><td colspan='%d' /></tr>\n", columns); strbuf_setlen(&graphbuf, 0); } /* Current commit's graph segment is now ready in graphbuf */ @@ -232,7 +232,7 @@ static void print_commit(struct commit *commit, struct rev_info *revs) html("<td/>"); /* Empty 'Age' column */ /* Print msgbuf into remainder of table row */ - htmlf("<td colspan='%d'%s>\n", cols, + htmlf("<td colspan='%d'%s>\n", columns - (revs->graph ? 1 : 0), ctx.qry.showmsg ? " class='logmsg'" : ""); html_txt(msgbuf.buf); html("</td></tr>\n"); @@ -283,7 +283,7 @@ void cgit_print_log(const char *tip, int ofs, int cnt, char *grep, char *pattern struct rev_info rev; struct commit *commit; struct vector vec = VECTOR_INIT(char *); - int i, columns = 3; + int i, columns = commit_graph ? 4 : 3; char *arg; /* First argv is NULL */ @@ -421,7 +421,7 @@ void cgit_print_log(const char *tip, int ofs, int cnt, char *grep, char *pattern } html("</div>"); } else if ((commit = get_revision(&rev)) != NULL) { - html("<tr class='nohover'><td colspan='3'>"); + htmlf("<tr class='nohover'><td colspan='%d'>", columns); cgit_log_link("[...]", NULL, NULL, ctx.qry.head, NULL, ctx.qry.vpath, 0, NULL, NULL, ctx.qry.showmsg); html("</td></tr>\n"); diff --git a/ui-refs.c b/ui-refs.c @@ -177,7 +177,7 @@ static int print_tag(struct refinfo *ref) static void print_refs_link(char *path) { - html("<tr class='nohover'><td colspan='4'>"); + html("<tr class='nohover'><td colspan='5'>"); cgit_refs_link("[...]", NULL, NULL, ctx.qry.head, NULL, path); html("</td></tr>"); } @@ -252,7 +252,7 @@ void cgit_print_refs() cgit_print_tags(0); else { cgit_print_branches(0); - html("<tr class='nohover'><td colspan='4'>&nbsp;</td></tr>"); + html("<tr class='nohover'><td colspan='5'>&nbsp;</td></tr>"); cgit_print_tags(0); } html("</table>"); diff --git a/ui-summary.c b/ui-summary.c @@ -17,15 +17,22 @@ int urls = 0; static void print_url(char *base, char *suffix) { + int columns = 3; + + if (ctx.repo->enable_log_filecount) + columns++; + if (ctx.repo->enable_log_linecount) + columns++; + if (!base || !*base) return; if (urls++ == 0) { - html("<tr class='nohover'><td colspan='4'>&nbsp;</td></tr>"); - html("<tr><th class='left' colspan='4'>Clone</th></tr>\n"); + htmlf("<tr class='nohover'><td colspan='%d'>&nbsp;</td></tr>", columns); + htmlf("<tr><th class='left' colspan='%d'>Clone</th></tr>\n", columns); } if (suffix && *suffix) base = fmt("%s/%s", base, suffix); - html("<tr><td colspan='4'><a href='"); + htmlf("<tr><td colspan='%d'><a href='", columns); html_url_path(base); html("'>"); html_txt(base); @@ -52,12 +59,19 @@ static void print_urls(char *txt, char *suffix) void cgit_print_summary() { + int columns = 3; + + if (ctx.repo->enable_log_filecount) + columns++; + if (ctx.repo->enable_log_linecount) + columns++; + html("<table summary='repository info' class='list nowrap'>"); cgit_print_branches(ctx.cfg.summary_branches); - html("<tr class='nohover'><td colspan='4'>&nbsp;</td></tr>"); + htmlf("<tr class='nohover'><td colspan='%d'>&nbsp;</td></tr>", columns); cgit_print_tags(ctx.cfg.summary_tags); if (ctx.cfg.summary_log > 0) { - html("<tr class='nohover'><td colspan='4'>&nbsp;</td></tr>"); + htmlf("<tr class='nohover'><td colspan='%d'>&nbsp;</td></tr>", columns); cgit_print_log(ctx.qry.head, 0, ctx.cfg.summary_log, NULL, NULL, NULL, 0, 0, 0); }