From 1b7b6db5fbd1c7acfb5e2cfe39e82c9049a701af Mon Sep 17 00:00:00 2001 From: Jacques <jerasmus@gitlab.com> Date: Mon, 24 Jul 2023 11:19:59 +0200 Subject: [PATCH] Fix auto-scrolling to hash on Markdown files Fixes scrolling to the URL hash when viewing Markdown files Changelog: fixed --- .../vue_shared/components/blob_viewers/rich_viewer.vue | 2 ++ .../vue_shared/components/blob_viewers/rich_viewer_spec.js | 6 ++++++ 2 files changed, 8 insertions(+) diff --git a/app/assets/javascripts/vue_shared/components/blob_viewers/rich_viewer.vue b/app/assets/javascripts/vue_shared/components/blob_viewers/rich_viewer.vue index 3e24a35ea3905..2ecf686b1c38f 100644 --- a/app/assets/javascripts/vue_shared/components/blob_viewers/rich_viewer.vue +++ b/app/assets/javascripts/vue_shared/components/blob_viewers/rich_viewer.vue @@ -2,6 +2,7 @@ import SafeHtml from '~/vue_shared/directives/safe_html'; import { handleBlobRichViewer } from '~/blob/viewer'; import MarkdownFieldView from '~/vue_shared/components/markdown/field_view.vue'; +import { handleLocationHash } from '~/lib/utils/common_utils'; import ViewerMixin from './mixins'; export default { @@ -27,6 +28,7 @@ export default { this.isLoading = false; await this.$nextTick(); handleBlobRichViewer(this.$refs.content, this.type); + handleLocationHash(); }); }, safeHtmlConfig: { diff --git a/spec/frontend/vue_shared/components/blob_viewers/rich_viewer_spec.js b/spec/frontend/vue_shared/components/blob_viewers/rich_viewer_spec.js index 1f3029435eee0..fc8155bd38195 100644 --- a/spec/frontend/vue_shared/components/blob_viewers/rich_viewer_spec.js +++ b/spec/frontend/vue_shared/components/blob_viewers/rich_viewer_spec.js @@ -3,8 +3,10 @@ import { shallowMount } from '@vue/test-utils'; import { handleBlobRichViewer } from '~/blob/viewer'; import RichViewer from '~/vue_shared/components/blob_viewers/rich_viewer.vue'; import MarkdownFieldView from '~/vue_shared/components/markdown/field_view.vue'; +import { handleLocationHash } from '~/lib/utils/common_utils'; jest.mock('~/blob/viewer'); +jest.mock('~/lib/utils/common_utils'); describe('Blob Rich Viewer component', () => { let wrapper; @@ -50,4 +52,8 @@ describe('Blob Rich Viewer component', () => { it('is using Markdown View Field', () => { expect(wrapper.findComponent(MarkdownFieldView).exists()).toBe(true); }); + + it('scrolls to the hash location', () => { + expect(handleLocationHash).toHaveBeenCalled(); + }); }); -- GitLab