From 20d304a93554c667572206afdc2aa772977aa1f6 Mon Sep 17 00:00:00 2001
From: James Moger <james.moger@gitblit.com>
Date: Mon, 17 Sep 2012 09:26:32 -0400
Subject: [PATCH] Adjust blob view layout to improve line links (issue 130)
---
src/com/gitblit/wicket/pages/BlobPage.java | 9 +++++++--
resources/gitblit.css | 13 +++++++++++++
2 files changed, 20 insertions(+), 2 deletions(-)
diff --git a/resources/gitblit.css b/resources/gitblit.css
index 861fc41..bbd3c0c 100644
--- a/resources/gitblit.css
+++ b/resources/gitblit.css
@@ -178,6 +178,19 @@
vertical-align:top;
}
+/* CSS trick to workaround #link topOfWindow offset problem */
+#lines .line {
+ border-top: 160px solid transparent;
+ margin-top: -160px;
+ -webkit-background-clip: padding-box;
+ -moz-background-clip: padding;
+ background-clip: padding-box;
+}
+
+#lines span:target {
+ background-color: #ffffbf;
+}
+
#nums pre {
white-space: pre;
}
diff --git a/src/com/gitblit/wicket/pages/BlobPage.java b/src/com/gitblit/wicket/pages/BlobPage.java
index f1d802d..ebe539f 100644
--- a/src/com/gitblit/wicket/pages/BlobPage.java
+++ b/src/com/gitblit/wicket/pages/BlobPage.java
@@ -149,7 +149,7 @@
sb.append("<!-- start nums column -->");
sb.append("<td id=\"nums\">");
sb.append("<pre>");
- String numPattern = "<a id=\"L{0}\" href=\"#L{0}\">{0}</a>\n";
+ String numPattern = "<a href=\"#L{0}\">{0}</a>\n";
for (int i = 0; i < lines.length; i++) {
sb.append(MessageFormat.format(numPattern, "" + (i + 1)));
}
@@ -165,7 +165,12 @@
} else {
sb.append("<pre class=\"plainprint\">");
}
- sb.append(StringUtils.escapeForHtml(source, true));
+ lines = StringUtils.escapeForHtml(source, true).split("\n");
+ for (int i = 0; i < lines.length; i++) {
+ sb.append(MessageFormat.format("<span id=\"L{0}\" class=\"line\">", "" + (i + 1)));
+ sb.append(lines[i]);
+ sb.append("</span>");
+ }
sb.append("</pre>");
sb.append("</div>");
sb.append("</td>");
--
Gitblit v1.9.1