Skip to content
Snippets Groups Projects

Resolve "User-generated permalink IDs collide with GitLab interface"

Merged Mike Greiling requested to merge 22781-user-generated-permalinks into master
All threads resolved!
2 files
+ 23
6
Compare changes
  • Side-by-side
  • Inline
Files
2
/* eslint-disable func-names, space-before-function-paren, wrap-iife, no-var, no-unused-expressions, no-param-reassign, no-else-return, quotes, object-shorthand, comma-dangle, camelcase, one-var, vars-on-top, one-var-declaration-per-line, no-return-assign, consistent-return, padded-blocks, max-len */
/* eslint-disable func-names, space-before-function-paren, wrap-iife, no-var, no-unused-expressions, no-param-reassign, no-else-return, quotes, object-shorthand, comma-dangle, camelcase, one-var, vars-on-top, one-var-declaration-per-line, no-return-assign, consistent-return, padded-blocks, max-len, prefer-template */
(function() {
(function() {
(function(w) {
(function(w) {
var base;
var base;
@@ -97,6 +97,9 @@
@@ -97,6 +97,9 @@
// automatically adjust scroll position for hash urls taking the height of the navbar into account
// automatically adjust scroll position for hash urls taking the height of the navbar into account
// https://github.com/twitter/bootstrap/issues/1768
// https://github.com/twitter/bootstrap/issues/1768
w.gl.utils.handleLocationHash = function() {
w.gl.utils.handleLocationHash = function() {
 
var hash = w.gl.utils.getLocationHash();
 
if (!hash) return;
 
var navbar = document.querySelector('.navbar-gitlab');
var navbar = document.querySelector('.navbar-gitlab');
var subnav = document.querySelector('.layout-nav');
var subnav = document.querySelector('.layout-nav');
var fixedTabs = document.querySelector('.js-tabs-affix');
var fixedTabs = document.querySelector('.js-tabs-affix');
@@ -104,9 +107,21 @@
@@ -104,9 +107,21 @@
var adjustment = 0;
var adjustment = 0;
if (navbar) adjustment -= navbar.offsetHeight;
if (navbar) adjustment -= navbar.offsetHeight;
if (subnav) adjustment -= subnav.offsetHeight;
if (subnav) adjustment -= subnav.offsetHeight;
if (fixedTabs) adjustment -= fixedTabs.offsetHeight;
window.scrollBy(0, adjustment);
// scroll to user-generated markdown anchor if we cannot find a match
 
if (document.getElementById(hash) === null) {
 
var target = document.getElementById('user-content_' + hash);
 
if (target && target.scrollIntoView) {
 
target.scrollIntoView(true);
 
window.scrollBy(0, adjustment);
 
}
 
} else {
 
// only adjust for fixedTabs when not targeting user-generated content
 
if (fixedTabs) {
 
adjustment -= fixedTabs.offsetHeight;
 
}
 
window.scrollBy(0, adjustment);
 
}
};
};
gl.utils.updateTooltipTitle = function($tooltipEl, newTitle) {
gl.utils.updateTooltipTitle = function($tooltipEl, newTitle) {
Loading