flexlayout-react 0.7.6 → 0.7.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/ChangeLog.txt +8 -0
- package/cypress.config.ts +16 -0
- package/declarations/model/IJsonModel.d.ts +3 -3
- package/declarations/model/Model.d.ts +1 -1
- package/declarations/model/Utils.d.ts +1 -1
- package/declarations/view/Layout.d.ts +8 -8
- package/dist/flexlayout.js +11 -11
- package/dist/flexlayout_min.js +1 -1
- package/lib/Attribute.js +5 -1
- package/lib/Attribute.js.map +1 -1
- package/lib/AttributeDefinitions.js +7 -3
- package/lib/AttributeDefinitions.js.map +1 -1
- package/lib/DockLocation.js +31 -27
- package/lib/DockLocation.js.map +1 -1
- package/lib/DragDrop.js +7 -3
- package/lib/DragDrop.js.map +1 -1
- package/lib/DropInfo.js +5 -1
- package/lib/DropInfo.js.map +1 -1
- package/lib/I18nLabel.js +5 -2
- package/lib/I18nLabel.js.map +1 -1
- package/lib/Orientation.js +9 -5
- package/lib/Orientation.js.map +1 -1
- package/lib/PopupMenu.js +16 -12
- package/lib/PopupMenu.js.map +1 -1
- package/lib/Rect.js +10 -6
- package/lib/Rect.js.map +1 -1
- package/lib/Types.js +5 -2
- package/lib/Types.js.map +1 -1
- package/lib/index.js +38 -22
- package/lib/index.js.map +1 -1
- package/lib/model/Action.js +5 -1
- package/lib/model/Action.js.map +1 -1
- package/lib/model/Actions.js +20 -16
- package/lib/model/Actions.js.map +1 -1
- package/lib/model/BorderNode.js +72 -68
- package/lib/model/BorderNode.js.map +1 -1
- package/lib/model/BorderSet.js +16 -12
- package/lib/model/BorderSet.js.map +1 -1
- package/lib/model/ICloseType.js +5 -2
- package/lib/model/ICloseType.js.map +1 -1
- package/lib/model/IDraggable.js +2 -1
- package/lib/model/IDropTarget.js +2 -1
- package/lib/model/IJsonModel.js +2 -1
- package/lib/model/Model.js +112 -108
- package/lib/model/Model.js.map +1 -1
- package/lib/model/Node.js +14 -10
- package/lib/model/Node.js.map +1 -1
- package/lib/model/RowNode.js +63 -59
- package/lib/model/RowNode.js.map +1 -1
- package/lib/model/SplitterNode.js +12 -8
- package/lib/model/SplitterNode.js.map +1 -1
- package/lib/model/TabNode.js +34 -30
- package/lib/model/TabNode.js.map +1 -1
- package/lib/model/TabSetNode.js +59 -55
- package/lib/model/TabSetNode.js.map +1 -1
- package/lib/model/Utils.js +20 -9
- package/lib/model/Utils.js.map +1 -1
- package/lib/view/BorderButton.js +29 -25
- package/lib/view/BorderButton.js.map +1 -1
- package/lib/view/BorderTabSet.js +33 -29
- package/lib/view/BorderTabSet.js.map +1 -1
- package/lib/view/ErrorBoundary.js +9 -5
- package/lib/view/ErrorBoundary.js.map +1 -1
- package/lib/view/FloatingWindow.js +10 -6
- package/lib/view/FloatingWindow.js.map +1 -1
- package/lib/view/FloatingWindowTab.js +13 -9
- package/lib/view/FloatingWindowTab.js.map +1 -1
- package/lib/view/Icons.js +14 -6
- package/lib/view/Icons.js.map +1 -1
- package/lib/view/Layout.js +105 -93
- package/lib/view/Layout.js.map +1 -1
- package/lib/view/Splitter.js +29 -25
- package/lib/view/Splitter.js.map +1 -1
- package/lib/view/Tab.js +25 -21
- package/lib/view/Tab.js.map +1 -1
- package/lib/view/TabButton.js +27 -23
- package/lib/view/TabButton.js.map +1 -1
- package/lib/view/TabButtonStamp.js +12 -8
- package/lib/view/TabButtonStamp.js.map +1 -1
- package/lib/view/TabFloating.js +23 -19
- package/lib/view/TabFloating.js.map +1 -1
- package/lib/view/TabOverflowHook.js +15 -11
- package/lib/view/TabOverflowHook.js.map +1 -1
- package/lib/view/TabSet.js +51 -47
- package/lib/view/TabSet.js.map +1 -1
- package/lib/view/Utils.js +10 -4
- package/lib/view/Utils.js.map +1 -1
- package/package.json +10 -10
- package/src/model/Model.ts +3 -3
- package/src/model/Utils.ts +9 -0
- package/src/view/Layout.tsx +10 -1
- package/style/dark.css +560 -560
- package/style/gray.css +543 -543
- package/style/light.css +544 -544
- package/style/underline.css +565 -565
package/src/model/Utils.ts
CHANGED
|
@@ -67,3 +67,12 @@ export function adjustSelectedIndex(parent: TabSetNode | BorderNode | RowNode, r
|
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
69
|
}
|
|
70
|
+
|
|
71
|
+
export function randomUUID() {
|
|
72
|
+
// @ts-ignore
|
|
73
|
+
return ([1e7]+-1e3+-4e3+-8e3+-1e11).replace(/[018]/g, c =>
|
|
74
|
+
(c ^ crypto.getRandomValues(new Uint8Array(1))[0] & 15 >> c / 4).toString(16)
|
|
75
|
+
);
|
|
76
|
+
}
|
|
77
|
+
|
|
78
|
+
|
package/src/view/Layout.tsx
CHANGED
|
@@ -595,6 +595,15 @@ export class Layout extends React.Component<ILayoutProps, ILayoutState> {
|
|
|
595
595
|
let path = borderPath + "/t" + tabCount++;
|
|
596
596
|
if (this.supportsPopout && child.isFloating()) {
|
|
597
597
|
const rect = this._getScreenRect(child);
|
|
598
|
+
|
|
599
|
+
const tabBorderWidth= child._getAttr("borderWidth");
|
|
600
|
+
const tabBorderHeight= child._getAttr("borderHeight");
|
|
601
|
+
if (tabBorderWidth !== -1 && border.getLocation().getOrientation() === Orientation.HORZ) {
|
|
602
|
+
rect.width = tabBorderWidth;
|
|
603
|
+
} else if (tabBorderHeight !== -1 && border.getLocation().getOrientation() === Orientation.VERT) {
|
|
604
|
+
rect.height = tabBorderHeight;
|
|
605
|
+
}
|
|
606
|
+
|
|
598
607
|
floatingWindows.push(
|
|
599
608
|
<FloatingWindow
|
|
600
609
|
key={child.getId()}
|
|
@@ -921,7 +930,7 @@ export class Layout extends React.Component<ILayoutProps, ILayoutState> {
|
|
|
921
930
|
}
|
|
922
931
|
// add edge indicators
|
|
923
932
|
if (this.props.model.getMaximizedTabset() === undefined) {
|
|
924
|
-
this.setState({ showEdges:
|
|
933
|
+
this.setState({ showEdges: this.props.model.isEnableEdgeDock() });
|
|
925
934
|
}
|
|
926
935
|
|
|
927
936
|
if (this.dragNode !== undefined && this.dragNode instanceof TabNode && this.dragNode.getTabRect() !== undefined) {
|