summaryrefslogtreecommitdiff
path: root/vendor
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2014-05-22 18:19:50 +0300
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2014-05-22 18:19:50 +0300
commit74079fe2369c20767cb6c639eec1886c9822fefc (patch)
tree8435098f5b15ac5c15ce5cfa577c2eb3e6e66741 /vendor
parent9f80ab8e75181534cb21809258337f081beaf918 (diff)
downloadgitlab-ce-74079fe2369c20767cb6c639eec1886c9822fefc.tar.gz
Fix scroll to highlighted line. Replace scrollTO js file with gem
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Diffstat (limited to 'vendor')
-rw-r--r--vendor/assets/javascripts/jquery.scrollto.js225
1 files changed, 0 insertions, 225 deletions
diff --git a/vendor/assets/javascripts/jquery.scrollto.js b/vendor/assets/javascripts/jquery.scrollto.js
deleted file mode 100644
index 7f10b7f1082..00000000000
--- a/vendor/assets/javascripts/jquery.scrollto.js
+++ /dev/null
@@ -1,225 +0,0 @@
-/**
- * @depends jquery
- * @name jquery.scrollto
- * @package jquery-scrollto {@link http://balupton.com/projects/jquery-scrollto}
- */
-
-/**
- * jQuery Aliaser
- */
-(function(window,undefined){
- // Prepare
- var jQuery, $, ScrollTo;
- jQuery = $ = window.jQuery;
-
- /**
- * jQuery ScrollTo (balupton edition)
- * @version 1.2.0
- * @date July 9, 2012
- * @since 0.1.0, August 27, 2010
- * @package jquery-scrollto {@link http://balupton.com/projects/jquery-scrollto}
- * @author Benjamin "balupton" Lupton {@link http://balupton.com}
- * @copyright (c) 2010 Benjamin Arthur Lupton {@link http://balupton.com}
- * @license MIT License {@link http://creativecommons.org/licenses/MIT/}
- */
- ScrollTo = $.ScrollTo = $.ScrollTo || {
- /**
- * The Default Configuration
- */
- config: {
- duration: 400,
- easing: 'swing',
- callback: undefined,
- durationMode: 'each',
- offsetTop: 0,
- offsetLeft: 0
- },
-
- /**
- * Configure ScrollTo
- */
- configure: function(options){
- // Apply Options to Config
- $.extend(ScrollTo.config, options||{});
-
- // Chain
- return this;
- },
-
- /**
- * Perform the Scroll Animation for the Collections
- * We use $inline here, so we can determine the actual offset start for each overflow:scroll item
- * Each collection is for each overflow:scroll item
- */
- scroll: function(collections, config){
- // Prepare
- var collection, $container, container, $target, $inline, position,
- containerScrollTop, containerScrollLeft,
- containerScrollTopEnd, containerScrollLeftEnd,
- startOffsetTop, targetOffsetTop, targetOffsetTopAdjusted,
- startOffsetLeft, targetOffsetLeft, targetOffsetLeftAdjusted,
- scrollOptions,
- callback;
-
- // Determine the Scroll
- collection = collections.pop();
- $container = collection.$container;
- container = $container.get(0);
- $target = collection.$target;
-
- // Prepare the Inline Element of the Container
- $inline = $('<span/>').css({
- 'position': 'absolute',
- 'top': '0px',
- 'left': '0px'
- });
- position = $container.css('position');
-
- // Insert the Inline Element of the Container
- $container.css('position','relative');
- $inline.appendTo($container);
-
- // Determine the top offset
- startOffsetTop = $inline.offset().top;
- targetOffsetTop = $target.offset().top;
- targetOffsetTopAdjusted = targetOffsetTop - startOffsetTop - parseInt(config.offsetTop,10);
-
- // Determine the left offset
- startOffsetLeft = $inline.offset().left;
- targetOffsetLeft = $target.offset().left;
- targetOffsetLeftAdjusted = targetOffsetLeft - startOffsetLeft - parseInt(config.offsetLeft,10);
-
- // Determine current scroll positions
- containerScrollTop = container.scrollTop;
- containerScrollLeft = container.scrollLeft;
-
- // Reset the Inline Element of the Container
- $inline.remove();
- $container.css('position',position);
-
- // Prepare the scroll options
- scrollOptions = {};
-
- // Prepare the callback
- callback = function(event){
- // Check
- if ( collections.length === 0 ) {
- // Callback
- if ( typeof config.callback === 'function' ) {
- config.callback.apply(this,[event]);
- }
- }
- else {
- // Recurse
- ScrollTo.scroll(collections,config);
- }
- // Return true
- return true;
- };
-
- // Handle if we only want to scroll if we are outside the viewport
- if ( config.onlyIfOutside ) {
- // Determine current scroll positions
- containerScrollTopEnd = containerScrollTop + $container.height();
- containerScrollLeftEnd = containerScrollLeft + $container.width();
-
- // Check if we are in the range of the visible area of the container
- if ( containerScrollTop < targetOffsetTopAdjusted && targetOffsetTopAdjusted < containerScrollTopEnd ) {
- targetOffsetTopAdjusted = containerScrollTop;
- }
- if ( containerScrollLeft < targetOffsetLeftAdjusted && targetOffsetLeftAdjusted < containerScrollLeftEnd ) {
- targetOffsetLeftAdjusted = containerScrollLeft;
- }
- }
-
- // Determine the scroll options
- if ( targetOffsetTopAdjusted !== containerScrollTop ) {
- scrollOptions.scrollTop = targetOffsetTopAdjusted;
- }
- if ( targetOffsetLeftAdjusted !== containerScrollLeft ) {
- scrollOptions.scrollLeft = targetOffsetLeftAdjusted;
- }
-
- // Perform the scroll
- if ( $.browser.safari && container === document.body ) {
- window.scrollTo(scrollOptions.scrollLeft, scrollOptions.scrollTop);
- callback();
- }
- else if ( scrollOptions.scrollTop || scrollOptions.scrollLeft ) {
- $container.animate(scrollOptions, config.duration, config.easing, callback);
- }
- else {
- callback();
- }
-
- // Return true
- return true;
- },
-
- /**
- * ScrollTo the Element using the Options
- */
- fn: function(options){
- // Prepare
- var collections, config, $container, container;
- collections = [];
-
- // Prepare
- var $target = $(this);
- if ( $target.length === 0 ) {
- // Chain
- return this;
- }
-
- // Handle Options
- config = $.extend({},ScrollTo.config,options);
-
- // Fetch
- $container = $target.parent();
- container = $container.get(0);
-
- // Cycle through the containers
- while ( ($container.length === 1) && (container !== document.body) && (container !== document) ) {
- // Check Container for scroll differences
- var scrollTop, scrollLeft;
- scrollTop = $container.css('overflow-y') !== 'visible' && container.scrollHeight !== container.clientHeight;
- scrollLeft = $container.css('overflow-x') !== 'visible' && container.scrollWidth !== container.clientWidth;
- if ( scrollTop || scrollLeft ) {
- // Push the Collection
- collections.push({
- '$container': $container,
- '$target': $target
- });
- // Update the Target
- $target = $container;
- }
- // Update the Container
- $container = $container.parent();
- container = $container.get(0);
- }
-
- // Add the final collection
- collections.push({
- '$container': $(
- ($.browser.msie || $.browser.mozilla) ? 'html' : 'body'
- ),
- '$target': $target
- });
-
- // Adjust the Config
- if ( config.durationMode === 'all' ) {
- config.duration /= collections.length;
- }
-
- // Handle
- ScrollTo.scroll(collections,config);
-
- // Chain
- return this;
- }
- };
-
- // Apply our jQuery Prototype Function
- $.fn.ScrollTo = $.ScrollTo.fn;
-
-})(window);