Expand commit message width in repo view
This commit is contained in:
		
							parent
							
								
									b6dc87cb28
								
							
						
					
					
						commit
						e4c517a635
					
				|  | @ -8,6 +8,7 @@ v 8.11.0 (unreleased) | |||
|   - Fix CI status icon link underline (ClemMakesApps) | ||||
|   - The Repository class is now instrumented | ||||
|   - Cache the commit author in RequestStore to avoid extra lookups in PostReceive | ||||
|   - Expand commit message width in repo view (ClemMakesApps) | ||||
|   - Fix of 'Commits being passed to custom hooks are already reachable when using the UI' | ||||
|   - Add support for using RequestStore within Sidekiq tasks via SIDEKIQ_REQUEST_STORE env variable | ||||
|   - Optimize maximum user access level lookup in loading of notes | ||||
|  |  | |||
|  | @ -58,6 +58,10 @@ | |||
| 
 | ||||
|     .tree_commit { | ||||
|       max-width: 320px; | ||||
| 
 | ||||
|       .str-truncated { | ||||
|         max-width: 100%; | ||||
|       } | ||||
|     } | ||||
| 
 | ||||
|     .tree_time_ago { | ||||
|  |  | |||
|  | @ -123,15 +123,17 @@ class Commit | |||
|   # In case this first line is longer than 100 characters, it is cut off | ||||
|   # after 80 characters and ellipses (`&hellp;`) are appended. | ||||
|   def title | ||||
|     title = safe_message | ||||
|     full_title.length > 100 ? full_title[0..79] << "…" : full_title | ||||
|   end | ||||
| 
 | ||||
|     return no_commit_message if title.blank? | ||||
|   # Returns the full commits title | ||||
|   def full_title | ||||
|     return @full_title if @full_title | ||||
| 
 | ||||
|     title_end = title.index("\n") | ||||
|     if (!title_end && title.length > 100) || (title_end && title_end > 100) | ||||
|       title[0..79] << "…" | ||||
|     if safe_message.blank? | ||||
|       @full_title = no_commit_message | ||||
|     else | ||||
|       title.split("\n", 2).first | ||||
|       @full_title = safe_message.split("\n", 2).first | ||||
|     end | ||||
|   end | ||||
| 
 | ||||
|  |  | |||
|  | @ -1,2 +1,2 @@ | |||
| %span.str-truncated | ||||
|   = link_to_gfm commit.title, namespace_project_commit_path(@project.namespace, @project, commit.id), class: "tree-commit-link" | ||||
|   = link_to_gfm commit.full_title, namespace_project_commit_path(@project.namespace, @project, commit.id), class: "tree-commit-link" | ||||
|  |  | |||
|  | @ -86,6 +86,27 @@ eos | |||
|     end | ||||
|   end | ||||
| 
 | ||||
|   describe '#full_title' do | ||||
|     it "returns no_commit_message when safe_message is blank" do | ||||
|       allow(commit).to receive(:safe_message).and_return('') | ||||
|       expect(commit.full_title).to eq("--no commit message") | ||||
|     end | ||||
| 
 | ||||
|     it "returns entire message if there is no newline" do | ||||
|       message = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec sodales id felis id blandit. Vivamus egestas lacinia lacus, sed rutrum mauris.' | ||||
| 
 | ||||
|       allow(commit).to receive(:safe_message).and_return(message) | ||||
|       expect(commit.full_title).to eq(message) | ||||
|     end | ||||
| 
 | ||||
|     it "returns first line of message if there is a newLine" do | ||||
|       message = commit.safe_message.split(" ").first | ||||
| 
 | ||||
|       allow(commit).to receive(:safe_message).and_return(message + "\n" + message) | ||||
|       expect(commit.full_title).to eq(message) | ||||
|     end | ||||
|   end | ||||
| 
 | ||||
|   describe "delegation" do | ||||
|     subject { commit } | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue