diff options
Diffstat (limited to 'app/assets/javascripts/diffs/components/diff_file.vue')
-rw-r--r-- | app/assets/javascripts/diffs/components/diff_file.vue | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/app/assets/javascripts/diffs/components/diff_file.vue b/app/assets/javascripts/diffs/components/diff_file.vue index c9fd25171aa..b2841172fe1 100644 --- a/app/assets/javascripts/diffs/components/diff_file.vue +++ b/app/assets/javascripts/diffs/components/diff_file.vue @@ -9,7 +9,7 @@ import DiffContent from 'jh_else_ce/diffs/components/diff_content.vue'; import { createAlert } from '~/alert'; import { hasDiff } from '~/helpers/diffs_helper'; import { diffViewerErrors } from '~/ide/constants'; -import { scrollToElement } from '~/lib/utils/common_utils'; +import { scrollToElement, isElementStuck } from '~/lib/utils/common_utils'; import { sprintf } from '~/locale'; import glFeatureFlagsMixin from '~/vue_shared/mixins/gl_feature_flags_mixin'; import notesEventHub from '~/notes/event_hub'; @@ -295,8 +295,13 @@ export default { collapsed: collapsingNow, }); - if (collapsingNow && viaUserInteraction && contentElement) { - scrollToElement(contentElement, { duration: 1 }); + if ( + collapsingNow && + viaUserInteraction && + contentElement && + isElementStuck(this.$refs.header.$el) + ) { + scrollToElement(contentElement, { duration: 0 }); } if (!this.hasDiff && !collapsingNow) { @@ -381,6 +386,7 @@ export default { class="diff-file file-holder gl-border-none gl-mb-0! gl-pb-5" > <diff-file-header + ref="header" :can-current-user-fork="canCurrentUserFork" :diff-file="file" :collapsible="true" |