Commit db8a12dec473c6364ebc0a197309a3249c7a4c42
- Date: Sun Jan 20 16:47:43 +0000 2008
- Committer: Johan Sørensen (johan@johansorensen.com)
- Author: Johan Sørensen (johan@johansorensen.com)
- Commit SHA1: db8a12dec473c6364ebc0a197309a3249c7a4c42
- Tree SHA1: d797e70e480172aaab82882e2728d02c60be44a6
Toggle softwrap linkage on blob display
Commit diff
| |   |
| 99 | 99 | end |
| 100 | 100 | |
| 101 | 101 | def render_diffmode_selector |
| 102 | | out = %Q{<ul class="diffmode_selector">} |
| 102 | out = %Q{<ul class="mode_selector">} |
| 103 | 103 | out << %Q{<li class="list_header">Diff rendering mode:</li>} |
| 104 | 104 | if @diffmode == "sidebyside" |
| 105 | 105 | out << %Q{<li><a href="?diffmode=inline">inline</a></li>} |
| toggle raw diff |
--- a/app/helpers/browse_helper.rb
+++ b/app/helpers/browse_helper.rb
@@ -99,7 +99,7 @@ module BrowseHelper
end
def render_diffmode_selector
- out = %Q{<ul class="diffmode_selector">}
+ out = %Q{<ul class="mode_selector">}
out << %Q{<li class="list_header">Diff rendering mode:</li>}
if @diffmode == "sidebyside"
out << %Q{<li><a href="?diffmode=inline">inline</a></li>} |
| |   |
| 1 | 1 | <% @page_title = "#{current_path.join("/")} - #{@repository.name} in #{@project.title}" -%> |
| 2 | |
| 3 | <ul class="mode_selector"> |
| 4 | <li class="list_header"> |
| 5 | Softwrap mode: |
| 6 | </li> |
| 7 | <li> |
| 8 | <%= link_to_function "Toggle", "Gitorious.Wordwrapper.toggle($$('table#codeblob td.code'))" -%> |
| 9 | </li> |
| 10 | </ul> |
| 11 | |
| 2 | 12 | <h1> |
| 3 | 13 | Blob of <code><%= current_path.join("/") -%></code> |
| 4 | 14 | <small>(<%= link_to "raw blob data", raw_blob_path(@blob.sha, current_path) -%>)</small> |
| 5 | 15 | </h1> |
| 16 | |
| 6 | 17 | <pre><%= with_line_numbers{ h(@blob.contents) } -%></pre> |
| 7 | 18 | |
| 8 | 19 | <%= render :partial => "submenu" -%> |
| toggle raw diff |
--- a/app/views/browse/blob.html.erb
+++ b/app/views/browse/blob.html.erb
@@ -1,8 +1,19 @@
<% @page_title = "#{current_path.join("/")} - #{@repository.name} in #{@project.title}" -%>
+
+<ul class="mode_selector">
+ <li class="list_header">
+ Softwrap mode:
+ </li>
+ <li>
+ <%= link_to_function "Toggle", "Gitorious.Wordwrapper.toggle($$('table#codeblob td.code'))" -%>
+ </li>
+</ul>
+
<h1>
Blob of <code><%= current_path.join("/") -%></code>
<small>(<%= link_to "raw blob data", raw_blob_path(@blob.sha, current_path) -%>)</small>
</h1>
+
<pre><%= with_line_numbers{ h(@blob.contents) } -%></pre>
<%= render :partial => "submenu" -%> |
| |   |
| 74 | 74 | //e.removeClassName("softwrapped"); |
| 75 | 75 | e.addClassName("unwrapped"); |
| 76 | 76 | }); |
| 77 | }, |
| 78 | |
| 79 | toggle: function(elements) { |
| 80 | if (/unwrapped/.test(elements.first().className)) { |
| 81 | Gitorious.Wordwrapper.wrap(elements); |
| 82 | } else { |
| 83 | Gitorious.Wordwrapper.unwrap(elements); |
| 84 | } |
| 77 | 85 | } |
| 78 | 86 | } |
| 79 | 87 | }; |
| toggle raw diff |
--- a/public/javascripts/application.js
+++ b/public/javascripts/application.js
@@ -74,6 +74,14 @@ var Gitorious = {
//e.removeClassName("softwrapped");
e.addClassName("unwrapped");
});
+ },
+
+ toggle: function(elements) {
+ if (/unwrapped/.test(elements.first().className)) {
+ Gitorious.Wordwrapper.wrap(elements);
+ } else {
+ Gitorious.Wordwrapper.unwrap(elements);
+ }
}
}
}; |
| |   |
| 600 | 600 | } |
| 601 | 601 | |
| 602 | 602 | /* diff mode selector */ |
| 603 | | ul.diffmode_selector { float: right; } |
| 604 | | ul.diffmode_selector li { |
| 603 | ul.mode_selector { float: right;} |
| 604 | ul.mode_selector li { |
| 605 | 605 | display:inline; |
| 606 | 606 | margin-left: 1em; |
| 607 | 607 | } |
| 608 | | ul.diffmode_selector li.list_header { font-weight: bold; } |
| 609 | | ul.diffmode_selector li.selected { border-bottom: 1px solid #666; } |
| 608 | ul.mode_selector li.list_header { font-weight: bold; } |
| 609 | ul.mode_selector li.selected { border-bottom: 1px solid #666; } |
| 610 | 610 | |
| 611 | 611 | /* Diff rendering */ |
| 612 | 612 | |
| toggle raw diff |
--- a/public/stylesheets/base.css
+++ b/public/stylesheets/base.css
@@ -600,13 +600,13 @@ div.comment p.byline {
}
/* diff mode selector */
-ul.diffmode_selector { float: right; }
-ul.diffmode_selector li {
+ul.mode_selector { float: right;}
+ul.mode_selector li {
display:inline;
margin-left: 1em;
}
-ul.diffmode_selector li.list_header { font-weight: bold; }
-ul.diffmode_selector li.selected { border-bottom: 1px solid #666; }
+ul.mode_selector li.list_header { font-weight: bold; }
+ul.mode_selector li.selected { border-bottom: 1px solid #666; }
/* Diff rendering */
|
| |   |
| 83 | 83 | |
| 84 | 84 | it "doesn't blow up when with_line_numbers receives nil" do |
| 85 | 85 | proc{ |
| 86 | | with_line_numbers{ nil }.should == "<table>\n</table>" |
| 86 | with_line_numbers{ nil }.should == "<table id=\"codeblob\">\n</table>" |
| 87 | 87 | }.should_not raise_error |
| 88 | 88 | end |
| 89 | 89 | end |
| toggle raw diff |
--- a/spec/helpers/browse_helper_spec.rb
+++ b/spec/helpers/browse_helper_spec.rb
@@ -83,7 +83,7 @@ describe BrowseHelper do
it "doesn't blow up when with_line_numbers receives nil" do
proc{
- with_line_numbers{ nil }.should == "<table>\n</table>"
+ with_line_numbers{ nil }.should == "<table id=\"codeblob\">\n</table>"
}.should_not raise_error
end
end |