diff --git a/app/assets/javascripts/application.js b/app/assets/javascripts/application.js index 3c1d65b8e67842167d0794e6c2906341dca9e9c6..5d7350ad7be4c0c261abaeb779cf6dde8a44c84e 100644 --- a/app/assets/javascripts/application.js +++ b/app/assets/javascripts/application.js @@ -240,8 +240,6 @@ require('es6-promise').polyfill(); }); gl.awardsHandler = new AwardsHandler(); new Aside(); - // bind sidebar events - new gl.Sidebar(); gl.utils.initTimeagoTimeout(); }); diff --git a/app/assets/javascripts/right_sidebar.js b/app/assets/javascripts/right_sidebar.js index 76a0f993ea0a413033d6c7029f804d3bf4751763..82c17956f062be4d9ceff44d792ba5245324cb4c 100644 --- a/app/assets/javascripts/right_sidebar.js +++ b/app/assets/javascripts/right_sidebar.js @@ -25,6 +25,8 @@ $('.dropdown').on('hidden.gl.dropdown', this, this.onSidebarDropdownHidden); $('.dropdown').on('loading.gl.dropdown', this.sidebarDropdownLoading); $('.dropdown').on('loaded.gl.dropdown', this.sidebarDropdownLoaded); + $(window).on('resize', () => this.setSidebarHeight()); + $(document).on('scroll', () => this.setSidebarHeight()); $(document).on('click', '.js-sidebar-toggle', function(e, triggered) { var $allGutterToggleIcons, $this, $thisIcon; e.preventDefault(); @@ -191,6 +193,16 @@ } }; + Sidebar.prototype.setSidebarHeight = function() { + const $navHeight = $('.navbar-gitlab').outerHeight() + $('.layout-nav').outerHeight(); + const diff = $navHeight - $('body').scrollTop(); + if (diff > 0) { + $('.js-right-sidebar').outerHeight($(window).height() - diff); + } else { + $('.js-right-sidebar').outerHeight('100%'); + } + }; + Sidebar.prototype.isOpen = function() { return this.sidebar.is('.right-sidebar-expanded'); }; diff --git a/app/assets/javascripts/sidebar.js.es6 b/app/assets/javascripts/sidebar.js.es6 deleted file mode 100644 index cd0aa9be6e58e81eb0a878bcd9962b5f42533a9a..0000000000000000000000000000000000000000 --- a/app/assets/javascripts/sidebar.js.es6 +++ /dev/null @@ -1,20 +0,0 @@ -/* eslint-disable arrow-parens, class-methods-use-this, no-param-reassign */ -/* global Cookies */ - -(() => { - class Sidebar { - - setSidebarHeight() { - const $navHeight = $('.navbar-gitlab').outerHeight() + $('.layout-nav').outerHeight(); - const diff = $navHeight - $('body').scrollTop(); - if (diff > 0) { - $('.js-right-sidebar').outerHeight($(window).height() - diff); - } else { - $('.js-right-sidebar').outerHeight('100%'); - } - } - } - - window.gl = window.gl || {}; - gl.Sidebar = Sidebar; -})();