Side panels can be collapsed by clicking on the currently selected tab. This signal is emitted when the mouse is released on the selected tab without initiating a drag.
Emitted when a tab is added to the tab bar.
Overrides the contentNode
property getter in PhosphorJS' TabBar.
Tab bars of the left and right side panel are arranged vertically by rotating their labels.
Rotation is realized with the CSS transform
property, which disrupts the browser's ability
to arrange the involved elements automatically. Therefore the elements are arranged explicitly
by the TabBarRenderer using inline height
and top
styles. However, the size of labels
must still be computed by the browser, so the rendering is performed in two steps: first the
tab bar is rendered horizontally inside a hidden content node, then it is rendered again
vertically inside the proper content node. After the first step, size information is gathered
from all labels so it can be applied during the second step.
Overrides the scrollable host from the parent class.
The following event processing is used to generate collapseRequested
signals
when the mouse goes up on the currently selected tab without too much movement
between mousedown
and mouseup
. The movement threshold is the same that
is used by the superclass to detect a drag event. The allowDeselect
option
of the TabBar constructor cannot be used here because it is triggered when the
mouse goes down, and thus collides with dragging.
Handles viewContainerPart
drag enter.
Handle viewContainerPart
drag over,
Defines the appropriate dropAction
and opens the tab on which the mouse stands on for more than 800 ms.
Render the tab bar using the given DOM element as host. The optional renderData
is forwarded
to the TabBarRenderer.
Reveal the tab with the given index by moving the scroll bar if necessary.
Render the tab bar in the hidden content node (see hiddenContentNode
for explanation),
then gather size information for labels and render it again in the proper content node.
A specialized tab bar for side areas.