diff options
author | Ragnar Ouchterlony <ragnar@lysator.liu.se> | 2009-09-15 19:44:37 +0200 |
---|---|---|
committer | Lars Hjemli <hjemli@gmail.com> | 2009-09-16 20:17:56 +0200 |
commit | 207cc34711039329b41345f716bf421a88a6fd0a (patch) | |
tree | 5fb56c7e5c105c9045e52abd971013270db23368 /ui-diff.c | |
parent | Add possibility to switch between unidiff and side-by-side-diff. (diff) | |
download | cgit-pink-207cc34711039329b41345f716bf421a88a6fd0a.tar.gz cgit-pink-207cc34711039329b41345f716bf421a88a6fd0a.zip |
Polishing of how the side-by-side diff looks.
Aligned all different files, so that all side-by-side tables look the same. Also made sure that the tables take up the whole browser width. Also various changes to the css to make things easier on the eye. Signed-off-by: Ragnar Ouchterlony <ragnar@lysator.liu.se> Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Diffstat (limited to '')
-rw-r--r-- | ui-diff.c | 27 |
1 files changed, 16 insertions, 11 deletions
diff --git a/ui-diff.c b/ui-diff.c index 42e81ac..b21c2c1 100644 --- a/ui-diff.c +++ b/ui-diff.c @@ -246,8 +246,6 @@ static void header(unsigned char *sha1, char *path1, int mode1, html_txt(path2); } html("</div>"); - if (use_ssdiff) - cgit_ssdiff_header(); } static void print_ssdiff_link() @@ -270,24 +268,26 @@ static void filepair_cb(struct diff_filepair *pair) int binary = 0; linediff_fn print_line_fn = print_line; - header(pair->one->sha1, pair->one->path, pair->one->mode, - pair->two->sha1, pair->two->path, pair->two->mode); if (use_ssdiff) { - cgit_ssdiff_header(); + cgit_ssdiff_header_begin(); print_line_fn = cgit_ssdiff_line_cb; } + header(pair->one->sha1, pair->one->path, pair->one->mode, + pair->two->sha1, pair->two->path, pair->two->mode); + if (use_ssdiff) + cgit_ssdiff_header_end(); if (S_ISGITLINK(pair->one->mode) || S_ISGITLINK(pair->two->mode)) { if (S_ISGITLINK(pair->one->mode)) - print_line(fmt("-Subproject %s", sha1_to_hex(pair->one->sha1)), 52); + print_line_fn(fmt("-Subproject %s", sha1_to_hex(pair->one->sha1)), 52); if (S_ISGITLINK(pair->two->mode)) - print_line(fmt("+Subproject %s", sha1_to_hex(pair->two->sha1)), 52); + print_line_fn(fmt("+Subproject %s", sha1_to_hex(pair->two->sha1)), 52); return; } if (cgit_diff_files(pair->one->sha1, pair->two->sha1, &old_size, &new_size, &binary, print_line_fn)) cgit_print_error("Error running diff"); if (binary) - html("Binary files differ"); + print_line_fn(" Binary files differ", 20); if (use_ssdiff) cgit_ssdiff_footer(); } @@ -334,9 +334,14 @@ void cgit_print_diff(const char *new_rev, const char *old_rev, const char *prefi print_ssdiff_link(); cgit_print_diffstat(old_rev_sha1, new_rev_sha1); - html("<table summary='diff' class='diff'>"); - html("<tr><td>"); + if (use_ssdiff) { + html("<table summary='ssdiff' class='ssdiff'>"); + } else { + html("<table summary='diff' class='diff'>"); + html("<tr><td>"); + } cgit_diff_tree(old_rev_sha1, new_rev_sha1, filepair_cb, prefix); - html("</td></tr>"); + if (!use_ssdiff) + html("</td></tr>"); html("</table>"); } |