Merge pull request #19539 from owncloud/fix-multiselect-overlap-shorter

Fix filelist size issues, breadcrumb, multiselect
This commit is contained in:
Thomas Müller 2015-10-05 09:48:31 +02:00
commit 681ab05e4d
2 changed files with 47 additions and 25 deletions

View File

@ -233,6 +233,7 @@
this.$el.find('thead th .columntitle').click(_.bind(this._onClickHeader, this));
this._onResize = _.debounce(_.bind(this._onResize, this), 100);
$('#app-content').on('appresized', this._onResize);
$(window).resize(this._onResize);
this.$el.on('show', this._onResize);
@ -278,6 +279,7 @@
this.fileActions.off('registerAction', this._onFileActionsUpdated);
this.fileActions.off('setDefault', this._onFileActionsUpdated);
OC.Plugins.detach('OCA.Files.FileList', this);
$('#app-content').off('appresized', this._onResize);
},
/**
@ -437,6 +439,8 @@
this.breadcrumb.setMaxWidth(containerWidth - actionsWidth - 10);
this.$table.find('>thead').width($('#app-content').width() - OC.Util.getScrollBarWidth());
this.updateSearch();
},

View File

@ -1640,6 +1640,45 @@ OC.Util = {
return $('html').hasClass('ie8');
},
/**
* 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
*
@ -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();
}
/**