cgit

commit e903011c4457c24c0095f270ca5e78c40729434f

Author: Lars Hjemli <hjemli@gmail.com>

Use tables and css to create the diffstat graph, fix scaling

There was no need to use image-files for the graphs, so lets drop them.
At the same time, fix scaling of the graphs so that the full width is
used only if atleast 100 LOC are changed in one of the files.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>

 Makefile | 1 -
 cgit.css | 21 +++++++++++++++++++--
 ui-commit.c | 20 ++++++++------------


diff --git a/Makefile b/Makefile
index 96d68cbd0c781af77a074c23ca40aef759128532..aa7146da93da2592c7d3f69675b4eb49eae3ae7c 100644
--- a/Makefile
+++ b/Makefile
@@ -60,7 +60,6 @@ install: all clean-cache
 	mkdir -p $(prefix)
 	install cgit $(prefix)/$(CGIT_SCRIPT_NAME)
 	install cgit.css $(prefix)/cgit.css
-	install add.png del.png $(prefix)/
 
 clean-cgit:
 	rm -f cgit *.o




diff --git a/add.png b/add.png
deleted file mode 100644
index c550388694dca3178807e6bdaf6901df0761adac..0000000000000000000000000000000000000000
Binary files a/add.png and /dev/null differ




diff --git a/cgit.css b/cgit.css
index 53c93f2d41b296503193fee9dd2e0bea4cc69466..87fd00a387cbb80aa67109dc2efc0e7857eae4b6 100644
--- a/cgit.css
+++ b/cgit.css
@@ -284,9 +284,26 @@ 	width: 75%;
 	vertical-align: center;
 }
 
-table.diffstat td.graph img {
+table.diffstat td.graph table {
 	border: none;
-	height: 8pt;
+}
+
+table.diffstat td.graph td {
+	padding: 0px;
+	border: 0px;
+	height: 7pt;
+}
+
+table.diffstat td.graph td.add {
+	background-color: #5c5;
+}
+
+table.diffstat td.graph td.rem {
+	background-color: #c55;
+}
+
+table.diffstat td.graph td.none {
+	background-color: none;
 }
 
 div.diffstat-summary {




diff --git a/del.png b/del.png
deleted file mode 100644
index 5c73e8248a6ad318eed8afaebf27fa1ec50dd2d4..0000000000000000000000000000000000000000
Binary files a/del.png and /dev/null differ




diff --git a/ui-commit.c b/ui-commit.c
index b6a106fb0681a9e93638787f54443dff93dc17f8..8011dfcc14ffaf953d5abb32f9cf7728cf04933a 100644
--- a/ui-commit.c
+++ b/ui-commit.c
@@ -29,7 +29,6 @@ void print_fileinfo(struct fileinfo *info)
 {
 	char *query, *query2;
 	char *class;
-	double width;
 
 	switch (info->status) {
 	case DIFF_STATUS_ADDED:
@@ -96,18 +95,15 @@ 		html("");
 	}
 	html("</td><td class='right'>");
 	htmlf("%d", info->added + info->removed);
-
 	html("</td><td class='graph'>");
-	width = (info->added + info->removed) * 100.0 / max_changes;
-	if (width < 0.1)
-		width = 0.1;
-	html_link_open(cgit_pageurl(cgit_query_repo, "diff", query),
-		       NULL, NULL);
-	htmlf("<img src='/cgit/add.png' style='width: %.1f%%;'/>",
-	      info->added * width / (info->added + info->removed));
-	htmlf("<img src='/cgit/del.png' style='width: %.1f%%;'/>",
-	      info->removed * width / (info->added + info->removed));
-	html("</a></td></tr>\n");
+	htmlf("<table width='%d%%'><tr>", (max_changes > 100 ? 100 : max_changes));
+	htmlf("<td class='add' style='width: %.1f%%;'/>",
+	      info->added * 100.0 / max_changes);
+	htmlf("<td class='rem' style='width: %.1f%%;'/>",
+	      info->removed * 100.0 / max_changes);
+	htmlf("<td class='none' style='width: %.1f%%;'/>",
+	      (max_changes - info->removed - info->added) * 100.0 / max_changes);
+	html("</tr></table></a></td></tr>\n");
 }
 
 void cgit_count_diff_lines(char *line, int len)