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