##// END OF EJS Templates
use invoke instead of fabric...
use invoke instead of fabric it's the descendant of the part of fabric we actually use, it doesn't have complex compiled dependencies like fabric, and it works on Python 3.

File last commit:

r17201:03d0484a
r18351:0ab76370
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};
});