##// END OF EJS Templates
one more bit
one more bit

File last commit:

r17201:03d0484a
r17327:020d9649
Show More
layoutmanager.js
58 lines | 1.9 KiB | application/javascript | JavascriptLexer
// Copyright (c) IPython Development Team.
// Distributed under the terms of the Modified BSD License.
define([
'base/js/namespace',
'jquery',
], function(IPython, $) {
"use strict";
var LayoutManager = function () {
this.bind_events();
this.pager = undefined;
};
LayoutManager.prototype.bind_events = function () {
$(window).resize($.proxy(this.do_resize,this));
};
LayoutManager.prototype.app_height = function() {
var win = $(window);
var w = win.width();
var h = win.height();
var header_height;
if ($('div#header').css('display') === 'none') {
header_height = 0;
} else {
header_height = $('div#header').outerHeight(true);
}
var menubar_height;
if ($('div#menubar-container').css('display') === 'none') {
menubar_height = 0;
} else {
menubar_height = $('div#menubar-container').outerHeight(true);
}
return h-header_height-menubar_height; // content height
};
LayoutManager.prototype.do_resize = function () {
var app_height = this.app_height(); // content height
$('#ipython-main-app').height(app_height); // content+padding+border height
if (this.pager) {
var pager_height = this.pager.percentage_height*app_height;
var pager_splitter_height = $('div#pager_splitter').outerHeight(true);
$('div#pager').outerHeight(pager_height);
if (this.pager.expanded) {
$('div#notebook').outerHeight(app_height-pager_height-pager_splitter_height);
} else {
$('div#notebook').outerHeight(app_height-pager_splitter_height);
}
}
};
// Backwards compatability.
IPython.LayoutManager = LayoutManager;
return {'LayoutManager': LayoutManager};
});