Manages layout of panels surrounding the editor area, and size of the editor area (but not its contents).

Updates panel sizes when the window is resized. Maintains the max resizing limits for panels, based on currently available window size.


  • editorAreaResize -- When editor-holder's size changes for any reason (including panel show/hide
        panel resize, or the window resize).
        The 2nd arg is the new editor-holder height.
        The 3rd arg is a refreshHint flag for internal EditorManager use.

Variables Summary

Functions Summary







Represents a panel below the editor area (a child of ".content").

$panel non-nullable jQueryObject
The entire panel, including any chrome, already in the DOM.
minSize optional number
Minimum height of panel in px.
Public API


Used by EditorManager to notify us of layout changes our normal panel/window listeners wouldn't detect. For internal use only: most code should call EditorManager.resizeEditor().


Calculates the available height for the full-size Editor (or the no-editor placeholder), accounting for the current size of all visible panels, toolbar, & status bar.

Returns: number
Public API


Creates a new panel beneath the editor area and above the status bar footer. Panel is initially invisible.

id non-nullable string
Unique id for this panel. Use package-style naming, e.g. "myextension.feature.panelname"
$panel non-nullable jQueryObject
DOM content to use as the panel. Need not be in the document yet.
minSize optional number
Minimum height of panel in px.
Returns: !Panel


Trigger editor area resize whenever the window is resized


Trigger editor area resize whenever the given panel is shown/hidden/resized


Calculates a new size for editor-holder and resizes it accordingly, then and dispatches the "editorAreaResize" event. (The editors within are resized by EditorManager, in response to that event).

refreshHint optional string
One of "skip", "force", or undefined. See EditorManager docs.


Updates panel resize limits to disallow making panels big enough to shrink editor area below 0