summaryrefslogtreecommitdiffabout
path: root/ui-shared.c
authorLars Hjemli <hjemli@gmail.com>2009-12-08 18:32:48 (UTC)
committer Lars Hjemli <hjemli@gmail.com>2009-12-08 18:32:48 (UTC)
commitf4f6210b4f9c214dc247567bbd06b1135c9ecd06 (patch) (unidiff)
tree432b3dc327e05220c6ac0aff9ca81cf38a47524c /ui-shared.c
parent57bb4fdb8419d7c250d4c6146910df3263943951 (diff)
parent735e15e38a484bf0daa98776fa7cde270a271cda (diff)
downloadcgit-f4f6210b4f9c214dc247567bbd06b1135c9ecd06.zip
cgit-f4f6210b4f9c214dc247567bbd06b1135c9ecd06.tar.gz
cgit-f4f6210b4f9c214dc247567bbd06b1135c9ecd06.tar.bz2
Merge branch 'ro/ssdiff'
Diffstat (limited to 'ui-shared.c') (more/less context) (ignore whitespace changes)
-rw-r--r--ui-shared.c34
1 files changed, 28 insertions, 6 deletions
diff --git a/ui-shared.c b/ui-shared.c
index 3a9e67b..08ea003 100644
--- a/ui-shared.c
+++ b/ui-shared.c
@@ -319,3 +319,3 @@ void cgit_log_link(char *name, char *title, char *class, char *head,
319void cgit_commit_link(char *name, char *title, char *class, char *head, 319void cgit_commit_link(char *name, char *title, char *class, char *head,
320 char *rev) 320 char *rev, int toggle_ssdiff)
321{ 321{
@@ -327,3 +327,19 @@ void cgit_commit_link(char *name, char *title, char *class, char *head,
327 } 327 }
328 reporevlink("commit", name, title, class, head, rev, NULL); 328
329 char *delim;
330
331 delim = repolink(title, class, "commit", head, NULL);
332 if (rev && strcmp(rev, ctx.qry.head)) {
333 html(delim);
334 html("id=");
335 html_url_arg(rev);
336 delim = "&amp;";
337 }
338 if ((ctx.qry.ssdiff && !toggle_ssdiff) || (!ctx.qry.ssdiff && toggle_ssdiff)) {
339 html(delim);
340 html("ss=1");
341 }
342 html("'>");
343 html_txt(name);
344 html("</a>");
329} 345}
@@ -343,3 +359,4 @@ void cgit_snapshot_link(char *name, char *title, char *class, char *head,
343void cgit_diff_link(char *name, char *title, char *class, char *head, 359void cgit_diff_link(char *name, char *title, char *class, char *head,
344 char *new_rev, char *old_rev, char *path) 360 char *new_rev, char *old_rev, char *path,
361 int toggle_ssdiff)
345{ 362{
@@ -358,2 +375,7 @@ void cgit_diff_link(char *name, char *title, char *class, char *head,
358 html_url_arg(old_rev); 375 html_url_arg(old_rev);
376 delim = "&amp;";
377 }
378 if ((ctx.qry.ssdiff && !toggle_ssdiff) || (!ctx.qry.ssdiff && toggle_ssdiff)) {
379 html(delim);
380 html("ss=1");
359 } 381 }
@@ -385,3 +407,3 @@ void cgit_object_link(struct object *obj)
385 cgit_commit_link(fmt("commit %s...", shortrev), NULL, NULL, 407 cgit_commit_link(fmt("commit %s...", shortrev), NULL, NULL,
386 ctx.qry.head, fullrev); 408 ctx.qry.head, fullrev, 0);
387 return; 409 return;
@@ -697,5 +719,5 @@ void cgit_print_pageheader(struct cgit_context *ctx)
697 cgit_commit_link("commit", NULL, hc(cmd, "commit"), 719 cgit_commit_link("commit", NULL, hc(cmd, "commit"),
698 ctx->qry.head, ctx->qry.sha1); 720 ctx->qry.head, ctx->qry.sha1, 0);
699 cgit_diff_link("diff", NULL, hc(cmd, "diff"), ctx->qry.head, 721 cgit_diff_link("diff", NULL, hc(cmd, "diff"), ctx->qry.head,
700 ctx->qry.sha1, ctx->qry.sha2, NULL); 722 ctx->qry.sha1, ctx->qry.sha2, NULL, 0);
701 if (ctx->repo->max_stats) 723 if (ctx->repo->max_stats)