mirror of
https://github.com/jupyter/notebook.git
synced 2025-02-05 12:19:58 +08:00
f499104d75
The approach in #7517 didn't work on Safari (as in the entire page was invisible). This is the same mechanism used to size the CodeMirror div on the edit page, and should work more reliably.
66 lines
1.9 KiB
JavaScript
66 lines
1.9 KiB
JavaScript
// Copyright (c) IPython Development Team.
|
|
// Distributed under the terms of the Modified BSD License.
|
|
|
|
define([
|
|
'base/js/namespace',
|
|
'jquery',
|
|
'base/js/events',
|
|
], function(IPython, $, events){
|
|
"use strict";
|
|
|
|
var Page = function () {
|
|
this.bind_events();
|
|
};
|
|
|
|
Page.prototype.bind_events = function () {
|
|
// resize site on:
|
|
// - window resize
|
|
// - header change
|
|
// - page load
|
|
var _handle_resize = $.proxy(this._resize_site, this);
|
|
|
|
$(window).resize(_handle_resize);
|
|
|
|
// On document ready, resize codemirror.
|
|
$(document).ready(_handle_resize);
|
|
events.on('resize-header.Page', _handle_resize);
|
|
};
|
|
|
|
Page.prototype.show = function () {
|
|
/**
|
|
* The header and site divs start out hidden to prevent FLOUC.
|
|
* Main scripts should call this method after styling everything.
|
|
*/
|
|
this.show_header();
|
|
this.show_site();
|
|
};
|
|
|
|
Page.prototype.show_header = function () {
|
|
/**
|
|
* The header and site divs start out hidden to prevent FLOUC.
|
|
* Main scripts should call this method after styling everything.
|
|
* TODO: selector are hardcoded, pass as constructor argument
|
|
*/
|
|
$('div#header').css('display','block');
|
|
};
|
|
|
|
Page.prototype.show_site = function () {
|
|
/**
|
|
* The header and site divs start out hidden to prevent FLOUC.
|
|
* Main scripts should call this method after styling everything.
|
|
* TODO: selector are hardcoded, pass as constructor argument
|
|
*/
|
|
$('div#site').css('display', 'block');
|
|
this._resize_site();
|
|
};
|
|
|
|
Page.prototype._resize_site = function() {
|
|
// Update the site's size.
|
|
$('div#site').height(window.innerHeight - $('#header').height());
|
|
};
|
|
|
|
// Register self in the global namespace for convenience.
|
|
IPython.Page = Page;
|
|
return {'Page': Page};
|
|
});
|