diff --git a/app/views/repositories/_dir_list_content.rhtml b/app/views/repositories/_dir_list_content.rhtml
index c3bd56e09..c30216533 100644
--- a/app/views/repositories/_dir_list_content.rhtml
+++ b/app/views/repositories/_dir_list_content.rhtml
@@ -1,26 +1,18 @@
<% @entries.each do |entry| %>
<% tr_id = Digest::MD5.hexdigest(entry.path)
depth = params[:depth].to_i %>
-
-
-<%= if entry.is_dir?
- link_to_remote h(entry.name),
- {:url => {:action => 'browse', :id => @project, :path => entry.path, :rev => @rev, :depth => (depth + 1), :parent_id => tr_id},
+ |
+
+<% if entry.is_dir? %>
+ "scmEntryClick('#{tr_id}')"
- },
- {:href => url_for({:action => 'browse', :id => @project, :path => entry.path, :rev => @rev}),
- :class => ('icon icon-folder'),
- :style => "margin-left: #{18 * depth}px;"
- }
-else
- link_to h(entry.name),
+ :condition => "scmEntryClick('#{tr_id}')"%>"> 
+<% end %>
+<%= link_to h(entry.name),
{:action => (entry.is_dir? ? 'browse' : 'changes'), :id => @project, :path => entry.path, :rev => @rev},
- :class => 'icon icon-file',
- :style => "margin-left: #{18 * depth}px;"
-end %>
+ :class => (entry.is_dir? ? 'icon icon-folder' : 'icon icon-file')%>
|
<%= (entry.size ? number_to_human_size(entry.size) : "?") unless entry.is_dir? %> |
<%= link_to(format_revision(entry.lastrev.name), :action => 'revision', :id => @project, :rev => entry.lastrev.identifier) if entry.lastrev && entry.lastrev.identifier %> |
diff --git a/public/images/bullet_toggle_minus.png b/public/images/bullet_toggle_minus.png
new file mode 100644
index 000000000..5ce75938f
Binary files /dev/null and b/public/images/bullet_toggle_minus.png differ
diff --git a/public/images/bullet_toggle_plus.png b/public/images/bullet_toggle_plus.png
new file mode 100644
index 000000000..b3603d30a
Binary files /dev/null and b/public/images/bullet_toggle_plus.png differ
diff --git a/public/stylesheets/application.css b/public/stylesheets/application.css
index dd942c819..d87b3bf2b 100644
--- a/public/stylesheets/application.css
+++ b/public/stylesheets/application.css
@@ -97,6 +97,10 @@ tr.entry td.size { text-align: right; font-size: 90%; }
tr.entry td.revision, tr.entry td.author { text-align: center; }
tr.entry td.age { text-align: right; }
+tr.entry span.expander {background-image: url(../images/bullet_toggle_plus.png); padding-left: 8px; margin-left: 0; cursor: pointer;}
+tr.entry.open span.expander {background-image: url(../images/bullet_toggle_minus.png);}
+tr.entry.file td.filename a { margin-left: 16px; }
+
tr.changeset td.author { text-align: center; width: 15%; }
tr.changeset td.committed_on { text-align: center; width: 15%; }