]> source.dussan.org Git - redmine.git/commitdiff
Make breadcrumbs of repository browser copy-paste friendly (#32835).
authorGo MAEDA <maeda@farend.jp>
Sat, 25 Jan 2020 09:12:08 +0000 (09:12 +0000)
committerGo MAEDA <maeda@farend.jp>
Sat, 25 Jan 2020 09:12:08 +0000 (09:12 +0000)
Patch by Go MAEDA.

git-svn-id: http://svn.redmine.org/redmine/trunk@19460 e93f8b46-1217-0410-a6f0-8f06a7374b81

app/views/repositories/_breadcrumbs.html.erb
app/views/repositories/annotate.html.erb
app/views/repositories/changes.html.erb
app/views/repositories/entry.html.erb
app/views/repositories/show.html.erb
public/stylesheets/scm.css

index 82f25d43ad087feebb5bfcbfe0ae42adef69b854..4a5903e1446b6629e5cbfd877b61d86ea6f59ace 100644 (file)
@@ -1,31 +1,36 @@
-<%= link_to(@repository.identifier.present? ? @repository.identifier : 'root',
-      :action => 'show', :id => @project,
-      :repository_id => @repository.identifier_param,
-      :path => nil, :rev => @rev) %>
 <%
 dirs = path.split('/')
 if 'file' == kind
     filename = dirs.pop
 end
+
+breadcrumbs = []
+breadcrumbs << link_to(
+  @repository.identifier.presence || 'root', :action => 'show',
+  :id => @project, :repository_id => @repository.identifier_param,
+  :path => nil, :rev => @rev)
 link_path = ''
+
 dirs.each do |dir|
     next if dir.blank?
+
     link_path << '/' unless link_path.empty?
     link_path << "#{dir}"
-    %>
-    / <%= link_to dir, :action => 'show', :id => @project, :repository_id => @repository.identifier_param,
-                :path => to_path_param(link_path), :rev => @rev %>
-<% end %>
-<% if filename %>
-    / <%= link_to filename,
-                   :action => 'entry', :id => @project, :repository_id => @repository.identifier_param,
-                   :path => to_path_param("#{link_path}/#{filename}"), :rev => @rev %>
-<% end %>
+    breadcrumbs << link_to(dir, :action => 'show', :id => @project,
+      :repository_id => @repository.identifier_param,
+      :path => to_path_param(link_path), :rev => @rev)
+end
+if filename
+    breadcrumbs << link_to(filename, :action => 'entry', :id => @project,
+      :repository_id => @repository.identifier_param,
+      :path => to_path_param("#{link_path}/#{filename}"), :rev => @rev)
+end
+%>
+<%= breadcrumbs.join(tag.span('/', :class => 'separator')).html_safe -%>
 <%
   # @rev is revsion or Git and Mercurial branch or tag.
   # For Mercurial *tip*, @rev and @changeset are nil.
   rev_text = @changeset.nil? ? @rev : format_revision(@changeset)
 %>
-<%= "@ #{rev_text}" unless rev_text.blank? %>
-
-<% html_title(with_leading_slash(path)) -%>
+<%= " @ #{rev_text}" unless rev_text.blank? -%>
+<% html_title(with_leading_slash(path)) %>
index 038f01ecac6bda8d63a179e03e1ce4d93d2d69e0..829090af6621747a61b5d7f28ac4ca87ab5849af 100644 (file)
@@ -4,7 +4,7 @@
   <%= render :partial => 'navigation' %>
 </div>
 
-<h2><%= render :partial => 'breadcrumbs', :locals => { :path => @path, :kind => 'file', :revision => @rev } %></h2>
+<h2 class="breadcrumbs"><%= render :partial => 'breadcrumbs', :locals => { :path => @path, :kind => 'file', :revision => @rev } %></h2>
 
 <%= render :partial => 'link_to_functions' %>
 
index cd5a955850337f200c59fc5367c2ef0cfd34c782..96b532073245986a2499a3de40b59a87ca3fa65f 100644 (file)
@@ -4,7 +4,7 @@
   <%= render :partial => 'navigation' %>
 </div>
 
-<h2><%= render :partial => 'breadcrumbs', :locals => { :path => @path, :kind => (@entry ? @entry.kind : nil), :revision => @rev } %></h2>
+<h2 class="breadcrumbs"><%= render :partial => 'breadcrumbs', :locals => { :path => @path, :kind => (@entry ? @entry.kind : nil), :revision => @rev } %></h2>
 
 <%= render :partial => 'link_to_functions' %>
 
index 940bb2dc20961a9572a655a497eba81dc2823217..99c611104abba917c92872dc898f89f648d1234c 100644 (file)
@@ -4,7 +4,7 @@
   <%= render :partial => 'navigation' %>
 </div>
 
-<h2><%= render :partial => 'breadcrumbs', :locals => { :path => @path, :kind => 'file', :revision => @rev } %></h2>
+<h2 class="breadcrumbs"><%= render :partial => 'breadcrumbs', :locals => { :path => @path, :kind => 'file', :revision => @rev } %></h2>
 
 <%= render :partial => 'link_to_functions' %>
 
index d96a737aebbb5054bdfc9069429365f9b398aef9..adcce9f64d7721d504c0bffa3765bc8cc0b1687d 100644 (file)
@@ -4,7 +4,7 @@
   <%= render :partial => 'navigation' %>
 </div>
 
-<h2><%= render :partial => 'breadcrumbs',
+<h2 class="breadcrumbs"><%= render :partial => 'breadcrumbs',
                :locals => { :path => @path, :kind => 'dir', :revision => @rev } %></h2>
 
 <% if !@entries.nil? && authorize_for('repositories', 'browse') %>
index c177b07ccef1c9ee5f18d267dcee7fb9ee95fea2..4640be5f9fa81c26ac9c957600a3bff3e05b3841 100644 (file)
@@ -116,3 +116,7 @@ table.annotate td.line-code { background-color: #fafafa; }
 div.action_M { background: #fd8 }
 div.action_D { background: #f88 }
 div.action_A { background: #bfb }
+
+.breadcrumbs>.separator::before, .breadcrumbs>.separator::after {
+    content: " ";
+}