diff options
author | Robert Speicher <robert@gitlab.com> | 2018-07-03 15:31:16 +0000 |
---|---|---|
committer | Robert Speicher <robert@gitlab.com> | 2018-07-03 15:31:16 +0000 |
commit | acc6e3a0fdb8f710d77b8faa2a39823f7e1c7e5d (patch) | |
tree | 0df860a60aa7943999d5b19315aa2f75e7a12aa6 | |
parent | d4a4f1ed63b3ec0579d89a17cccf0c8a54821f16 (diff) | |
parent | ad7fcc7b8e7c6e4eb9b02de243fd1a739991ac38 (diff) | |
download | gitlab-ce-acc6e3a0fdb8f710d77b8faa2a39823f7e1c7e5d.tar.gz |
Merge branch '44994-osw-use-monospaced-font-on-diffs-commit-ref' into 'master'
Resolve "Render SHA in merge request commit reference with mono spaced font"
Closes #44994
See merge request gitlab-org/gitlab-ce!20228
4 files changed, 22 insertions, 3 deletions
diff --git a/changelogs/unreleased/18141-osw-use-monospaced-font-on-diffs-commit-ref.yml b/changelogs/unreleased/18141-osw-use-monospaced-font-on-diffs-commit-ref.yml new file mode 100644 index 00000000000..43ff880a8cb --- /dev/null +++ b/changelogs/unreleased/18141-osw-use-monospaced-font-on-diffs-commit-ref.yml @@ -0,0 +1,5 @@ +--- +title: Use monospaced font for MR diff commit link ref on GFM +merge_request: +author: +type: other diff --git a/lib/banzai/filter/merge_request_reference_filter.rb b/lib/banzai/filter/merge_request_reference_filter.rb index 5cbdb01c130..10c40568006 100644 --- a/lib/banzai/filter/merge_request_reference_filter.rb +++ b/lib/banzai/filter/merge_request_reference_filter.rb @@ -25,7 +25,10 @@ module Banzai extras = super if commit_ref = object_link_commit_ref(object, matches) - return extras.unshift(commit_ref) + klass = reference_class(:commit, tooltip: false) + commit_ref_tag = %(<span class="#{klass}">#{commit_ref}</span>) + + return extras.unshift(commit_ref_tag) end path = matches[:path] if matches.names.include?("path") diff --git a/lib/banzai/filter/reference_filter.rb b/lib/banzai/filter/reference_filter.rb index 2f023f4f242..2411dd2cdfc 100644 --- a/lib/banzai/filter/reference_filter.rb +++ b/lib/banzai/filter/reference_filter.rb @@ -65,8 +65,12 @@ module Banzai context[:skip_project_check] end - def reference_class(type) - "gfm gfm-#{type} has-tooltip" + def reference_class(type, tooltip: true) + gfm_klass = "gfm gfm-#{type}" + + return gfm_klass unless tooltip + + "#{gfm_klass} has-tooltip" end # Ensure that a :project key exists in context diff --git a/spec/lib/banzai/filter/merge_request_reference_filter_spec.rb b/spec/lib/banzai/filter/merge_request_reference_filter_spec.rb index a1dd72c498f..55c41e55437 100644 --- a/spec/lib/banzai/filter/merge_request_reference_filter_spec.rb +++ b/spec/lib/banzai/filter/merge_request_reference_filter_spec.rb @@ -210,6 +210,13 @@ describe Banzai::Filter::MergeRequestReferenceFilter do .to eq reference end + it 'commit ref tag is valid' do + doc = reference_filter("See #{reference}") + commit_ref_tag = doc.css('a').first.css('span.gfm.gfm-commit') + + expect(commit_ref_tag.text).to eq(commit.short_id) + end + it 'has valid text' do doc = reference_filter("See #{reference}") |