Add graphical diffstat to commit view

The diffstat is calculated against the leftmost parent of the commit. This
gives nice information for "normal" merges while octopus merges are less
than optimal, so the diffstat isn't calculated for those merges.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
diff --git a/cgit.css b/cgit.css
index cded981..b736b19 100644
--- a/cgit.css
+++ b/cgit.css
@@ -26,6 +26,13 @@
 	font-weight: normal;
 }
 
+h4 {
+	margin-top: 1.5em;
+	margin-bottom: 0.1em;
+	font-size: 100%;
+	font-weight: bold;
+}
+
 a {
 	color: blue;
 	text-decoration: none;
@@ -227,6 +234,12 @@
 table.diffstat {
 	border-collapse: collapse;
 	margin-top: 1.5em;
+	width: 100%;
+	border: solid 1px #aaa;
+}
+
+table.diffstat tr:hover {
+	background-color: #eee;
 }
 
 table.diffstat th {
@@ -238,8 +251,11 @@
 }
 
 table.diffstat td {
-	padding: 0.1em 1em 0.1em 0.1em;
+	padding: 0.2em 0.2em 0.1em 0.1em;
 	font-size: 100%;
+	border: none;
+	border-top: solid 1px #aaa;
+	border-bottom: solid 1px #aaa;
 }
 
 table.diffstat td span.modechange {
@@ -259,7 +275,17 @@
 	color: blue;
 }
 
-table.diffstat td.summary {
+table.diffstat td.graph {
+	width: 75%;
+	vertical-align: center;
+}
+
+table.diffstat td.graph img {
+	border: none;
+	height: 11pt;
+}
+
+div.diffstat-summary {
 	color: #888;
 	padding-top: 0.5em;
 }