flexlayout-react 0.6.10 → 0.7.2
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 +12 -0
- package/README.md +45 -48
- package/declarations/model/Floating.d.ts +15 -0
- package/declarations/model/FloatingSet.d.ts +9 -0
- package/declarations/view/Icons.d.ts +0 -1
- package/declarations/view/Layout.d.ts +12 -3
- package/dist/flexlayout.js +7 -7
- package/dist/flexlayout_min.js +1 -1
- package/lib/PopupMenu.js.map +1 -1
- package/lib/index.js +5 -1
- package/lib/index.js.map +1 -1
- package/lib/model/Floating.js +61 -0
- package/lib/model/Floating.js.map +1 -0
- package/lib/model/FloatingSet.js +58 -0
- package/lib/model/FloatingSet.js.map +1 -0
- package/lib/view/BorderTabSet.js +4 -2
- package/lib/view/BorderTabSet.js.map +1 -1
- package/lib/view/ErrorBoundary.js.map +1 -1
- package/lib/view/Icons.js +15 -10
- package/lib/view/Icons.js.map +1 -1
- package/lib/view/Layout.js +29 -76
- package/lib/view/Layout.js.map +1 -1
- package/lib/view/TabSet.js +3 -1
- package/lib/view/TabSet.js.map +1 -1
- package/lib/view/Utils.js.map +1 -1
- package/package.json +20 -20
- package/src/PopupMenu.tsx +5 -5
- package/src/view/BorderButton.tsx +3 -3
- package/src/view/BorderTabSet.tsx +9 -7
- package/src/view/ErrorBoundary.tsx +1 -0
- package/src/view/Icons.tsx +17 -7
- package/src/view/Layout.tsx +38 -104
- package/src/view/TabButton.tsx +3 -3
- package/src/view/TabButtonStamp.tsx +3 -3
- package/src/view/TabSet.tsx +8 -6
- package/src/view/Utils.tsx +3 -3
- package/style/_base.scss +1 -1
- package/style/dark.css +4 -3
- package/style/dark.css.map +1 -1
- package/style/dark.scss +1 -0
- package/style/gray.css +4 -3
- package/style/gray.css.map +1 -1
- package/style/gray.scss +1 -0
- package/style/light.css +4 -3
- package/style/light.css.map +1 -1
- package/style/light.scss +1 -0
- package/style/underline.css +13 -7
- package/style/underline.css.map +1 -1
- package/style/underline.scss +11 -5
- package/dist/flexlayout.js.zip +0 -0
- package/dist/flexlayout_min.js.zip +0 -0
package/src/view/Layout.tsx
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
|
-
import
|
|
2
|
+
import { createPortal } from "react-dom";
|
|
3
3
|
import { DockLocation } from "../DockLocation";
|
|
4
4
|
import { DragDrop } from "../DragDrop";
|
|
5
5
|
import { DropInfo } from "../DropInfo";
|
|
@@ -40,14 +40,16 @@ export type ShowOverflowMenuCallback = (
|
|
|
40
40
|
onSelect: (item: { index: number; node: TabNode }) => void,
|
|
41
41
|
) => void;
|
|
42
42
|
export type TabSetPlaceHolderCallback = (node: TabSetNode) => React.ReactNode;
|
|
43
|
+
export type IconFactory = (node: TabNode) => React.ReactNode;
|
|
44
|
+
export type TitleFactory = (node: TabNode) => ITitleObject | React.ReactNode;
|
|
43
45
|
|
|
44
46
|
export interface ILayoutProps {
|
|
45
47
|
model: Model;
|
|
46
48
|
factory: (node: TabNode) => React.ReactNode;
|
|
47
49
|
font?: IFontValues;
|
|
48
50
|
fontFamily?: string;
|
|
49
|
-
iconFactory?:
|
|
50
|
-
titleFactory?:
|
|
51
|
+
iconFactory?: IconFactory;
|
|
52
|
+
titleFactory?: TitleFactory;
|
|
51
53
|
icons?: IIcons;
|
|
52
54
|
onAction?: (action: Action) => Action | undefined;
|
|
53
55
|
onRenderTab?: (
|
|
@@ -120,7 +122,8 @@ export interface ILayoutState {
|
|
|
120
122
|
calculatedBorderBarSize: number;
|
|
121
123
|
editingTab?: TabNode;
|
|
122
124
|
showHiddenBorder: DockLocation;
|
|
123
|
-
portal?: React.
|
|
125
|
+
portal?: React.ReactPortal;
|
|
126
|
+
showEdges?: boolean;
|
|
124
127
|
}
|
|
125
128
|
|
|
126
129
|
export interface IIcons {
|
|
@@ -190,7 +193,7 @@ export interface ILayoutCallbacks {
|
|
|
190
193
|
showPortal: (portal: React.ReactNode, portalDiv: HTMLDivElement) => void;
|
|
191
194
|
hidePortal: () => void;
|
|
192
195
|
getShowOverflowMenu(): ShowOverflowMenuCallback | undefined;
|
|
193
|
-
getTabSetPlaceHolderCallback()
|
|
196
|
+
getTabSetPlaceHolderCallback(): TabSetPlaceHolderCallback | undefined;
|
|
194
197
|
}
|
|
195
198
|
|
|
196
199
|
// Popout windows work in latest browsers based on webkit (Chrome, Opera, Safari, latest Edge) and Firefox. They do
|
|
@@ -247,22 +250,11 @@ export class Layout extends React.Component<ILayoutProps, ILayoutState> {
|
|
|
247
250
|
private customDrop: ICustomDropDestination | undefined;
|
|
248
251
|
/** @internal */
|
|
249
252
|
private outlineDiv?: HTMLDivElement;
|
|
250
|
-
|
|
251
253
|
/** @internal */
|
|
252
254
|
private edgeRectLength = 100;
|
|
253
255
|
/** @internal */
|
|
254
256
|
private edgeRectWidth = 10;
|
|
255
257
|
/** @internal */
|
|
256
|
-
private edgesShown = false;
|
|
257
|
-
/** @internal */
|
|
258
|
-
private edgeRightDiv?: HTMLDivElement;
|
|
259
|
-
/** @internal */
|
|
260
|
-
private edgeBottomDiv?: HTMLDivElement;
|
|
261
|
-
/** @internal */
|
|
262
|
-
private edgeLeftDiv?: HTMLDivElement;
|
|
263
|
-
/** @internal */
|
|
264
|
-
private edgeTopDiv?: HTMLDivElement;
|
|
265
|
-
/** @internal */
|
|
266
258
|
private fnNewNodeDropped?: (node?: Node, event?: Event) => void;
|
|
267
259
|
/** @internal */
|
|
268
260
|
private currentDocument?: HTMLDocument;
|
|
@@ -299,6 +291,7 @@ export class Layout extends React.Component<ILayoutProps, ILayoutState> {
|
|
|
299
291
|
calculatedBorderBarSize: 30,
|
|
300
292
|
editingTab: undefined,
|
|
301
293
|
showHiddenBorder: DockLocation.CENTER,
|
|
294
|
+
showEdges: false,
|
|
302
295
|
};
|
|
303
296
|
|
|
304
297
|
this.onDragEnter = this.onDragEnter.bind(this);
|
|
@@ -494,10 +487,6 @@ export class Layout extends React.Component<ILayoutProps, ILayoutState> {
|
|
|
494
487
|
this.renderBorder(this.props.model.getBorderSet(), borderComponents, tabComponents, floatingWindows, splitterComponents);
|
|
495
488
|
this.renderChildren("", this.props.model.getRoot(), tabSetComponents, tabComponents, floatingWindows, splitterComponents);
|
|
496
489
|
|
|
497
|
-
if (this.edgesShown) {
|
|
498
|
-
this.repositionEdges(this.state.rect)
|
|
499
|
-
}
|
|
500
|
-
|
|
501
490
|
const nextTopIds: string[] = [];
|
|
502
491
|
const nextTopIdsMap: Record<string, string> = {};
|
|
503
492
|
|
|
@@ -517,6 +506,20 @@ export class Layout extends React.Component<ILayoutProps, ILayoutState> {
|
|
|
517
506
|
}
|
|
518
507
|
}
|
|
519
508
|
|
|
509
|
+
const edges: React.ReactNode[] = [];
|
|
510
|
+
if (this.state.showEdges) {
|
|
511
|
+
const r = this.centerRect;
|
|
512
|
+
const length = this.edgeRectLength;
|
|
513
|
+
const width = this.edgeRectWidth;
|
|
514
|
+
const offset = this.edgeRectLength / 2;
|
|
515
|
+
const className = this.getClassName(CLASSES.FLEXLAYOUT__EDGE_RECT);
|
|
516
|
+
const radius = 50;
|
|
517
|
+
edges.push(<div key="North" style={{ top: r.y, left: r.x + r.width / 2 - offset, width: length, height: width, borderBottomLeftRadius: radius, borderBottomRightRadius: radius }} className={className}></div>)
|
|
518
|
+
edges.push(<div key="West" style={{ top: r.y + r.height / 2 - offset, left: r.x, width: width, height: length, borderTopRightRadius: radius, borderBottomRightRadius: radius }} className={className}></div>)
|
|
519
|
+
edges.push(<div key="South" style={{ top: r.y + r.height - width, left: r.x + r.width / 2 - offset, width: length, height: width, borderTopLeftRadius: radius, borderTopRightRadius: radius }} className={className}></div>)
|
|
520
|
+
edges.push(<div key="East" style={{ top: r.y + r.height / 2 - offset, right: r.x, width: width, height: length, borderTopLeftRadius: radius, borderBottomLeftRadius: radius }} className={className}></div>)
|
|
521
|
+
}
|
|
522
|
+
|
|
520
523
|
// this.layoutTime = (Date.now() - this.start);
|
|
521
524
|
|
|
522
525
|
return (
|
|
@@ -527,6 +530,7 @@ export class Layout extends React.Component<ILayoutProps, ILayoutState> {
|
|
|
527
530
|
})}
|
|
528
531
|
{borderComponents}
|
|
529
532
|
{splitterComponents}
|
|
533
|
+
{edges}
|
|
530
534
|
{floatingWindows}
|
|
531
535
|
{this.metricsElements()}
|
|
532
536
|
{this.state.portal}
|
|
@@ -724,6 +728,15 @@ export class Layout extends React.Component<ILayoutProps, ILayoutState> {
|
|
|
724
728
|
this.dragStart(undefined, dragText, TabNode._fromJson(json, this.props.model, false), true, undefined, undefined);
|
|
725
729
|
}
|
|
726
730
|
|
|
731
|
+
/**
|
|
732
|
+
* Move a tab/tabset using drag and drop
|
|
733
|
+
* @param node the tab or tabset to drag
|
|
734
|
+
* @param dragText the text to show on the drag panel
|
|
735
|
+
*/
|
|
736
|
+
moveTabWithDragAndDrop(node: (TabNode | TabSetNode), dragText?: string) {
|
|
737
|
+
this.dragStart(undefined, dragText, node, true, undefined, undefined);
|
|
738
|
+
}
|
|
739
|
+
|
|
727
740
|
/**
|
|
728
741
|
* Adds a new tab by dragging a labeled panel to the drop location, dragging starts when you
|
|
729
742
|
* mouse down on the panel
|
|
@@ -742,7 +755,7 @@ export class Layout extends React.Component<ILayoutProps, ILayoutState> {
|
|
|
742
755
|
this.dragDiv = this.currentDocument!.createElement("div");
|
|
743
756
|
this.dragDiv.className = this.getClassName(CLASSES.FLEXLAYOUT__DRAG_RECT);
|
|
744
757
|
this.dragDiv.addEventListener("mousedown", this.onDragDivMouseDown);
|
|
745
|
-
this.dragDiv.addEventListener("touchstart", this.onDragDivMouseDown);
|
|
758
|
+
this.dragDiv.addEventListener("touchstart", this.onDragDivMouseDown, { passive: false });
|
|
746
759
|
|
|
747
760
|
this.dragRectRender(this.dragDivText, undefined, this.newTabJson, () => {
|
|
748
761
|
if (this.dragDiv) {
|
|
@@ -798,7 +811,7 @@ export class Layout extends React.Component<ILayoutProps, ILayoutState> {
|
|
|
798
811
|
|
|
799
812
|
this.dragDiv = undefined;
|
|
800
813
|
this.hidePortal();
|
|
801
|
-
this.
|
|
814
|
+
this.setState({ showEdges: false });
|
|
802
815
|
if (this.fnNewNodeDropped != null) {
|
|
803
816
|
this.fnNewNodeDropped();
|
|
804
817
|
this.fnNewNodeDropped = undefined;
|
|
@@ -883,7 +896,7 @@ export class Layout extends React.Component<ILayoutProps, ILayoutState> {
|
|
|
883
896
|
|
|
884
897
|
/** @internal */
|
|
885
898
|
showPortal = (control: React.ReactNode, element: HTMLElement) => {
|
|
886
|
-
const portal =
|
|
899
|
+
const portal = createPortal(control, element) as React.ReactPortal;
|
|
887
900
|
this.setState({ portal });
|
|
888
901
|
};
|
|
889
902
|
|
|
@@ -912,7 +925,7 @@ export class Layout extends React.Component<ILayoutProps, ILayoutState> {
|
|
|
912
925
|
}
|
|
913
926
|
// add edge indicators
|
|
914
927
|
if (this.props.model.getMaximizedTabset() === undefined) {
|
|
915
|
-
this.showEdges
|
|
928
|
+
this.setState({ showEdges: true });
|
|
916
929
|
}
|
|
917
930
|
|
|
918
931
|
if (this.dragNode !== undefined && this.dragNode instanceof TabNode && this.dragNode.getTabRect() !== undefined) {
|
|
@@ -974,7 +987,7 @@ export class Layout extends React.Component<ILayoutProps, ILayoutState> {
|
|
|
974
987
|
this.dragDiv = undefined;
|
|
975
988
|
this.hidePortal();
|
|
976
989
|
|
|
977
|
-
this.
|
|
990
|
+
this.setState({ showEdges: false });
|
|
978
991
|
DragDrop.instance.hideGlass();
|
|
979
992
|
|
|
980
993
|
if (this.dropInfo) {
|
|
@@ -1116,85 +1129,6 @@ export class Layout extends React.Component<ILayoutProps, ILayoutState> {
|
|
|
1116
1129
|
}
|
|
1117
1130
|
}
|
|
1118
1131
|
|
|
1119
|
-
/** @internal */
|
|
1120
|
-
showEdges(rootdiv: HTMLElement) {
|
|
1121
|
-
if (this.props.model.isEnableEdgeDock()) {
|
|
1122
|
-
const length = this.edgeRectLength + "px";
|
|
1123
|
-
const radius = "50px";
|
|
1124
|
-
const width = this.edgeRectWidth + "px";
|
|
1125
|
-
|
|
1126
|
-
this.edgeTopDiv = this.currentDocument!.createElement("div");
|
|
1127
|
-
this.edgeTopDiv.className = this.getClassName(CLASSES.FLEXLAYOUT__EDGE_RECT);
|
|
1128
|
-
this.edgeTopDiv.style.width = length;
|
|
1129
|
-
this.edgeTopDiv.style.height = width;
|
|
1130
|
-
this.edgeTopDiv.style.borderBottomLeftRadius = radius;
|
|
1131
|
-
this.edgeTopDiv.style.borderBottomRightRadius = radius;
|
|
1132
|
-
|
|
1133
|
-
this.edgeLeftDiv = this.currentDocument!.createElement("div");
|
|
1134
|
-
this.edgeLeftDiv.className = this.getClassName(CLASSES.FLEXLAYOUT__EDGE_RECT);
|
|
1135
|
-
this.edgeLeftDiv.style.width = width;
|
|
1136
|
-
this.edgeLeftDiv.style.height = length;
|
|
1137
|
-
this.edgeLeftDiv.style.borderTopRightRadius = radius;
|
|
1138
|
-
this.edgeLeftDiv.style.borderBottomRightRadius = radius;
|
|
1139
|
-
|
|
1140
|
-
this.edgeBottomDiv = this.currentDocument!.createElement("div");
|
|
1141
|
-
this.edgeBottomDiv.className = this.getClassName(CLASSES.FLEXLAYOUT__EDGE_RECT);
|
|
1142
|
-
this.edgeBottomDiv.style.width = length;
|
|
1143
|
-
this.edgeBottomDiv.style.height = width;
|
|
1144
|
-
this.edgeBottomDiv.style.borderTopLeftRadius = radius;
|
|
1145
|
-
this.edgeBottomDiv.style.borderTopRightRadius = radius;
|
|
1146
|
-
|
|
1147
|
-
this.edgeRightDiv = this.currentDocument!.createElement("div");
|
|
1148
|
-
this.edgeRightDiv.className = this.getClassName(CLASSES.FLEXLAYOUT__EDGE_RECT);
|
|
1149
|
-
this.edgeRightDiv.style.width = width;
|
|
1150
|
-
this.edgeRightDiv.style.height = length;
|
|
1151
|
-
this.edgeRightDiv.style.borderTopLeftRadius = radius;
|
|
1152
|
-
this.edgeRightDiv.style.borderBottomLeftRadius = radius;
|
|
1153
|
-
|
|
1154
|
-
this.repositionEdges(this.state.rect);
|
|
1155
|
-
|
|
1156
|
-
rootdiv.appendChild(this.edgeTopDiv);
|
|
1157
|
-
rootdiv.appendChild(this.edgeLeftDiv);
|
|
1158
|
-
rootdiv.appendChild(this.edgeBottomDiv);
|
|
1159
|
-
rootdiv.appendChild(this.edgeRightDiv);
|
|
1160
|
-
|
|
1161
|
-
this.edgesShown = true;
|
|
1162
|
-
}
|
|
1163
|
-
}
|
|
1164
|
-
|
|
1165
|
-
/** @internal */
|
|
1166
|
-
repositionEdges(domRect: Rect) {
|
|
1167
|
-
if (this.props.model.isEnableEdgeDock()) {
|
|
1168
|
-
const r = this.centerRect!;
|
|
1169
|
-
|
|
1170
|
-
this.edgeTopDiv!.style.top = r.y + "px";
|
|
1171
|
-
this.edgeTopDiv!.style.left = r.x + (r.width - this.edgeRectLength) / 2 + "px";
|
|
1172
|
-
|
|
1173
|
-
this.edgeLeftDiv!.style.top = r.y + (r.height - this.edgeRectLength) / 2 + "px";
|
|
1174
|
-
this.edgeLeftDiv!.style.left = r.x + "px";
|
|
1175
|
-
|
|
1176
|
-
this.edgeBottomDiv!.style.bottom = domRect.height - r.getBottom() + "px";
|
|
1177
|
-
this.edgeBottomDiv!.style.left = r.x + (r.width - this.edgeRectLength) / 2 + "px";
|
|
1178
|
-
|
|
1179
|
-
this.edgeRightDiv!.style.top = r.y + (r.height - this.edgeRectLength) / 2 + "px";
|
|
1180
|
-
this.edgeRightDiv!.style.right = domRect.width - r.getRight() + "px";
|
|
1181
|
-
}
|
|
1182
|
-
}
|
|
1183
|
-
|
|
1184
|
-
/** @internal */
|
|
1185
|
-
hideEdges(rootdiv: HTMLElement) {
|
|
1186
|
-
if (this.props.model.isEnableEdgeDock()) {
|
|
1187
|
-
try {
|
|
1188
|
-
rootdiv.removeChild(this.edgeTopDiv!);
|
|
1189
|
-
rootdiv.removeChild(this.edgeLeftDiv!);
|
|
1190
|
-
rootdiv.removeChild(this.edgeBottomDiv!);
|
|
1191
|
-
rootdiv.removeChild(this.edgeRightDiv!);
|
|
1192
|
-
} catch (e) { }
|
|
1193
|
-
}
|
|
1194
|
-
|
|
1195
|
-
this.edgesShown = false;
|
|
1196
|
-
}
|
|
1197
|
-
|
|
1198
1132
|
/** @internal */
|
|
1199
1133
|
maximize(tabsetNode: TabSetNode) {
|
|
1200
1134
|
this.doAction(Actions.maximizeToggle(tabsetNode.getId()));
|
package/src/view/TabButton.tsx
CHANGED
|
@@ -4,7 +4,7 @@ import { Actions } from "../model/Actions";
|
|
|
4
4
|
import { TabNode } from "../model/TabNode";
|
|
5
5
|
import { TabSetNode } from "../model/TabSetNode";
|
|
6
6
|
import { Rect } from "../Rect";
|
|
7
|
-
import { IIcons, ILayoutCallbacks } from "./Layout";
|
|
7
|
+
import { IconFactory, IIcons, ILayoutCallbacks, TitleFactory } from "./Layout";
|
|
8
8
|
import { ICloseType } from "../model/ICloseType";
|
|
9
9
|
import { CLASSES } from "../Types";
|
|
10
10
|
import { getRenderStateEx, isAuxMouseEvent } from "./Utils";
|
|
@@ -14,8 +14,8 @@ export interface ITabButtonProps {
|
|
|
14
14
|
layout: ILayoutCallbacks;
|
|
15
15
|
node: TabNode;
|
|
16
16
|
selected: boolean;
|
|
17
|
-
iconFactory?:
|
|
18
|
-
titleFactory?:
|
|
17
|
+
iconFactory?: IconFactory;
|
|
18
|
+
titleFactory?: TitleFactory;
|
|
19
19
|
icons: IIcons;
|
|
20
20
|
path: string;
|
|
21
21
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import { TabNode } from "../model/TabNode";
|
|
3
|
-
import { ILayoutCallbacks } from "./Layout";
|
|
3
|
+
import { IconFactory, ILayoutCallbacks, TitleFactory } from "./Layout";
|
|
4
4
|
import { CLASSES } from "../Types";
|
|
5
5
|
import { getRenderStateEx } from "./Utils";
|
|
6
6
|
|
|
@@ -8,8 +8,8 @@ import { getRenderStateEx } from "./Utils";
|
|
|
8
8
|
export interface ITabButtonStampProps {
|
|
9
9
|
node: TabNode;
|
|
10
10
|
layout: ILayoutCallbacks;
|
|
11
|
-
iconFactory?:
|
|
12
|
-
titleFactory?:
|
|
11
|
+
iconFactory?: IconFactory;
|
|
12
|
+
titleFactory?: TitleFactory;
|
|
13
13
|
}
|
|
14
14
|
|
|
15
15
|
/** @internal */
|
package/src/view/TabSet.tsx
CHANGED
|
@@ -4,7 +4,7 @@ import { Actions } from "../model/Actions";
|
|
|
4
4
|
import { TabNode } from "../model/TabNode";
|
|
5
5
|
import { TabSetNode } from "../model/TabSetNode";
|
|
6
6
|
import { showPopup } from "../PopupMenu";
|
|
7
|
-
import { IIcons, ILayoutCallbacks } from "./Layout";
|
|
7
|
+
import { IIcons, ILayoutCallbacks, ITitleObject } from "./Layout";
|
|
8
8
|
import { TabButton } from "./TabButton";
|
|
9
9
|
import { useTabOverflow } from "./TabOverflowHook";
|
|
10
10
|
import { Orientation } from "../Orientation";
|
|
@@ -15,8 +15,8 @@ import { hideElement, isAuxMouseEvent } from "./Utils";
|
|
|
15
15
|
export interface ITabSetProps {
|
|
16
16
|
layout: ILayoutCallbacks;
|
|
17
17
|
node: TabSetNode;
|
|
18
|
-
iconFactory?: (node: TabNode) => React.ReactNode | undefined;
|
|
19
|
-
titleFactory?: (node: TabNode) => React.ReactNode | undefined;
|
|
18
|
+
iconFactory?: (node: TabNode) => (React.ReactNode | undefined);
|
|
19
|
+
titleFactory?: (node: TabNode) => (ITitleObject | React.ReactNode | undefined);
|
|
20
20
|
icons: IIcons;
|
|
21
21
|
editingTab?: TabNode;
|
|
22
22
|
path?: string;
|
|
@@ -146,9 +146,11 @@ export const TabSet = (props: ITabSetProps) => {
|
|
|
146
146
|
titleFactory={titleFactory}
|
|
147
147
|
icons={icons}
|
|
148
148
|
/>);
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
149
|
+
if (i < node.getChildren().length-1) {
|
|
150
|
+
tabs.push(
|
|
151
|
+
<div key={"divider" + i} className={cm(CLASSES.FLEXLAYOUT__TABSET_TAB_DIVIDER)}></div>
|
|
152
|
+
);
|
|
153
|
+
}
|
|
152
154
|
}
|
|
153
155
|
}
|
|
154
156
|
|
package/src/view/Utils.tsx
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
import * as React from "react";
|
|
2
2
|
import { TabNode } from "../model/TabNode";
|
|
3
|
-
import { ILayoutCallbacks, ITitleObject } from "./Layout";
|
|
3
|
+
import { IconFactory, ILayoutCallbacks, ITitleObject, TitleFactory } from "./Layout";
|
|
4
4
|
|
|
5
5
|
/** @internal */
|
|
6
6
|
export function getRenderStateEx(
|
|
7
7
|
layout: ILayoutCallbacks,
|
|
8
8
|
node: TabNode,
|
|
9
|
-
iconFactory?:
|
|
10
|
-
titleFactory?:
|
|
9
|
+
iconFactory?: IconFactory,
|
|
10
|
+
titleFactory?: TitleFactory
|
|
11
11
|
) {
|
|
12
12
|
let leadingContent = iconFactory ? iconFactory(node) : undefined;
|
|
13
13
|
let titleContent: React.ReactNode = node.getName();
|
package/style/_base.scss
CHANGED
package/style/dark.css
CHANGED
|
@@ -8,13 +8,14 @@
|
|
|
8
8
|
--color-4: #333333;
|
|
9
9
|
--color-5: #404040;
|
|
10
10
|
--color-6: #4d4d4d;
|
|
11
|
-
--color-drag1:
|
|
12
|
-
--color-drag2:
|
|
11
|
+
--color-drag1: rgb(207, 232, 255);
|
|
12
|
+
--color-drag2: rgb(183, 209, 181);
|
|
13
13
|
--color-drag1-background: rgba(128, 128, 128, 0.15);
|
|
14
14
|
--color-drag2-background: rgba(128, 128, 128, 0.15);
|
|
15
15
|
--font-size: medium;
|
|
16
16
|
--font-family: Roboto, Arial, sans-serif;
|
|
17
17
|
--color-overflow: gray;
|
|
18
|
+
--color-icon: gray;
|
|
18
19
|
--color-tabset-background: var(--color-1);
|
|
19
20
|
--color-tabset-background-selected: var(--color-1);
|
|
20
21
|
--color-tabset-background-maximized: var(--color-6);
|
|
@@ -307,7 +308,7 @@
|
|
|
307
308
|
.flexlayout__tab_toolbar_sticky_buttons_container {
|
|
308
309
|
display: flex;
|
|
309
310
|
gap: 0.3em;
|
|
310
|
-
padding-left:
|
|
311
|
+
padding-left: 5px;
|
|
311
312
|
align-items: center;
|
|
312
313
|
}
|
|
313
314
|
.flexlayout__tab_floating {
|
package/style/dark.css.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["dark.scss","_base.scss"],"names":[],"mappings":"AAkBI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EAEA;;;
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["dark.scss","_base.scss"],"names":[],"mappings":"AAkBI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EAEA;;;ACnEJ;EARA;EACA;EACA;EACA;EACA;EAMI;;AAGJ;EACI;;AAGA;EACI;IACI;IACA;IACA;;;AAIR;EACI;;AAGJ;EACI;EACA;EDgIR;;AC7HI;EACI;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;EACI;;AAIJ;EACI;EACA;EACA;EACA;;AAGJ;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;ED5BR;;AC+BQ;EACI;;AAKJ;EAEI;EACA;EACA;EACA;;AAIJ;EACI;;AAGJ;EACI;;AAGJ;EAEI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAEJ;EACI;;AAMhB;EACI;ED/ER;;ACmFI;EACI;EDhFR;;ACqFA;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EAEA;;AAGA;EACI;EACA;;AAGJ;EACI;IACI;IACA;;;AAKR;EACI;EACA;;AAIJ;ED7HR;EACA;EACA;;AC+HQ;ED3HR;EACA;EACA;;AC6HQ;EACI;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;;AACA;EDrIZ;;AC6IQ;EACI;IACI;;;AAIR;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;ID7KhB;;;AC+LQ;EACI;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;;AAKZ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;EACI;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAEJ;EACI;EACA;EACA;;AAKZ;EACI;;AAIJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;ED3SR;EACA;;AC6SQ;EACI;EACA;;AAGJ;EACI;IACI;IACA;ID3ShB;;;ACgTQ;EACI;EACA;;AAIJ;EACI;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;;AACA;EDrVZ;;AC6VQ;EACI;IACI;;;AAIR;EACI;;AAIR;EACI;EACA;EACA;;AAEA;EAEI;EACA;EACA;;AAGJ;EAEI;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;ID9XhB;;;ACsYY;EACI;EACA;EACA;EACA;EACA;EACA;;AAchB;EACI;EACA;;AAEA;EACI;EACA;EACA;EACA;;AAGJ;EACI;IACI;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAKJ;EACI;;AAGJ;EArkBJ;EACA;EACA;EACA;EACA;;AAqkBI;EACI;EA1kBR;EACA;EACA;EACA;EACA;EAykBQ;EACA;EACA;;AAIR;EAnlBA;EACA;EACA;EACA;EACA;EAilBI;EACA;;AAEJ;EACI;EACA;;AAOJ;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA","file":"dark.css"}
|
package/style/dark.scss
CHANGED
package/style/gray.css
CHANGED
|
@@ -8,13 +8,14 @@
|
|
|
8
8
|
--color-4: #cccccc;
|
|
9
9
|
--color-5: #bfbfbf;
|
|
10
10
|
--color-6: #b3b3b3;
|
|
11
|
-
--color-drag1:
|
|
12
|
-
--color-drag2:
|
|
11
|
+
--color-drag1: rgb(95, 134, 196);
|
|
12
|
+
--color-drag2: rgb(119, 166, 119);
|
|
13
13
|
--color-drag1-background: rgba(95, 134, 196, 0.1);
|
|
14
14
|
--color-drag2-background: rgba(119, 166, 119, 0.075);
|
|
15
15
|
--font-size: medium;
|
|
16
16
|
--font-family: Roboto, Arial, sans-serif;
|
|
17
17
|
--color-overflow: gray;
|
|
18
|
+
--color-icon: gray;
|
|
18
19
|
--color-tabset-background: var(--color-1);
|
|
19
20
|
--color-tabset-background-selected: var(--color-1);
|
|
20
21
|
--color-tabset-background-maximized: var(--color-6);
|
|
@@ -299,7 +300,7 @@
|
|
|
299
300
|
.flexlayout__tab_toolbar_sticky_buttons_container {
|
|
300
301
|
display: flex;
|
|
301
302
|
gap: 0.3em;
|
|
302
|
-
padding-left:
|
|
303
|
+
padding-left: 5px;
|
|
303
304
|
align-items: center;
|
|
304
305
|
}
|
|
305
306
|
.flexlayout__tab_floating {
|
package/style/gray.css.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["gray.scss","_base.scss"],"names":[],"mappings":"AAiBI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EAEA;;;
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["gray.scss","_base.scss"],"names":[],"mappings":"AAiBI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EAEA;;;AClEJ;EARA;EACA;EACA;EACA;EACA;EAMI;;AAGJ;EACI;;AAGA;EACI;IACI;IACA;IACA;;;AAIR;EACI;;AAGJ;EACI;EACA;ED+HR;;AC5HI;EACI;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;EACI;;AAIJ;EACI;EACA;EACA;EACA;;AAGJ;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;ED1BR;;AC6BQ;EACI;;AAKJ;EAEI;EACA;EACA;EACA;;AAIJ;EACI;;AAGJ;EACI;;AAGJ;EAEI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAEJ;EACI;;AAMhB;EACI;ED7ER;;ACiFI;EACI;ED9ER;;ACmFA;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EAEA;;AAGA;EACI;EACA;;AAGJ;EACI;IACI;IACA;;;AAKR;EACI;EACA;;AAIJ;ED3HR;EACA;EACA;;AC6HQ;EDzHR;EACA;EACA;;AC2HQ;EACI;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;;AASJ;EACI;IACI;;;AAIR;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAoBJ;EACI;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;;AAKZ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;EACI;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAEJ;EACI;EACA;EACA;;AAKZ;EACI;;AAIJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;ED3SR;EACA;;AC6SQ;EACI;EACA;;AAGJ;EACI;IACI;IACA;;;AAKR;EACI;EACA;;AAIJ;EACI;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;;AASJ;EACI;IACI;;;AAIR;EACI;;AAIR;EACI;EACA;EACA;;AAEA;EAEI;EACA;EACA;;AAGJ;EAEI;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAUA;EACI;EACA;EACA;EACA;EACA;EACA;;AAchB;EACI;EACA;;AAEA;EACI;EACA;EACA;EACA;;AAGJ;EACI;IACI;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAKJ;EACI;;AAGJ;EArkBJ;EACA;EACA;EACA;EACA;;AAqkBI;EACI;EA1kBR;EACA;EACA;EACA;EACA;EAykBQ;EACA;EACA;;AAIR;EAnlBA;EACA;EACA;EACA;EACA;EAilBI;EACA;;AAEJ;EACI;EACA;;AAOJ;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA","file":"gray.css"}
|
package/style/gray.scss
CHANGED
package/style/light.css
CHANGED
|
@@ -8,13 +8,14 @@
|
|
|
8
8
|
--color-4: #e2e2e2;
|
|
9
9
|
--color-5: #dbdbdb;
|
|
10
10
|
--color-6: #d4d4d4;
|
|
11
|
-
--color-drag1:
|
|
12
|
-
--color-drag2:
|
|
11
|
+
--color-drag1: rgb(95, 134, 196);
|
|
12
|
+
--color-drag2: rgb(119, 166, 119);
|
|
13
13
|
--color-drag1-background: rgba(95, 134, 196, 0.1);
|
|
14
14
|
--color-drag2-background: rgba(119, 166, 119, 0.075);
|
|
15
15
|
--font-size: medium;
|
|
16
16
|
--font-family: Roboto, Arial, sans-serif;
|
|
17
17
|
--color-overflow: gray;
|
|
18
|
+
--color-icon: gray;
|
|
18
19
|
--color-tabset-background: var(--color-background);
|
|
19
20
|
--color-tabset-background-selected: var(--color-1);
|
|
20
21
|
--color-tabset-background-maximized: var(--color-6);
|
|
@@ -294,7 +295,7 @@
|
|
|
294
295
|
.flexlayout__tab_toolbar_sticky_buttons_container {
|
|
295
296
|
display: flex;
|
|
296
297
|
gap: 0.3em;
|
|
297
|
-
padding-left:
|
|
298
|
+
padding-left: 5px;
|
|
298
299
|
align-items: center;
|
|
299
300
|
}
|
|
300
301
|
.flexlayout__tab_floating {
|
package/style/light.css.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["light.scss","_base.scss"],"names":[],"mappings":"AAkBI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EAEA;;;
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["light.scss","_base.scss"],"names":[],"mappings":"AAkBI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EAEA;;;ACnEJ;EARA;EACA;EACA;EACA;EACA;EAMI;;AAGJ;EACI;;AAGA;EACI;IACI;IACA;IACA;;;AAIR;EACI;;AAGJ;EACI;EACA;;AAGJ;EACI;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;EACI;;AAIJ;EACI;EACA;EACA;EACA;;AAGJ;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;EACI;;AAKJ;EAEI;EACA;EACA;EACA;;AAIJ;EACI;;AAGJ;EACI;;AAGJ;EAEI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAEJ;EACI;;AAMhB;EACI;;AAIJ;EACI;;AAKR;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EAEA;;AAGA;EACI;EACA;;AAGJ;EACI;IACI;IACA;;;AAKR;EACI;EACA;EDrHZ;;ACiIQ;EACI;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;;AACA;EDrJZ;;AC6JQ;EACI;IACI;;;AAIR;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;ID7LhB;;;AC+MQ;EACI;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;;AAKZ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;EACI;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAEJ;EACI;EACA;EACA;;AAKZ;EACI;;AAIJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;EACI;EACA;;AAGJ;EACI;IACI;IACA;;;AAKR;EACI;EACA;;AAIJ;EACI;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;;AACA;EDrWZ;;AC6WQ;EACI;IACI;;;AAIR;EACI;;AAIR;EACI;EACA;EACA;;AAEA;EAEI;EACA;EACA;;AAGJ;EAEI;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;ID9YhB;;;ACsZY;EACI;EACA;EACA;EACA;EACA;EACA;;AAchB;EACI;EACA;;AAEA;EACI;EACA;EACA;EACA;;AAGJ;EACI;IACI;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAKJ;EACI;;AAGJ;EArkBJ;EACA;EACA;EACA;EACA;;AAqkBI;EACI;EA1kBR;EACA;EACA;EACA;EACA;EAykBQ;EACA;EACA;;AAIR;EAnlBA;EACA;EACA;EACA;EACA;EAilBI;EACA;;AAEJ;EACI;EACA;;AAOJ;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA","file":"light.css"}
|
package/style/light.scss
CHANGED
package/style/underline.css
CHANGED
|
@@ -8,13 +8,14 @@
|
|
|
8
8
|
--color-4: #e6e6e6;
|
|
9
9
|
--color-5: #e0e0e0;
|
|
10
10
|
--color-6: #d9d9d9;
|
|
11
|
-
--color-drag1:
|
|
12
|
-
--color-drag2:
|
|
11
|
+
--color-drag1: rgb(95, 134, 196);
|
|
12
|
+
--color-drag2: rgb(119, 166, 119);
|
|
13
13
|
--color-drag1-background: rgba(95, 134, 196, 0.1);
|
|
14
14
|
--color-drag2-background: rgba(119, 166, 119, 0.075);
|
|
15
15
|
--font-size: medium;
|
|
16
16
|
--font-family: Roboto, Arial, sans-serif;
|
|
17
17
|
--color-overflow: gray;
|
|
18
|
+
--color-icon: gray;
|
|
18
19
|
--color-tabset-background: var(--color-background);
|
|
19
20
|
--color-tabset-background-selected: var(--color-1);
|
|
20
21
|
--color-tabset-background-maximized: var(--color-6);
|
|
@@ -47,6 +48,7 @@
|
|
|
47
48
|
--color-edge-marker: gray;
|
|
48
49
|
--color-underline: rgb(65, 105, 225);
|
|
49
50
|
--color-underline-hover: #aaa;
|
|
51
|
+
--underline_height: 3px;
|
|
50
52
|
}
|
|
51
53
|
|
|
52
54
|
.flexlayout__layout {
|
|
@@ -216,23 +218,25 @@
|
|
|
216
218
|
box-sizing: border-box;
|
|
217
219
|
padding: 3px 0.5em;
|
|
218
220
|
cursor: pointer;
|
|
221
|
+
padding: 2px 0.5em calc(4px - var(--underline_height)) 0.5em;
|
|
219
222
|
}
|
|
220
223
|
.flexlayout__tab_button--selected {
|
|
221
224
|
background-color: var(--color-tab-selected-background);
|
|
222
225
|
color: var(--color-tab-selected);
|
|
223
|
-
border-bottom:
|
|
226
|
+
border-bottom: var(--underline_height) solid var(--color-underline);
|
|
224
227
|
}
|
|
225
228
|
@media (hover: hover) {
|
|
226
229
|
.flexlayout__tab_button:hover {
|
|
227
230
|
background-color: var(--color-tab-selected-background);
|
|
228
231
|
color: var(--color-tab-selected);
|
|
229
|
-
border-bottom:
|
|
232
|
+
border-bottom: var(--underline_height) solid var(--color-underline-hover);
|
|
230
233
|
}
|
|
231
234
|
}
|
|
232
235
|
.flexlayout__tab_button--unselected {
|
|
233
236
|
background-color: var(--color-tab-unselected-background);
|
|
234
237
|
color: var(--color-tab-unselected);
|
|
235
238
|
color: gray;
|
|
239
|
+
border-bottom: var(--underline_height) solid transparent;
|
|
236
240
|
}
|
|
237
241
|
.flexlayout__tab_button_leading {
|
|
238
242
|
display: flex;
|
|
@@ -301,7 +305,7 @@
|
|
|
301
305
|
.flexlayout__tab_toolbar_sticky_buttons_container {
|
|
302
306
|
display: flex;
|
|
303
307
|
gap: 0.3em;
|
|
304
|
-
padding-left:
|
|
308
|
+
padding-left: 5px;
|
|
305
309
|
align-items: center;
|
|
306
310
|
}
|
|
307
311
|
.flexlayout__tab_floating {
|
|
@@ -397,22 +401,24 @@
|
|
|
397
401
|
margin: 2px 0px;
|
|
398
402
|
box-sizing: border-box;
|
|
399
403
|
white-space: nowrap;
|
|
404
|
+
padding: 2px 0.5em calc(4px - var(--underline_height)) 0.5em;
|
|
400
405
|
}
|
|
401
406
|
.flexlayout__border_button--selected {
|
|
402
407
|
background-color: var(--color-border-tab-selected-background);
|
|
403
408
|
color: var(--color-border-tab-selected);
|
|
404
|
-
border-bottom:
|
|
409
|
+
border-bottom: var(--underline_height) solid var(--color-underline);
|
|
405
410
|
}
|
|
406
411
|
@media (hover: hover) {
|
|
407
412
|
.flexlayout__border_button:hover {
|
|
408
413
|
background-color: var(--color-border-tab-selected-background);
|
|
409
414
|
color: var(--color-border-tab-selected);
|
|
410
|
-
border-bottom:
|
|
415
|
+
border-bottom: var(--underline_height) solid var(--color-underline-hover);
|
|
411
416
|
}
|
|
412
417
|
}
|
|
413
418
|
.flexlayout__border_button--unselected {
|
|
414
419
|
background-color: var(--color-border-tab-unselected-background);
|
|
415
420
|
color: var(--color-border-tab-unselected);
|
|
421
|
+
border-bottom: var(--underline_height) solid transparent;
|
|
416
422
|
}
|
|
417
423
|
.flexlayout__border_button_leading {
|
|
418
424
|
display: flex;
|
package/style/underline.css.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sourceRoot":"","sources":["underline.scss","_base.scss"],"names":[],"mappings":"AAkBI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EAEA;EAEA;EACA;;;
|
|
1
|
+
{"version":3,"sourceRoot":"","sources":["underline.scss","_base.scss"],"names":[],"mappings":"AAkBI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EAEA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EAEA;EAEA;EACA;EACA;;;ACvEJ;EARA;EACA;EACA;EACA;EACA;EAMI;;AAGJ;EACI;;AAGA;EACI;IACI;IACA;IACA;;;AAIR;EACI;;AAGJ;EACI;EACA;;AAGJ;EACI;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EAEA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;EACI;ED6DR;EACA;EACA;;AC3DI;EACI;EACA;EACA;EACA;;AAGJ;EAEI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;EACI;;AAKJ;EAEI;EACA;EACA;EACA;;AAIJ;EACI;;AAGJ;EACI;;AAGJ;EAEI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;;AAEJ;EACI;;AAMhB;EACI;;AAIJ;EACI;;AAKR;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EAEA;EDrGR;;ACwGQ;EACI;EACA;EDtGZ;;ACyGQ;EACI;IACI;IACA;IDnGhB;;;ACwGQ;EACI;EACA;ED/GZ;EACA;;AC0HQ;EACI;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;;AACA;ED7IZ;;ACqJQ;EACI;IACI;;;AAIR;EACI;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;IDrLhB;;;ACuMQ;EACI;EACA;EACA;EACA;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;;AAKZ;EACI;EACA;EACA;EACA;EACA;EACA;EACA;;AAGA;EACI;EACA;;AAGJ;EACI;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAEA;EACI;EACA;;AAEJ;EACI;EACA;EACA;;AAKZ;EACI;EDlQR;EACA;EACA;;ACoQI;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EDhTR;;ACmTQ;EACI;EACA;EDjTZ;;ACoTQ;EACI;IACI;IACA;ID/ShB;;;ACoTQ;EACI;EACA;ED1TZ;;AC8TQ;EACI;;AAGJ;EACI;;AAGJ;EACI;EACA;EACA;;AACA;ED7VZ;;ACqWQ;EACI;IACI;;;AAIR;EACI;;AAIR;EACI;EACA;EACA;;AAEA;EAEI;EACA;EACA;;AAGJ;EAEI;EACA;;AAGJ;EACI;EACA;EACA;EACA;EACA;EACA;;AACA;EACI;IDtYhB;;;AC8YY;EACI;EACA;EACA;EACA;EACA;EACA;;AAchB;EACI;EACA;;AAEA;EACI;EACA;EACA;EACA;;AAGJ;EACI;IACI;;;AAIR;EACI;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;AAKJ;EACI;;AAGJ;EArkBJ;EACA;EACA;EACA;EACA;;AAqkBI;EACI;EA1kBR;EACA;EACA;EACA;EACA;EAykBQ;EACA;EACA;;AAIR;EAnlBA;EACA;EACA;EACA;EACA;EAilBI;EACA;;AAEJ;EACI;EACA;;AAOJ;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;;AAGJ;EACI;EACA;EACA;EACA;;;ADrcR;EACI","file":"underline.css"}
|