diff options
author | Thomas Müller <thomas.mueller@tmit.eu> | 2015-10-05 09:48:31 +0200 |
---|---|---|
committer | Thomas Müller <thomas.mueller@tmit.eu> | 2015-10-05 09:48:31 +0200 |
commit | 681ab05e4df38aa0cf60efb5b8bd18973774d975 (patch) | |
tree | 6430418611bb7ce4136a61dd854d6792acfb1664 /core/js/js.js | |
parent | 09fe808d485c7b16c175d945e78425b85c0ba81c (diff) | |
parent | f135128664cae62a831ed46853ac820af6a4812b (diff) | |
download | nextcloud-server-681ab05e4df38aa0cf60efb5b8bd18973774d975.tar.gz nextcloud-server-681ab05e4df38aa0cf60efb5b8bd18973774d975.zip |
Merge pull request #19539 from owncloud/fix-multiselect-overlap-shorter
Fix filelist size issues, breadcrumb, multiselect
Diffstat (limited to 'core/js/js.js')
-rw-r--r-- | core/js/js.js | 68 |
1 files changed, 43 insertions, 25 deletions
diff --git a/core/js/js.js b/core/js/js.js index 36fa90e78a3..4f0f288bd0c 100644 --- a/core/js/js.js +++ b/core/js/js.js @@ -1641,6 +1641,45 @@ OC.Util = { }, /** + * Returns the width of a generic browser scrollbar + * + * @return {int} width of scrollbar + */ + getScrollBarWidth: function() { + if (this._scrollBarWidth) { + return this._scrollBarWidth; + } + + var inner = document.createElement('p'); + inner.style.width = "100%"; + inner.style.height = "200px"; + + var outer = document.createElement('div'); + outer.style.position = "absolute"; + outer.style.top = "0px"; + outer.style.left = "0px"; + outer.style.visibility = "hidden"; + outer.style.width = "200px"; + outer.style.height = "150px"; + outer.style.overflow = "hidden"; + outer.appendChild (inner); + + document.body.appendChild (outer); + var w1 = inner.offsetWidth; + outer.style.overflow = 'scroll'; + var w2 = inner.offsetWidth; + if(w1 === w2) { + w2 = outer.clientWidth; + } + + document.body.removeChild (outer); + + this._scrollBarWidth = (w1 - w2); + + return this._scrollBarWidth; + }, + + /** * Remove the time component from a given date * * @param {Date} date date @@ -1930,32 +1969,11 @@ jQuery.fn.exists = function(){ return this.length > 0; }; +/** + * @deprecated use OC.Util.getScrollBarWidth() instead + */ function getScrollBarWidth() { - var inner = document.createElement('p'); - inner.style.width = "100%"; - inner.style.height = "200px"; - - var outer = document.createElement('div'); - outer.style.position = "absolute"; - outer.style.top = "0px"; - outer.style.left = "0px"; - outer.style.visibility = "hidden"; - outer.style.width = "200px"; - outer.style.height = "150px"; - outer.style.overflow = "hidden"; - outer.appendChild (inner); - - document.body.appendChild (outer); - var w1 = inner.offsetWidth; - outer.style.overflow = 'scroll'; - var w2 = inner.offsetWidth; - if(w1 === w2) { - w2 = outer.clientWidth; - } - - document.body.removeChild (outer); - - return (w1 - w2); + return OC.Util.getScrollBarWidth(); } /** |