mirror of
https://github.com/wahyd4/gitlabhq.git
synced 2026-08-15 07:36:41 +10:00
Merge branch 'image-diff' into 'master'
Fixes for showing images - Render scrubbed SVG's inline, not via /raw/ - Use /raw/ requests on image diffs Both of these are needed because of no longer eager loading blobs. This a follow-up to https://gitlab.com/gitlab-org/gitlab-ce/merge_requests/2830 Also see https://gitlab.com/gitlab-org/gitlab-ce/issues/13350 See merge request !2837
This commit is contained in:
@@ -36,7 +36,7 @@
|
||||
= render "download", blob: blob
|
||||
- elsif blob.text?
|
||||
- if blob_svg?(blob)
|
||||
= render "image", blob: sanitize_svg(blob)
|
||||
= render "image", blob: blob
|
||||
- else
|
||||
= render "text", blob: blob
|
||||
- elsif blob.image?
|
||||
|
||||
@@ -1,2 +1,9 @@
|
||||
.file-content.image_file
|
||||
%img{ src: namespace_project_raw_path(@project.namespace, @project, @id)}
|
||||
- if blob_svg?(blob)
|
||||
- # We need to scrub SVG but we cannot do so in the RawController: it would
|
||||
- # be wrong/strange if RawController modified the data.
|
||||
- blob.load_all_data!(@repository)
|
||||
- blob = sanitize_svg(blob)
|
||||
%img{src: "data:#{blob.mime_type};base64,#{Base64.encode64(blob.data)}"}
|
||||
- else
|
||||
%img{src: namespace_project_raw_path(@project.namespace, @project, @id)}
|
||||
|
||||
@@ -1,19 +1,19 @@
|
||||
- diff = diff_file.diff
|
||||
- file.load_all_data!(@project.repository)
|
||||
- file_raw_path = namespace_project_raw_path(@project.namespace, @project, tree_join(@commit.id, diff.new_path))
|
||||
- old_file_raw_path = namespace_project_raw_path(@project.namespace, @project, tree_join(@commit.parent_id, diff.old_path))
|
||||
- if diff.renamed_file || diff.new_file || diff.deleted_file
|
||||
.image
|
||||
%span.wrap
|
||||
.frame{class: image_diff_class(diff)}
|
||||
%img{src: "data:#{file.mime_type};base64,#{Base64.encode64(file.data)}"}
|
||||
%img{src: diff.deleted_file ? old_file_raw_path : file_raw_path}
|
||||
%p.image-info= "#{number_to_human_size file.size}"
|
||||
- else
|
||||
- old_file.load_all_data!(@project.repository)
|
||||
.image
|
||||
%div.two-up.view
|
||||
%span.wrap
|
||||
.frame.deleted
|
||||
%a{href: namespace_project_blob_path(@project.namespace, @project, tree_join(@commit.parent_id, diff.old_path))}
|
||||
%img{src: "data:#{old_file.mime_type};base64,#{Base64.encode64(old_file.data)}"}
|
||||
%img{src: old_file_raw_path}
|
||||
%p.image-info.hide
|
||||
%span.meta-filesize= "#{number_to_human_size old_file.size}"
|
||||
|
|
||||
@@ -25,7 +25,7 @@
|
||||
%span.wrap
|
||||
.frame.added
|
||||
%a{href: namespace_project_blob_path(@project.namespace, @project, tree_join(@commit.id, diff.new_path))}
|
||||
%img{src: "data:#{file.mime_type};base64,#{Base64.encode64(file.data)}"}
|
||||
%img{src: file_raw_path}
|
||||
%p.image-info.hide
|
||||
%span.meta-filesize= "#{number_to_human_size file.size}"
|
||||
|
|
||||
@@ -38,10 +38,10 @@
|
||||
%div.swipe.view.hide
|
||||
.swipe-frame
|
||||
.frame.deleted
|
||||
%img{src: "data:#{old_file.mime_type};base64,#{Base64.encode64(old_file.data)}"}
|
||||
%img{src: old_file_raw_path}
|
||||
.swipe-wrap
|
||||
.frame.added
|
||||
%img{src: "data:#{file.mime_type};base64,#{Base64.encode64(file.data)}"}
|
||||
%img{src: file_raw_path}
|
||||
%span.swipe-bar
|
||||
%span.top-handle
|
||||
%span.bottom-handle
|
||||
@@ -49,9 +49,9 @@
|
||||
%div.onion-skin.view.hide
|
||||
.onion-skin-frame
|
||||
.frame.deleted
|
||||
%img{src: "data:#{old_file.mime_type};base64,#{Base64.encode64(old_file.data)}"}
|
||||
%img{src: old_file_raw_path}
|
||||
.frame.added
|
||||
%img{src: "data:#{file.mime_type};base64,#{Base64.encode64(file.data)}"}
|
||||
%img{src: file_raw_path}
|
||||
.controls
|
||||
.transparent
|
||||
.drag-track
|
||||
|
||||
Reference in New Issue
Block a user