flexlayout-react 0.5.15 → 0.5.19

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.
Files changed (88) hide show
  1. package/ChangeLog.txt +26 -0
  2. package/README.md +121 -97
  3. package/declarations/DragDrop.d.ts +1 -0
  4. package/declarations/I18nLabel.d.ts +1 -0
  5. package/declarations/Rect.d.ts +4 -0
  6. package/declarations/Types.d.ts +9 -1
  7. package/declarations/model/Actions.d.ts +18 -11
  8. package/declarations/model/BorderNode.d.ts +2 -1
  9. package/declarations/model/IJsonModel.d.ts +10 -0
  10. package/declarations/model/Model.d.ts +1 -0
  11. package/declarations/model/TabNode.d.ts +1 -0
  12. package/declarations/model/TabSetNode.d.ts +1 -0
  13. package/declarations/view/Layout.d.ts +20 -6
  14. package/dist/flexlayout.js +20 -20
  15. package/dist/flexlayout_min.js +1 -1
  16. package/lib/DockLocation.js +25 -11
  17. package/lib/DockLocation.js.map +1 -1
  18. package/lib/DragDrop.js +19 -3
  19. package/lib/DragDrop.js.map +1 -1
  20. package/lib/I18nLabel.js +1 -0
  21. package/lib/I18nLabel.js.map +1 -1
  22. package/lib/PopupMenu.js +14 -9
  23. package/lib/PopupMenu.js.map +1 -1
  24. package/lib/Rect.js +3 -0
  25. package/lib/Rect.js.map +1 -1
  26. package/lib/Types.js +8 -0
  27. package/lib/Types.js.map +1 -1
  28. package/lib/model/Actions.js +20 -11
  29. package/lib/model/Actions.js.map +1 -1
  30. package/lib/model/BorderNode.js +61 -14
  31. package/lib/model/BorderNode.js.map +1 -1
  32. package/lib/model/BorderSet.js +33 -19
  33. package/lib/model/BorderSet.js.map +1 -1
  34. package/lib/model/Model.js +39 -1
  35. package/lib/model/Model.js.map +1 -1
  36. package/lib/model/RowNode.js +19 -5
  37. package/lib/model/RowNode.js.map +1 -1
  38. package/lib/model/TabNode.js +14 -0
  39. package/lib/model/TabNode.js.map +1 -1
  40. package/lib/model/TabSetNode.js +42 -19
  41. package/lib/model/TabSetNode.js.map +1 -1
  42. package/lib/view/BorderButton.js +14 -3
  43. package/lib/view/BorderButton.js.map +1 -1
  44. package/lib/view/BorderTabSet.js +15 -4
  45. package/lib/view/BorderTabSet.js.map +1 -1
  46. package/lib/view/Layout.js +206 -45
  47. package/lib/view/Layout.js.map +1 -1
  48. package/lib/view/Splitter.js +34 -3
  49. package/lib/view/Splitter.js.map +1 -1
  50. package/lib/view/TabButton.js +11 -2
  51. package/lib/view/TabButton.js.map +1 -1
  52. package/lib/view/TabFloating.js +23 -11
  53. package/lib/view/TabFloating.js.map +1 -1
  54. package/lib/view/TabSet.js +50 -17
  55. package/lib/view/TabSet.js.map +1 -1
  56. package/package.json +1 -1
  57. package/src/DockLocation.ts +30 -9
  58. package/src/DragDrop.ts +26 -3
  59. package/src/I18nLabel.ts +1 -0
  60. package/src/PopupMenu.tsx +28 -10
  61. package/src/Rect.ts +6 -2
  62. package/src/Types.ts +9 -0
  63. package/src/model/Actions.ts +21 -11
  64. package/src/model/BorderNode.ts +57 -15
  65. package/src/model/BorderSet.ts +32 -19
  66. package/src/model/IJsonModel.ts +10 -0
  67. package/src/model/Model.ts +43 -1
  68. package/src/model/RowNode.ts +8 -5
  69. package/src/model/TabNode.ts +16 -0
  70. package/src/model/TabSetNode.ts +43 -19
  71. package/src/view/BorderButton.tsx +22 -3
  72. package/src/view/BorderTabSet.tsx +21 -4
  73. package/src/view/Layout.tsx +263 -70
  74. package/src/view/Splitter.tsx +49 -3
  75. package/src/view/TabButton.tsx +17 -1
  76. package/src/view/TabFloating.tsx +36 -19
  77. package/src/view/TabSet.tsx +76 -16
  78. package/style/_base.scss +75 -44
  79. package/style/dark.css +90 -61
  80. package/style/dark.css.map +1 -1
  81. package/style/dark.scss +20 -20
  82. package/style/gray.css +90 -61
  83. package/style/gray.css.map +1 -1
  84. package/style/gray.scss +20 -20
  85. package/style/light.css +90 -61
  86. package/style/light.css.map +1 -1
  87. package/style/light.scss +18 -18
  88. package/yarn-error.log +0 -11828
@@ -7,6 +7,7 @@ var Actions_1 = require("../model/Actions");
7
7
  var Rect_1 = require("../Rect");
8
8
  var ICloseType_1 = require("../model/ICloseType");
9
9
  var Types_1 = require("../Types");
10
+ var TabSet_1 = require("./TabSet");
10
11
  /** @hidden @internal */
11
12
  var TabButton = function (props) {
12
13
  var layout = props.layout, node = props.node, show = props.show, selected = props.selected, iconFactory = props.iconFactory, titleFactory = props.titleFactory, icons = props.icons;
@@ -14,11 +15,19 @@ var TabButton = function (props) {
14
15
  var contentRef = React.useRef(null);
15
16
  var contentWidth = React.useRef(0);
16
17
  var onMouseDown = function (event) {
17
- if (!layout.getEditingTab()) {
18
+ if (!TabSet_1.isAuxMouseEvent(event) && !layout.getEditingTab()) {
18
19
  var message = layout.i18nName(I18nLabel_1.I18nLabel.Move_Tab, node.getName());
19
20
  layout.dragStart(event, message, node, node.isEnableDrag(), onClick, onDoubleClick);
20
21
  }
21
22
  };
23
+ var onAuxMouseClick = function (event) {
24
+ if (TabSet_1.isAuxMouseEvent(event)) {
25
+ layout.auxMouseClick(node, event);
26
+ }
27
+ };
28
+ var onContextMenu = function (event) {
29
+ layout.showContextMenu(node, event);
30
+ };
22
31
  var onClick = function () {
23
32
  layout.doAction(Actions_1.default.selectTab(node.getId()));
24
33
  };
@@ -151,7 +160,7 @@ var TabButton = function (props) {
151
160
  }
152
161
  return (React.createElement("div", { ref: selfRef, style: {
153
162
  visibility: show ? "visible" : "hidden",
154
- }, className: classNames, onMouseDown: onMouseDown, onTouchStart: onMouseDown },
163
+ }, className: classNames, onMouseDown: onMouseDown, onClick: onAuxMouseClick, onAuxClick: onAuxMouseClick, onContextMenu: onContextMenu, onTouchStart: onMouseDown, title: node.getHelpText() },
155
164
  leading,
156
165
  content,
157
166
  buttons));
@@ -1 +1 @@
1
- {"version":3,"file":"TabButton.js","sourceRoot":"","sources":["../../src/view/TabButton.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TabButton.js","sourceRoot":"","sources":["../../src/view/TabButton.tsx"],"names":[],"mappings":"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"}
@@ -9,6 +9,14 @@ var I18nLabel_1 = require("../I18nLabel");
9
9
  /** @hidden @internal */
10
10
  var TabFloating = function (props) {
11
11
  var layout = props.layout, selected = props.selected, node = props.node;
12
+ var showPopout = function () {
13
+ if (node.getWindow()) {
14
+ node.getWindow().focus();
15
+ }
16
+ };
17
+ var dockPopout = function () {
18
+ layout.doAction(Actions_1.default.unFloatTab(node.getId()));
19
+ };
12
20
  var onMouseDown = function () {
13
21
  var parent = node.getParent();
14
22
  if (parent.getType() === TabSetNode_1.default.TYPE) {
@@ -19,13 +27,11 @@ var TabFloating = function (props) {
19
27
  };
20
28
  var onClickFocus = function (event) {
21
29
  event.preventDefault();
22
- if (node.getWindow()) {
23
- node.getWindow().focus();
24
- }
30
+ showPopout();
25
31
  };
26
32
  var onClickDock = function (event) {
27
33
  event.preventDefault();
28
- layout.doAction(Actions_1.default.unFloatTab(node.getId()));
34
+ dockPopout();
29
35
  };
30
36
  var cm = layout.getClassName;
31
37
  var style = node._styleWithPosition({
@@ -34,13 +40,19 @@ var TabFloating = function (props) {
34
40
  var message = layout.i18nName(I18nLabel_1.I18nLabel.Floating_Window_Message);
35
41
  var showMessage = layout.i18nName(I18nLabel_1.I18nLabel.Floating_Window_Show_Window);
36
42
  var dockMessage = layout.i18nName(I18nLabel_1.I18nLabel.Floating_Window_Dock_Window);
37
- return (React.createElement("div", { className: cm(Types_1.CLASSES.FLEXLAYOUT__TAB_FLOATING), onMouseDown: onMouseDown, onTouchStart: onMouseDown, style: style },
38
- React.createElement("div", { className: cm(Types_1.CLASSES.FLEXLAYOUT__TAB_FLOATING_INNER) },
39
- React.createElement("div", null, message),
40
- React.createElement("div", null,
41
- React.createElement("a", { href: "#", onClick: onClickFocus }, showMessage)),
42
- React.createElement("div", null,
43
- React.createElement("a", { href: "#", onClick: onClickDock }, dockMessage)))));
43
+ var customRenderCallback = layout.getOnRenderFloatingTabPlaceholder();
44
+ if (customRenderCallback) {
45
+ return (React.createElement("div", { className: cm(Types_1.CLASSES.FLEXLAYOUT__TAB_FLOATING), onMouseDown: onMouseDown, onTouchStart: onMouseDown, style: style }, customRenderCallback(dockPopout, showPopout)));
46
+ }
47
+ else {
48
+ return (React.createElement("div", { className: cm(Types_1.CLASSES.FLEXLAYOUT__TAB_FLOATING), onMouseDown: onMouseDown, onTouchStart: onMouseDown, style: style },
49
+ React.createElement("div", { className: cm(Types_1.CLASSES.FLEXLAYOUT__TAB_FLOATING_INNER) },
50
+ React.createElement("div", null, message),
51
+ React.createElement("div", null,
52
+ React.createElement("a", { href: "#", onClick: onClickFocus }, showMessage)),
53
+ React.createElement("div", null,
54
+ React.createElement("a", { href: "#", onClick: onClickDock }, dockMessage)))));
55
+ }
44
56
  };
45
57
  exports.TabFloating = TabFloating;
46
58
  //# sourceMappingURL=TabFloating.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TabFloating.js","sourceRoot":"","sources":["../../src/view/TabFloating.tsx"],"names":[],"mappings":";;;AAAA,6BAA+B;AAC/B,4CAAuC;AAEvC,kDAA6C;AAC7C,kCAAmC;AAEnC,0CAAyC;AASzC,wBAAwB;AACjB,IAAM,WAAW,GAAG,UAAC,KAAwB;IACxC,IAAA,MAAM,GAAqB,KAAK,OAA1B,EAAE,QAAQ,GAAW,KAAK,SAAhB,EAAE,IAAI,GAAK,KAAK,KAAV,CAAW;IAEzC,IAAM,WAAW,GAAG;QAChB,IAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAgB,CAAC;QAC9C,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,oBAAU,CAAC,IAAI,EAAE;YACtC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE;gBACpB,MAAM,CAAC,QAAQ,CAAC,iBAAO,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;aAC5D;SACJ;IACL,CAAC,CAAC;IAEF,IAAM,YAAY,GAAG,UAAC,KAAsD;QACxE,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE;YAClB,IAAI,CAAC,SAAS,EAAG,CAAC,KAAK,EAAE,CAAC;SAC7B;IACL,CAAC,CAAC;IAEF,IAAM,WAAW,GAAG,UAAC,KAAsD;QACvE,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,MAAM,CAAC,QAAQ,CAAC,iBAAO,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC;IAEF,IAAM,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC;IAE/B,IAAM,KAAK,GAAwB,IAAI,CAAC,kBAAkB,CAAC;QACvD,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;KACtC,CAAC,CAAC;IAEH,IAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,qBAAS,CAAC,uBAAuB,CAAC,CAAC;IACnE,IAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,qBAAS,CAAC,2BAA2B,CAAC,CAAC;IAC3E,IAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,qBAAS,CAAC,2BAA2B,CAAC,CAAC;IAE3E,OAAO,CACH,6BAAK,SAAS,EAAE,EAAE,CAAC,eAAO,CAAC,wBAAwB,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK;QACnH,6BAAK,SAAS,EAAE,EAAE,CAAC,eAAO,CAAC,8BAA8B,CAAC;YACtD,iCAAM,OAAO,CAAO;YACpB;gBACI,2BAAG,IAAI,EAAC,GAAG,EAAC,OAAO,EAAE,YAAY,IAC5B,WAAW,CACZ,CACF;YACN;gBACI,2BAAG,IAAI,EAAC,GAAG,EAAC,OAAO,EAAE,WAAW,IAC3B,WAAW,CACZ,CACF,CACJ,CACJ,CACT,CAAC;AACN,CAAC,CAAC;AAnDW,QAAA,WAAW,eAmDtB"}
1
+ {"version":3,"file":"TabFloating.js","sourceRoot":"","sources":["../../src/view/TabFloating.tsx"],"names":[],"mappings":";;;AAAA,6BAA+B;AAC/B,4CAAuC;AAEvC,kDAA6C;AAC7C,kCAAmC;AAEnC,0CAAyC;AASzC,wBAAwB;AACjB,IAAM,WAAW,GAAG,UAAC,KAAwB;IACxC,IAAA,MAAM,GAAqB,KAAK,OAA1B,EAAE,QAAQ,GAAW,KAAK,SAAhB,EAAE,IAAI,GAAK,KAAK,KAAV,CAAW;IAEzC,IAAM,UAAU,GAAG;QACf,IAAI,IAAI,CAAC,SAAS,EAAE,EAAE;YAClB,IAAI,CAAC,SAAS,EAAG,CAAC,KAAK,EAAE,CAAC;SAC7B;IACL,CAAC,CAAA;IAED,IAAM,UAAU,GAAG;QACf,MAAM,CAAC,QAAQ,CAAC,iBAAO,CAAC,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACtD,CAAC,CAAA;IAED,IAAM,WAAW,GAAG;QAChB,IAAM,MAAM,GAAG,IAAI,CAAC,SAAS,EAAgB,CAAC;QAC9C,IAAI,MAAM,CAAC,OAAO,EAAE,KAAK,oBAAU,CAAC,IAAI,EAAE;YACtC,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,EAAE;gBACpB,MAAM,CAAC,QAAQ,CAAC,iBAAO,CAAC,eAAe,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;aAC5D;SACJ;IACL,CAAC,CAAC;IAEF,IAAM,YAAY,GAAG,UAAC,KAAsD;QACxE,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,UAAU,EAAE,CAAC;IACjB,CAAC,CAAC;IAEF,IAAM,WAAW,GAAG,UAAC,KAAsD;QACvE,KAAK,CAAC,cAAc,EAAE,CAAC;QACvB,UAAU,EAAE,CAAC;IACjB,CAAC,CAAC;IAEF,IAAM,EAAE,GAAG,MAAM,CAAC,YAAY,CAAC;IAE/B,IAAM,KAAK,GAAwB,IAAI,CAAC,kBAAkB,CAAC;QACvD,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;KACtC,CAAC,CAAC;IAEH,IAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,qBAAS,CAAC,uBAAuB,CAAC,CAAC;IACnE,IAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,qBAAS,CAAC,2BAA2B,CAAC,CAAC;IAC3E,IAAM,WAAW,GAAG,MAAM,CAAC,QAAQ,CAAC,qBAAS,CAAC,2BAA2B,CAAC,CAAC;IAE3E,IAAM,oBAAoB,GAAG,MAAM,CAAC,iCAAiC,EAAE,CAAC;IACxE,IAAI,oBAAoB,EAAE;QACtB,OAAO,CACH,6BAAK,SAAS,EAAE,EAAE,CAAC,eAAO,CAAC,wBAAwB,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK,IAClH,oBAAoB,CAAC,UAAU,EAAE,UAAU,CAAC,CAC3C,CACT,CAAC;KACL;SAAM;QACH,OAAO,CACH,6BAAK,SAAS,EAAE,EAAE,CAAC,eAAO,CAAC,wBAAwB,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,KAAK,EAAE,KAAK;YACnH,6BAAK,SAAS,EAAE,EAAE,CAAC,eAAO,CAAC,8BAA8B,CAAC;gBACtD,iCAAM,OAAO,CAAO;gBACpB;oBACI,2BAAG,IAAI,EAAC,GAAG,EAAC,OAAO,EAAE,YAAY,IAC5B,WAAW,CACZ,CACF;gBACN;oBACI,2BAAG,IAAI,EAAC,GAAG,EAAC,OAAO,EAAE,WAAW,IAC3B,WAAW,CACZ,CACF,CACJ,CACJ,CACT,CAAC;KACL;AACL,CAAC,CAAC;AApEW,QAAA,WAAW,eAoEtB"}
@@ -5,7 +5,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from) {
5
5
  return to;
6
6
  };
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.TabSet = void 0;
8
+ exports.isAuxMouseEvent = exports.TabSet = void 0;
9
9
  var React = require("react");
10
10
  var I18nLabel_1 = require("../I18nLabel");
11
11
  var Actions_1 = require("../model/Actions");
@@ -22,40 +22,57 @@ var TabSet = function (props) {
22
22
  var tabbarInnerRef = React.useRef(null);
23
23
  var stickyButtonsRef = React.useRef(null);
24
24
  var _a = TabOverflowHook_1.useTabOverflow(node, Orientation_1.default.HORZ, toolbarRef, stickyButtonsRef), selfRef = _a.selfRef, position = _a.position, userControlledLeft = _a.userControlledLeft, hiddenTabs = _a.hiddenTabs, onMouseWheel = _a.onMouseWheel, tabsTruncated = _a.tabsTruncated;
25
- var onOverflowClick = function () {
25
+ var onOverflowClick = function (event) {
26
26
  var element = overflowbuttonRef.current;
27
27
  PopupMenu_1.showPopup(layout.getRootDiv(), element, hiddenTabs, onOverflowItemSelect, layout.getClassName);
28
+ event.stopPropagation();
28
29
  };
29
30
  var onOverflowItemSelect = function (item) {
30
31
  layout.doAction(Actions_1.default.selectTab(item.node.getId()));
31
32
  userControlledLeft.current = false;
32
33
  };
33
34
  var onMouseDown = function (event) {
34
- var name = node.getName();
35
- if (name === undefined) {
36
- name = "";
37
- }
38
- else {
39
- name = ": " + name;
35
+ if (!isAuxMouseEvent(event)) {
36
+ var name_1 = node.getName();
37
+ if (name_1 === undefined) {
38
+ name_1 = "";
39
+ }
40
+ else {
41
+ name_1 = ": " + name_1;
42
+ }
43
+ layout.doAction(Actions_1.default.setActiveTabset(node.getId()));
44
+ if (!layout.getEditingTab()) {
45
+ var message = layout.i18nName(I18nLabel_1.I18nLabel.Move_Tabset, name_1);
46
+ layout.dragStart(event, message, node, node.isEnableDrag(), function (event2) { return undefined; }, onDoubleClick);
47
+ }
40
48
  }
41
- layout.doAction(Actions_1.default.setActiveTabset(node.getId()));
42
- if (!layout.getEditingTab()) {
43
- var message = layout.i18nName(I18nLabel_1.I18nLabel.Move_Tabset, name);
44
- layout.dragStart(event, message, node, node.isEnableDrag(), function (event2) { return undefined; }, onDoubleClick);
49
+ };
50
+ var onAuxMouseClick = function (event) {
51
+ if (isAuxMouseEvent(event)) {
52
+ layout.auxMouseClick(node, event);
45
53
  }
46
54
  };
55
+ var onContextMenu = function (event) {
56
+ layout.showContextMenu(node, event);
57
+ };
47
58
  var onInterceptMouseDown = function (event) {
48
59
  event.stopPropagation();
49
60
  };
50
- var onMaximizeToggle = function () {
61
+ var onMaximizeToggle = function (event) {
51
62
  if (node.canMaximize()) {
52
63
  layout.maximize(node);
53
64
  }
65
+ event.stopPropagation();
66
+ };
67
+ var onClose = function (event) {
68
+ layout.doAction(Actions_1.default.deleteTabset(node.getId()));
69
+ event.stopPropagation();
54
70
  };
55
- var onFloatTab = function () {
71
+ var onFloatTab = function (event) {
56
72
  if (selectedTabNode !== undefined) {
57
73
  layout.doAction(Actions_1.default.floatTab(selectedTabNode.getId()));
58
74
  }
75
+ event.stopPropagation();
59
76
  };
60
77
  var onDoubleClick = function (event) {
61
78
  if (node.canMaximize()) {
@@ -117,6 +134,11 @@ var TabSet = function (props) {
117
134
  var btns = showHeader ? headerButtons : buttons;
118
135
  btns.push(React.createElement("button", { key: "max", title: node.isMaximized() ? minTitle : maxTitle, className: cm(Types_1.CLASSES.FLEXLAYOUT__TAB_TOOLBAR_BUTTON) + " " + cm(Types_1.CLASSES.FLEXLAYOUT__TAB_TOOLBAR_BUTTON_ + (node.isMaximized() ? "max" : "min")), onClick: onMaximizeToggle, onMouseDown: onInterceptMouseDown, onTouchStart: onInterceptMouseDown }, node.isMaximized() ? icons === null || icons === void 0 ? void 0 : icons.restore : icons === null || icons === void 0 ? void 0 : icons.maximize));
119
136
  }
137
+ if (!node.isMaximized() && node.isEnableClose()) {
138
+ var title = layout.i18nName(I18nLabel_1.I18nLabel.Close_Tabset);
139
+ var btns = showHeader ? headerButtons : buttons;
140
+ btns.push(React.createElement("button", { key: "close", title: title, className: cm(Types_1.CLASSES.FLEXLAYOUT__TAB_TOOLBAR_BUTTON) + " " + cm(Types_1.CLASSES.FLEXLAYOUT__TAB_TOOLBAR_BUTTON_CLOSE), onClick: onClose, onMouseDown: onInterceptMouseDown, onTouchStart: onInterceptMouseDown }, icons === null || icons === void 0 ? void 0 : icons.closeTabset));
141
+ }
120
142
  toolbar = (React.createElement("div", { key: "toolbar", ref: toolbarRef, className: cm(Types_1.CLASSES.FLEXLAYOUT__TAB_TOOLBAR), onMouseDown: onInterceptMouseDown, onTouchStart: onInterceptMouseDown, onDragStart: function (e) { e.preventDefault(); } }, buttons));
121
143
  var header;
122
144
  var tabStrip;
@@ -143,7 +165,7 @@ var TabSet = function (props) {
143
165
  if (node.getClassNameHeader() !== undefined) {
144
166
  tabHeaderClasses += " " + node.getClassNameHeader();
145
167
  }
146
- header = (React.createElement("div", { className: tabHeaderClasses, style: { height: node.getHeaderHeight() + "px" }, onMouseDown: onMouseDown, onTouchStart: onMouseDown },
168
+ header = (React.createElement("div", { className: tabHeaderClasses, style: { height: node.getHeaderHeight() + "px" }, onMouseDown: onMouseDown, onContextMenu: onContextMenu, onClick: onAuxMouseClick, onAuxClick: onAuxMouseClick, onTouchStart: onMouseDown },
147
169
  React.createElement("div", { className: cm(Types_1.CLASSES.FLEXLAYOUT__TABSET_HEADER_CONTENT) }, headerContent),
148
170
  headerToolbar));
149
171
  }
@@ -155,14 +177,25 @@ var TabSet = function (props) {
155
177
  else {
156
178
  tabStripStyle["bottom"] = "0px";
157
179
  }
158
- tabStrip = (React.createElement("div", { className: tabStripClasses, style: tabStripStyle, onMouseDown: onMouseDown, onTouchStart: onMouseDown },
180
+ tabStrip = (React.createElement("div", { className: tabStripClasses, style: tabStripStyle, onMouseDown: onMouseDown, onContextMenu: onContextMenu, onClick: onAuxMouseClick, onAuxClick: onAuxMouseClick, onTouchStart: onMouseDown },
159
181
  React.createElement("div", { ref: tabbarInnerRef, className: cm(Types_1.CLASSES.FLEXLAYOUT__TABSET_TABBAR_INNER) + " " + cm(Types_1.CLASSES.FLEXLAYOUT__TABSET_TABBAR_INNER_ + node.getTabLocation()) },
160
182
  React.createElement("div", { style: { left: position }, className: cm(Types_1.CLASSES.FLEXLAYOUT__TABSET_TABBAR_INNER_TAB_CONTAINER) + " " + cm(Types_1.CLASSES.FLEXLAYOUT__TABSET_TABBAR_INNER_TAB_CONTAINER_ + node.getTabLocation()) }, tabs)),
161
183
  toolbar));
162
184
  style = layout.styleFont(style);
163
- return (React.createElement("div", { ref: selfRef, style: style, className: cm(Types_1.CLASSES.FLEXLAYOUT__TABSET), onWheel: onMouseWheel },
185
+ return (React.createElement("div", { ref: selfRef, dir: "ltr", style: style, className: cm(Types_1.CLASSES.FLEXLAYOUT__TABSET), onWheel: onMouseWheel },
164
186
  header,
165
187
  tabStrip));
166
188
  };
167
189
  exports.TabSet = TabSet;
190
+ /** @hidden @internal */
191
+ function isAuxMouseEvent(event) {
192
+ var auxEvent = false;
193
+ if (event.nativeEvent instanceof MouseEvent) {
194
+ if (event.nativeEvent.button !== 0 || event.ctrlKey || event.altKey || event.metaKey || event.shiftKey) {
195
+ auxEvent = true;
196
+ }
197
+ }
198
+ return auxEvent;
199
+ }
200
+ exports.isAuxMouseEvent = isAuxMouseEvent;
168
201
  //# sourceMappingURL=TabSet.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"TabSet.js","sourceRoot":"","sources":["../../src/view/TabSet.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TabSet.js","sourceRoot":"","sources":["../../src/view/TabSet.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "flexlayout-react",
3
- "version": "0.5.15",
3
+ "version": "0.5.19",
4
4
  "description": "A multi-tab docking layout manager",
5
5
  "main": "lib/index.js",
6
6
  "types": "./declarations/index.d.ts",
@@ -16,17 +16,38 @@ class DockLocation {
16
16
 
17
17
  /** @hidden @internal */
18
18
  static getLocation(rect: Rect, x: number, y: number) {
19
- if (x < rect.x + rect.width / 4) {
20
- return DockLocation.LEFT;
21
- } else if (x > rect.getRight() - rect.width / 4) {
22
- return DockLocation.RIGHT;
23
- } else if (y < rect.y + rect.height / 4) {
24
- return DockLocation.TOP;
25
- } else if (y > rect.getBottom() - rect.height / 4) {
26
- return DockLocation.BOTTOM;
27
- } else {
19
+ x = (x - rect.x) / rect.width;
20
+ y = (y - rect.y) / rect.height;
21
+
22
+ if (x >= 0.25 && x < 0.75 && y >= 0.25 && y < 0.75) {
28
23
  return DockLocation.CENTER;
29
24
  }
25
+
26
+ // Whether or not the point is in the bottom-left half of the rect
27
+ // +-----+
28
+ // |\ |
29
+ // |x\ |
30
+ // |xx\ |
31
+ // |xxx\ |
32
+ // |xxxx\|
33
+ // +-----+
34
+ const bl = y >= x;
35
+
36
+ // Whether or not the point is in the bottom-right half of the rect
37
+ // +-----+
38
+ // | /|
39
+ // | /x|
40
+ // | /xx|
41
+ // | /xxx|
42
+ // |/xxxx|
43
+ // +-----+
44
+ const br = y >= 1 - x;
45
+
46
+ if (bl) {
47
+ return br ? DockLocation.BOTTOM : DockLocation.LEFT;
48
+ } else {
49
+ return br ? DockLocation.RIGHT : DockLocation.TOP;
50
+ }
30
51
  }
31
52
 
32
53
  /** @hidden @internal */
package/src/DragDrop.ts CHANGED
@@ -23,6 +23,10 @@ class DragDrop {
23
23
  /** @hidden @internal */
24
24
  private _glass: HTMLDivElement | undefined;
25
25
  /** @hidden @internal */
26
+ private _defaultGlassCursor: string;
27
+ /** @hidden @internal */
28
+ private _glassCursorOverride: string | undefined;
29
+ /** @hidden @internal */
26
30
  private _manualGlassManagement: boolean = false;
27
31
  /** @hidden @internal */
28
32
  private _lastClick: number;
@@ -59,6 +63,8 @@ class DragDrop {
59
63
  this._glass.style.outline = "none";
60
64
  }
61
65
 
66
+ this._defaultGlassCursor = "default";
67
+
62
68
  this._onMouseMove = this._onMouseMove.bind(this);
63
69
  this._onMouseUp = this._onMouseUp.bind(this);
64
70
  this._onKeyPress = this._onKeyPress.bind(this);
@@ -111,9 +117,26 @@ class DragDrop {
111
117
  this._glassShowing = false;
112
118
  this._document = undefined;
113
119
  this._rootElement = undefined;
120
+ this.setGlassCursorOverride(undefined);
114
121
  }
115
122
  }
116
123
 
124
+ /** @hidden @internal */
125
+ _updateGlassCursor() {
126
+ this._glass!.style.cursor = this._glassCursorOverride ?? this._defaultGlassCursor;
127
+ }
128
+
129
+ /** @hidden @internal */
130
+ _setDefaultGlassCursor(cursor: string) {
131
+ this._defaultGlassCursor = cursor;
132
+ this._updateGlassCursor()
133
+ }
134
+
135
+ setGlassCursorOverride(cursor: string | undefined) {
136
+ this._glassCursorOverride = cursor;
137
+ this._updateGlassCursor()
138
+ }
139
+
117
140
  startDrag(
118
141
  event: Event | React.MouseEvent<HTMLDivElement, MouseEvent> | React.TouchEvent<HTMLDivElement> | React.DragEvent<Element> | undefined,
119
142
  fDragStart: ((pos: { clientX: number; clientY: number }) => boolean) | undefined,
@@ -154,14 +177,14 @@ class DragDrop {
154
177
  this._startX = posEvent.clientX;
155
178
  this._startY = posEvent.clientY;
156
179
  if (!window.matchMedia || window.matchMedia("(pointer: fine)").matches) {
157
- this._glass!.style.cursor = getComputedStyle(event.target as Element).cursor;
180
+ this._setDefaultGlassCursor(getComputedStyle(event.target as Element).cursor);
158
181
  }
159
182
  this._stopPropagation(event);
160
183
  this._preventDefault(event);
161
184
  } else {
162
185
  this._startX = 0;
163
186
  this._startY = 0;
164
- this._glass!.style.cursor = "default";
187
+ this._setDefaultGlassCursor("default");
165
188
  }
166
189
 
167
190
  this._dragging = false;
@@ -274,7 +297,7 @@ class DragDrop {
274
297
  if (!this._dragging && (Math.abs(this._startX - posEvent.clientX) > 5 || Math.abs(this._startY - posEvent.clientY) > 5)) {
275
298
  this._dragging = true;
276
299
  if (this._fDragStart) {
277
- this._glass!.style.cursor = "move";
300
+ this._setDefaultGlassCursor("move");
278
301
  this._dragging = this._fDragStart({ clientX: this._startX, clientY: this._startY });
279
302
  }
280
303
  }
package/src/I18nLabel.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  export enum I18nLabel {
2
2
  Close_Tab = "Close",
3
+ Close_Tabset = "Close tabset",
3
4
  Move_Tab = "Move: ",
4
5
  Move_Tabset = "Move tabset",
5
6
  Maximize = "Maximize tabset",
package/src/PopupMenu.tsx CHANGED
@@ -1,6 +1,8 @@
1
1
  import * as React from "react";
2
2
  import * as ReactDOM from "react-dom";
3
+ import { DragDrop } from ".";
3
4
  import TabNode from "./model/TabNode";
5
+ import { CLASSES } from "./Types";
4
6
 
5
7
  /** @hidden @internal */
6
8
  export function showPopup(
@@ -15,7 +17,7 @@ export function showPopup(
15
17
  const layoutRect = layoutDiv.getBoundingClientRect();
16
18
 
17
19
  const elm = currentDocument.createElement("div");
18
- elm.className = classNameMapper("flexlayout__popup_menu_container");
20
+ elm.className = classNameMapper(CLASSES.FLEXLAYOUT__POPUP_MENU_CONTAINER);
19
21
  if (triggerRect.left < layoutRect.left + layoutRect.width / 2) {
20
22
  elm.style.left = triggerRect.left - layoutRect.left + "px";
21
23
  } else {
@@ -27,27 +29,37 @@ export function showPopup(
27
29
  } else {
28
30
  elm.style.bottom = layoutRect.bottom - triggerRect.bottom + "px";
29
31
  }
32
+ DragDrop.instance.addGlass(() => onHide());
33
+ DragDrop.instance.setGlassCursorOverride("default");
34
+
30
35
  layoutDiv.appendChild(elm);
31
36
 
32
37
  const onHide = () => {
38
+ DragDrop.instance.hideGlass();
33
39
  layoutDiv.removeChild(elm);
34
40
  ReactDOM.unmountComponentAtNode(elm);
35
- elm.removeEventListener("mouseup", onElementMouseUp);
36
- currentDocument.removeEventListener("mouseup", onDocMouseUp);
41
+ elm.removeEventListener("mousedown", onElementMouseDown);
42
+ currentDocument.removeEventListener("mousedown", onDocMouseDown);
37
43
  };
38
44
 
39
- const onElementMouseUp = (event: Event) => {
45
+ const onElementMouseDown = (event: Event) => {
40
46
  event.stopPropagation();
41
47
  };
42
48
 
43
- const onDocMouseUp = (event: Event) => {
49
+ const onDocMouseDown = (event: Event) => {
44
50
  onHide();
45
51
  };
46
52
 
47
- elm.addEventListener("mouseup", onElementMouseUp);
48
- currentDocument.addEventListener("mouseup", onDocMouseUp);
53
+ elm.addEventListener("mousedown", onElementMouseDown);
54
+ currentDocument.addEventListener("mousedown", onDocMouseDown);
49
55
 
50
- ReactDOM.render(<PopupMenu currentDocument={currentDocument} onSelect={onSelect} onHide={onHide} items={items} classNameMapper={classNameMapper} />, elm);
56
+ ReactDOM.render(<PopupMenu
57
+ currentDocument={currentDocument}
58
+ onSelect={onSelect}
59
+ onHide={onHide}
60
+ items={items}
61
+ classNameMapper={classNameMapper}
62
+ />, elm);
51
63
  }
52
64
 
53
65
  /** @hidden @internal */
@@ -70,10 +82,16 @@ const PopupMenu = (props: IPopupMenuProps) => {
70
82
  };
71
83
 
72
84
  const itemElements = items.map((item) => (
73
- <div key={item.index} className={classNameMapper("flexlayout__popup_menu_item")} onClick={(event) => onItemClick(item, event)}>
85
+ <div key={item.index}
86
+ className={classNameMapper(CLASSES.FLEXLAYOUT__POPUP_MENU_ITEM)}
87
+ onClick={(event) => onItemClick(item, event)}
88
+ title={item.node.getHelpText()}>
74
89
  {item.node._getRenderedName()}
75
90
  </div>
76
91
  ));
77
92
 
78
- return <div className={classNameMapper("flexlayout__popup_menu")}>{itemElements}</div>;
93
+ return (
94
+ <div className={classNameMapper(CLASSES.FLEXLAYOUT__POPUP_MENU)}>
95
+ {itemElements}
96
+ </div>);
79
97
  };
package/src/Rect.ts CHANGED
@@ -18,8 +18,8 @@ class Rect {
18
18
  }
19
19
 
20
20
  static fromElement(element: Element) {
21
- let {x, y, width, height} = element.getBoundingClientRect();
22
- return new Rect(x, y, width, height);
21
+ let { x, y, width, height } = element.getBoundingClientRect();
22
+ return new Rect(x, y, width, height);
23
23
  }
24
24
 
25
25
  clone() {
@@ -42,6 +42,10 @@ class Rect {
42
42
  return this.x + this.width;
43
43
  }
44
44
 
45
+ getCenter() {
46
+ return { x: this.x + this.width / 2, y: this.y + this.height / 2 };
47
+ }
48
+
45
49
  positionElement(element: HTMLElement, position?: string) {
46
50
  this.styleWithPosition(element.style, position);
47
51
  }
package/src/Types.ts CHANGED
@@ -9,6 +9,8 @@ export enum CLASSES {
9
9
  FLEXLAYOUT__BORDER_BUTTON_TRAILING = "flexlayout__border_button_trailing",
10
10
  FLEXLAYOUT__BORDER_BUTTON__SELECTED = "flexlayout__border_button--selected",
11
11
  FLEXLAYOUT__BORDER_BUTTON__UNSELECTED = "flexlayout__border_button--unselected",
12
+ FLEXLAYOUT__BORDER_TOOLBAR_BUTTON_OVERFLOW = "flexlayout__border_toolbar_button_overflow",
13
+ FLEXLAYOUT__BORDER_TOOLBAR_BUTTON_OVERFLOW_ = "flexlayout__border_toolbar_button_overflow_",
12
14
 
13
15
  FLEXLAYOUT__BORDER_INNER = "flexlayout__border_inner",
14
16
  FLEXLAYOUT__BORDER_INNER_ = "flexlayout__border_inner_",
@@ -34,8 +36,10 @@ export enum CLASSES {
34
36
  FLEXLAYOUT__LAYOUT = "flexlayout__layout",
35
37
 
36
38
  FLEXLAYOUT__OUTLINE_RECT = "flexlayout__outline_rect",
39
+ FLEXLAYOUT__OUTLINE_RECT_EDGE = "flexlayout__outline_rect_edge",
37
40
 
38
41
  FLEXLAYOUT__SPLITTER = "flexlayout__splitter",
42
+ FLEXLAYOUT__SPLITTER_EXTRA = "flexlayout__splitter_extra",
39
43
  FLEXLAYOUT__SPLITTER_ = "flexlayout__splitter_",
40
44
  FLEXLAYOUT__SPLITTER_BORDER = "flexlayout__splitter_border",
41
45
  FLEXLAYOUT__SPLITTER_DRAG = "flexlayout__splitter_drag",
@@ -75,4 +79,9 @@ export enum CLASSES {
75
79
  FLEXLAYOUT__TAB_TOOLBAR_BUTTON_ = "flexlayout__tab_toolbar_button-",
76
80
  FLEXLAYOUT__TAB_TOOLBAR_BUTTON_FLOAT = "flexlayout__tab_toolbar_button-float",
77
81
  FLEXLAYOUT__TAB_TOOLBAR_STICKY_BUTTONS_CONTAINER = "flexlayout__tab_toolbar_sticky_buttons_container",
82
+ FLEXLAYOUT__TAB_TOOLBAR_BUTTON_CLOSE = "flexlayout__tab_toolbar_button-close",
83
+
84
+ FLEXLAYOUT__POPUP_MENU_CONTAINER = "flexlayout__popup_menu_container",
85
+ FLEXLAYOUT__POPUP_MENU_ITEM = "flexlayout__popup_menu_item",
86
+ FLEXLAYOUT__POPUP_MENU = "flexlayout__popup_menu",
78
87
  }