dockview-core 4.4.0 → 4.4.1

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 (47) hide show
  1. package/dist/cjs/dockview/components/tab/tab.d.ts +1 -0
  2. package/dist/cjs/dockview/components/tab/tab.js +4 -1
  3. package/dist/cjs/dockview/components/titlebar/tabs.d.ts +1 -0
  4. package/dist/cjs/dockview/components/titlebar/tabs.js +16 -0
  5. package/dist/cjs/dockview/components/titlebar/tabsContainer.d.ts +2 -0
  6. package/dist/cjs/dockview/components/titlebar/tabsContainer.js +4 -0
  7. package/dist/cjs/dockview/components/titlebar/voidContainer.d.ts +1 -0
  8. package/dist/cjs/dockview/components/titlebar/voidContainer.js +4 -1
  9. package/dist/cjs/dockview/dockviewComponent.d.ts +1 -0
  10. package/dist/cjs/dockview/dockviewComponent.js +53 -31
  11. package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts +10 -8
  12. package/dist/cjs/dockview/dockviewGroupPanelModel.js +3 -0
  13. package/dist/dockview-core.amd.js +32 -3
  14. package/dist/dockview-core.amd.js.map +1 -1
  15. package/dist/dockview-core.amd.min.js +2 -2
  16. package/dist/dockview-core.amd.min.js.map +1 -1
  17. package/dist/dockview-core.amd.min.noStyle.js +2 -2
  18. package/dist/dockview-core.amd.min.noStyle.js.map +1 -1
  19. package/dist/dockview-core.amd.noStyle.js +32 -3
  20. package/dist/dockview-core.amd.noStyle.js.map +1 -1
  21. package/dist/dockview-core.cjs.js +32 -3
  22. package/dist/dockview-core.cjs.js.map +1 -1
  23. package/dist/dockview-core.esm.js +32 -3
  24. package/dist/dockview-core.esm.js.map +1 -1
  25. package/dist/dockview-core.esm.min.js +2 -2
  26. package/dist/dockview-core.esm.min.js.map +1 -1
  27. package/dist/dockview-core.js +32 -3
  28. package/dist/dockview-core.js.map +1 -1
  29. package/dist/dockview-core.min.js +2 -2
  30. package/dist/dockview-core.min.js.map +1 -1
  31. package/dist/dockview-core.min.noStyle.js +2 -2
  32. package/dist/dockview-core.min.noStyle.js.map +1 -1
  33. package/dist/dockview-core.noStyle.js +32 -3
  34. package/dist/dockview-core.noStyle.js.map +1 -1
  35. package/dist/esm/dockview/components/tab/tab.d.ts +1 -0
  36. package/dist/esm/dockview/components/tab/tab.js +4 -1
  37. package/dist/esm/dockview/components/titlebar/tabs.d.ts +1 -0
  38. package/dist/esm/dockview/components/titlebar/tabs.js +5 -0
  39. package/dist/esm/dockview/components/titlebar/tabsContainer.d.ts +2 -0
  40. package/dist/esm/dockview/components/titlebar/tabsContainer.js +4 -0
  41. package/dist/esm/dockview/components/titlebar/voidContainer.d.ts +1 -0
  42. package/dist/esm/dockview/components/titlebar/voidContainer.js +4 -1
  43. package/dist/esm/dockview/dockviewComponent.d.ts +1 -0
  44. package/dist/esm/dockview/dockviewComponent.js +11 -0
  45. package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +10 -8
  46. package/dist/esm/dockview/dockviewGroupPanelModel.js +3 -0
  47. package/package.json +1 -1
@@ -23,5 +23,6 @@ export declare class Tab extends CompositeDisposable {
23
23
  constructor(panel: IDockviewPanel, accessor: DockviewComponent, group: DockviewGroupPanel);
24
24
  setActive(isActive: boolean): void;
25
25
  setContent(part: ITabRenderer): void;
26
+ updateDragAndDropState(): void;
26
27
  dispose(): void;
27
28
  }
@@ -61,7 +61,7 @@ var Tab = /** @class */ (function (_super) {
61
61
  _this._element = document.createElement('div');
62
62
  _this._element.className = 'dv-tab';
63
63
  _this._element.tabIndex = 0;
64
- _this._element.draggable = true;
64
+ _this._element.draggable = !_this.accessor.options.disableDnd;
65
65
  (0, dom_1.toggleClass)(_this.element, 'dv-inactive-tab', true);
66
66
  var dragHandler = new TabDragHandler(_this._element, _this.accessor, _this.group, _this.panel);
67
67
  _this.dropTarget = new droptarget_1.Droptarget(_this._element, {
@@ -119,6 +119,9 @@ var Tab = /** @class */ (function (_super) {
119
119
  this.content = part;
120
120
  this._element.appendChild(this.content.element);
121
121
  };
122
+ Tab.prototype.updateDragAndDropState = function () {
123
+ this._element.draggable = !this.accessor.options.disableDnd;
124
+ };
122
125
  Tab.prototype.dispose = function () {
123
126
  _super.prototype.dispose.call(this);
124
127
  };
@@ -42,4 +42,5 @@ export declare class Tabs extends CompositeDisposable {
42
42
  delete(id: string): void;
43
43
  private addTab;
44
44
  private toggleDropdown;
45
+ updateDragAndDropState(): void;
45
46
  }
@@ -289,6 +289,22 @@ var Tabs = /** @class */ (function (_super) {
289
289
  .map(function (x) { return x.value.panel.id; });
290
290
  this._onOverflowTabsChange.fire({ tabs: tabs, reset: options.reset });
291
291
  };
292
+ Tabs.prototype.updateDragAndDropState = function () {
293
+ var e_3, _a;
294
+ try {
295
+ for (var _b = __values(this._tabs), _c = _b.next(); !_c.done; _c = _b.next()) {
296
+ var tab = _c.value;
297
+ tab.value.updateDragAndDropState();
298
+ }
299
+ }
300
+ catch (e_3_1) { e_3 = { error: e_3_1 }; }
301
+ finally {
302
+ try {
303
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
304
+ }
305
+ finally { if (e_3) throw e_3.error; }
306
+ }
307
+ };
292
308
  return Tabs;
293
309
  }(lifecycle_1.CompositeDisposable));
294
310
  exports.Tabs = Tabs;
@@ -38,6 +38,7 @@ export interface ITabsContainer extends IDisposable {
38
38
  setPrefixActionsElement(element: HTMLElement | undefined): void;
39
39
  show(): void;
40
40
  hide(): void;
41
+ updateDragAndDropState(): void;
41
42
  }
42
43
  export declare class TabsContainer extends CompositeDisposable implements ITabsContainer {
43
44
  private readonly accessor;
@@ -82,4 +83,5 @@ export declare class TabsContainer extends CompositeDisposable implements ITabsC
82
83
  closePanel(panel: IDockviewPanel): void;
83
84
  private updateClassnames;
84
85
  private toggleDropdown;
86
+ updateDragAndDropState(): void;
85
87
  }
@@ -297,6 +297,10 @@ var TabsContainer = /** @class */ (function (_super) {
297
297
  });
298
298
  }));
299
299
  };
300
+ TabsContainer.prototype.updateDragAndDropState = function () {
301
+ this.tabs.updateDragAndDropState();
302
+ this.voidContainer.updateDragAndDropState();
303
+ };
300
304
  return TabsContainer;
301
305
  }(lifecycle_1.CompositeDisposable));
302
306
  exports.TabsContainer = TabsContainer;
@@ -15,4 +15,5 @@ export declare class VoidContainer extends CompositeDisposable {
15
15
  readonly onWillShowOverlay: Event<WillShowOverlayEvent>;
16
16
  get element(): HTMLElement;
17
17
  constructor(accessor: DockviewComponent, group: DockviewGroupPanel);
18
+ updateDragAndDropState(): void;
18
19
  }
@@ -33,7 +33,7 @@ var VoidContainer = /** @class */ (function (_super) {
33
33
  _this.onDragStart = _this._onDragStart.event;
34
34
  _this._element = document.createElement('div');
35
35
  _this._element.className = 'dv-void-container';
36
- _this._element.draggable = true;
36
+ _this._element.draggable = !_this.accessor.options.disableDnd;
37
37
  _this.addDisposables(_this._onDrop, _this._onDragStart, (0, events_1.addDisposableListener)(_this._element, 'pointerdown', function () {
38
38
  _this.accessor.doSetGroupActive(_this.group);
39
39
  }));
@@ -64,6 +64,9 @@ var VoidContainer = /** @class */ (function (_super) {
64
64
  enumerable: false,
65
65
  configurable: true
66
66
  });
67
+ VoidContainer.prototype.updateDragAndDropState = function () {
68
+ this._element.draggable = !this.accessor.options.disableDnd;
69
+ };
67
70
  return VoidContainer;
68
71
  }(lifecycle_1.CompositeDisposable));
69
72
  exports.VoidContainer = VoidContainer;
@@ -239,6 +239,7 @@ export declare class DockviewComponent extends BaseGrid<DockviewGroupPanel> impl
239
239
  private orthogonalize;
240
240
  updateOptions(options: Partial<DockviewComponentOptions>): void;
241
241
  layout(width: number, height: number, forceResize?: boolean | undefined): void;
242
+ private updateDragAndDropState;
242
243
  focus(): void;
243
244
  getGroupPanel(id: string): IDockviewPanel | undefined;
244
245
  setActivePanel(panel: IDockviewPanel): void;
@@ -875,7 +875,12 @@ var DockviewComponent = /** @class */ (function (_super) {
875
875
  }
876
876
  }
877
877
  this.updateDropTargetModel(options);
878
+ var oldDisableDnd = this.options.disableDnd;
878
879
  this._options = __assign(__assign({}, this.options), options);
880
+ var newDisableDnd = this.options.disableDnd;
881
+ if (oldDisableDnd !== newDisableDnd) {
882
+ this.updateDragAndDropState();
883
+ }
879
884
  if ('theme' in options) {
880
885
  this.updateTheme();
881
886
  }
@@ -901,6 +906,23 @@ var DockviewComponent = /** @class */ (function (_super) {
901
906
  }
902
907
  }
903
908
  };
909
+ DockviewComponent.prototype.updateDragAndDropState = function () {
910
+ var e_5, _a;
911
+ try {
912
+ // Update draggable state for all tabs and void containers
913
+ for (var _b = __values(this.groups), _c = _b.next(); !_c.done; _c = _b.next()) {
914
+ var group = _c.value;
915
+ group.model.updateDragAndDropState();
916
+ }
917
+ }
918
+ catch (e_5_1) { e_5 = { error: e_5_1 }; }
919
+ finally {
920
+ try {
921
+ if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
922
+ }
923
+ finally { if (e_5) throw e_5.error; }
924
+ }
925
+ };
904
926
  DockviewComponent.prototype.focus = function () {
905
927
  var _a;
906
928
  (_a = this.activeGroup) === null || _a === void 0 ? void 0 : _a.focus();
@@ -995,7 +1017,7 @@ var DockviewComponent = /** @class */ (function (_super) {
995
1017
  return result;
996
1018
  };
997
1019
  DockviewComponent.prototype.fromJSON = function (data) {
998
- var e_5, _a, e_6, _b, e_7, _c, e_8, _d, e_9, _e, e_10, _f, e_11, _g;
1020
+ var e_6, _a, e_7, _b, e_8, _c, e_9, _d, e_10, _e, e_11, _f, e_12, _g;
999
1021
  var _this = this;
1000
1022
  var _h, _j;
1001
1023
  this.clear();
@@ -1011,7 +1033,7 @@ var DockviewComponent = /** @class */ (function (_super) {
1011
1033
  var width = this.width;
1012
1034
  var height = this.height;
1013
1035
  var createGroupFromSerializedState_1 = function (data) {
1014
- var e_12, _a;
1036
+ var e_13, _a;
1015
1037
  var id = data.id, locked = data.locked, hideHeader = data.hideHeader, views = data.views, activeView = data.activeView;
1016
1038
  if (typeof id !== 'string') {
1017
1039
  throw new Error('group id must be of type string');
@@ -1035,12 +1057,12 @@ var DockviewComponent = /** @class */ (function (_super) {
1035
1057
  createdPanels.push(panel);
1036
1058
  }
1037
1059
  }
1038
- catch (e_12_1) { e_12 = { error: e_12_1 }; }
1060
+ catch (e_13_1) { e_13 = { error: e_13_1 }; }
1039
1061
  finally {
1040
1062
  try {
1041
1063
  if (views_1_1 && !views_1_1.done && (_a = views_1.return)) _a.call(views_1);
1042
1064
  }
1043
- finally { if (e_12) throw e_12.error; }
1065
+ finally { if (e_13) throw e_13.error; }
1044
1066
  }
1045
1067
  for (var i = 0; i < views.length; i++) {
1046
1068
  var panel = createdPanels[i];
@@ -1079,12 +1101,12 @@ var DockviewComponent = /** @class */ (function (_super) {
1079
1101
  });
1080
1102
  }
1081
1103
  }
1082
- catch (e_5_1) { e_5 = { error: e_5_1 }; }
1104
+ catch (e_6_1) { e_6 = { error: e_6_1 }; }
1083
1105
  finally {
1084
1106
  try {
1085
1107
  if (serializedFloatingGroups_1_1 && !serializedFloatingGroups_1_1.done && (_a = serializedFloatingGroups_1.return)) _a.call(serializedFloatingGroups_1);
1086
1108
  }
1087
- finally { if (e_5) throw e_5.error; }
1109
+ finally { if (e_6) throw e_6.error; }
1088
1110
  }
1089
1111
  var serializedPopoutGroups = (_j = data.popoutGroups) !== null && _j !== void 0 ? _j : [];
1090
1112
  try {
@@ -1102,12 +1124,12 @@ var DockviewComponent = /** @class */ (function (_super) {
1102
1124
  });
1103
1125
  }
1104
1126
  }
1105
- catch (e_6_1) { e_6 = { error: e_6_1 }; }
1127
+ catch (e_7_1) { e_7 = { error: e_7_1 }; }
1106
1128
  finally {
1107
1129
  try {
1108
1130
  if (serializedPopoutGroups_1_1 && !serializedPopoutGroups_1_1.done && (_b = serializedPopoutGroups_1.return)) _b.call(serializedPopoutGroups_1);
1109
1131
  }
1110
- finally { if (e_6) throw e_6.error; }
1132
+ finally { if (e_7) throw e_7.error; }
1111
1133
  }
1112
1134
  try {
1113
1135
  for (var _k = __values(this._floatingGroups), _l = _k.next(); !_l.done; _l = _k.next()) {
@@ -1115,12 +1137,12 @@ var DockviewComponent = /** @class */ (function (_super) {
1115
1137
  floatingGroup.overlay.setBounds();
1116
1138
  }
1117
1139
  }
1118
- catch (e_7_1) { e_7 = { error: e_7_1 }; }
1140
+ catch (e_8_1) { e_8 = { error: e_8_1 }; }
1119
1141
  finally {
1120
1142
  try {
1121
1143
  if (_l && !_l.done && (_c = _k.return)) _c.call(_k);
1122
1144
  }
1123
- finally { if (e_7) throw e_7.error; }
1145
+ finally { if (e_8) throw e_8.error; }
1124
1146
  }
1125
1147
  if (typeof activeGroup === 'string') {
1126
1148
  var panel = this.getPanel(activeGroup);
@@ -1138,7 +1160,7 @@ var DockviewComponent = /** @class */ (function (_super) {
1138
1160
  for (var _m = __values(this.groups), _o = _m.next(); !_o.done; _o = _m.next()) {
1139
1161
  var group = _o.value;
1140
1162
  try {
1141
- for (var _p = (e_9 = void 0, __values(group.panels)), _q = _p.next(); !_q.done; _q = _p.next()) {
1163
+ for (var _p = (e_10 = void 0, __values(group.panels)), _q = _p.next(); !_q.done; _q = _p.next()) {
1142
1164
  var panel = _q.value;
1143
1165
  this.removePanel(panel, {
1144
1166
  removeEmptyGroup: false,
@@ -1146,21 +1168,21 @@ var DockviewComponent = /** @class */ (function (_super) {
1146
1168
  });
1147
1169
  }
1148
1170
  }
1149
- catch (e_9_1) { e_9 = { error: e_9_1 }; }
1171
+ catch (e_10_1) { e_10 = { error: e_10_1 }; }
1150
1172
  finally {
1151
1173
  try {
1152
1174
  if (_q && !_q.done && (_e = _p.return)) _e.call(_p);
1153
1175
  }
1154
- finally { if (e_9) throw e_9.error; }
1176
+ finally { if (e_10) throw e_10.error; }
1155
1177
  }
1156
1178
  }
1157
1179
  }
1158
- catch (e_8_1) { e_8 = { error: e_8_1 }; }
1180
+ catch (e_9_1) { e_9 = { error: e_9_1 }; }
1159
1181
  finally {
1160
1182
  try {
1161
1183
  if (_o && !_o.done && (_d = _m.return)) _d.call(_m);
1162
1184
  }
1163
- finally { if (e_8) throw e_8.error; }
1185
+ finally { if (e_9) throw e_9.error; }
1164
1186
  }
1165
1187
  try {
1166
1188
  /**
@@ -1174,12 +1196,12 @@ var DockviewComponent = /** @class */ (function (_super) {
1174
1196
  this._onDidRemoveGroup.fire(group);
1175
1197
  }
1176
1198
  }
1177
- catch (e_10_1) { e_10 = { error: e_10_1 }; }
1199
+ catch (e_11_1) { e_11 = { error: e_11_1 }; }
1178
1200
  finally {
1179
1201
  try {
1180
1202
  if (_s && !_s.done && (_f = _r.return)) _f.call(_r);
1181
1203
  }
1182
- finally { if (e_10) throw e_10.error; }
1204
+ finally { if (e_11) throw e_11.error; }
1183
1205
  }
1184
1206
  try {
1185
1207
  // iterate over a reassigned array since original array will be modified
@@ -1188,12 +1210,12 @@ var DockviewComponent = /** @class */ (function (_super) {
1188
1210
  floatingGroup.dispose();
1189
1211
  }
1190
1212
  }
1191
- catch (e_11_1) { e_11 = { error: e_11_1 }; }
1213
+ catch (e_12_1) { e_12 = { error: e_12_1 }; }
1192
1214
  finally {
1193
1215
  try {
1194
1216
  if (_u && !_u.done && (_g = _t.return)) _g.call(_t);
1195
1217
  }
1196
- finally { if (e_11) throw e_11.error; }
1218
+ finally { if (e_12) throw e_12.error; }
1197
1219
  }
1198
1220
  // fires clean-up events and clears the underlying HTML gridview.
1199
1221
  this.clear();
@@ -1208,7 +1230,7 @@ var DockviewComponent = /** @class */ (function (_super) {
1208
1230
  this._onDidLayoutFromJSON.fire();
1209
1231
  };
1210
1232
  DockviewComponent.prototype.clear = function () {
1211
- var e_13, _a;
1233
+ var e_14, _a;
1212
1234
  var groups = Array.from(this._groups.values()).map(function (_) { return _.value; });
1213
1235
  var hasActiveGroup = !!this.activeGroup;
1214
1236
  try {
@@ -1218,12 +1240,12 @@ var DockviewComponent = /** @class */ (function (_super) {
1218
1240
  this.removeGroup(group, { skipActive: true });
1219
1241
  }
1220
1242
  }
1221
- catch (e_13_1) { e_13 = { error: e_13_1 }; }
1243
+ catch (e_14_1) { e_14 = { error: e_14_1 }; }
1222
1244
  finally {
1223
1245
  try {
1224
1246
  if (groups_1_1 && !groups_1_1.done && (_a = groups_1.return)) _a.call(groups_1);
1225
1247
  }
1226
- finally { if (e_13) throw e_13.error; }
1248
+ finally { if (e_14) throw e_14.error; }
1227
1249
  }
1228
1250
  if (hasActiveGroup) {
1229
1251
  this.doSetGroupAndPanelActive(undefined);
@@ -1231,7 +1253,7 @@ var DockviewComponent = /** @class */ (function (_super) {
1231
1253
  this.gridview.clear();
1232
1254
  };
1233
1255
  DockviewComponent.prototype.closeAllGroups = function () {
1234
- var e_14, _a;
1256
+ var e_15, _a;
1235
1257
  try {
1236
1258
  for (var _b = __values(this._groups.entries()), _c = _b.next(); !_c.done; _c = _b.next()) {
1237
1259
  var entry = _c.value;
@@ -1239,12 +1261,12 @@ var DockviewComponent = /** @class */ (function (_super) {
1239
1261
  group.value.model.closeAllPanels();
1240
1262
  }
1241
1263
  }
1242
- catch (e_14_1) { e_14 = { error: e_14_1 }; }
1264
+ catch (e_15_1) { e_15 = { error: e_15_1 }; }
1243
1265
  finally {
1244
1266
  try {
1245
1267
  if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
1246
1268
  }
1247
- finally { if (e_14) throw e_14.error; }
1269
+ finally { if (e_15) throw e_15.error; }
1248
1270
  }
1249
1271
  };
1250
1272
  DockviewComponent.prototype.addPanel = function (options) {
@@ -1495,7 +1517,7 @@ var DockviewComponent = /** @class */ (function (_super) {
1495
1517
  this.doRemoveGroup(group, options);
1496
1518
  };
1497
1519
  DockviewComponent.prototype.doRemoveGroup = function (group, options) {
1498
- var e_15, _a;
1520
+ var e_16, _a;
1499
1521
  var _b;
1500
1522
  var panels = __spreadArray([], __read(group.panels), false); // reassign since group panels will mutate
1501
1523
  if (!(options === null || options === void 0 ? void 0 : options.skipDispose)) {
@@ -1508,12 +1530,12 @@ var DockviewComponent = /** @class */ (function (_super) {
1508
1530
  });
1509
1531
  }
1510
1532
  }
1511
- catch (e_15_1) { e_15 = { error: e_15_1 }; }
1533
+ catch (e_16_1) { e_16 = { error: e_16_1 }; }
1512
1534
  finally {
1513
1535
  try {
1514
1536
  if (panels_1_1 && !panels_1_1.done && (_a = panels_1.return)) _a.call(panels_1);
1515
1537
  }
1516
- finally { if (e_15) throw e_15.error; }
1538
+ finally { if (e_16) throw e_16.error; }
1517
1539
  }
1518
1540
  }
1519
1541
  var activePanel = this.activePanel;
@@ -1759,7 +1781,7 @@ var DockviewComponent = /** @class */ (function (_super) {
1759
1781
  this.doRemoveGroup(from, { skipActive: true });
1760
1782
  }
1761
1783
  this.movingLock(function () {
1762
- var e_16, _a;
1784
+ var e_17, _a;
1763
1785
  try {
1764
1786
  for (var panels_3 = __values(panels_2), panels_3_1 = panels_3.next(); !panels_3_1.done; panels_3_1 = panels_3.next()) {
1765
1787
  var panel = panels_3_1.value;
@@ -1769,12 +1791,12 @@ var DockviewComponent = /** @class */ (function (_super) {
1769
1791
  });
1770
1792
  }
1771
1793
  }
1772
- catch (e_16_1) { e_16 = { error: e_16_1 }; }
1794
+ catch (e_17_1) { e_17 = { error: e_17_1 }; }
1773
1795
  finally {
1774
1796
  try {
1775
1797
  if (panels_3_1 && !panels_3_1.done && (_a = panels_3.return)) _a.call(panels_3);
1776
1798
  }
1777
- finally { if (e_16) throw e_16.error; }
1799
+ finally { if (e_17) throw e_17.error; }
1778
1800
  }
1779
1801
  });
1780
1802
  this.doSetGroupAndPanelActive(to);
@@ -123,9 +123,16 @@ export type DockviewGroupLocation = {
123
123
  getWindow: () => Window;
124
124
  popoutUrl?: string;
125
125
  };
126
+ export interface WillShowOverlayLocationEventOptions {
127
+ readonly kind: DockviewGroupDropLocation;
128
+ readonly panel: IDockviewPanel | undefined;
129
+ readonly api: DockviewApi;
130
+ readonly group: DockviewGroupPanel | undefined;
131
+ getData: () => PanelTransfer | undefined;
132
+ }
126
133
  export declare class WillShowOverlayLocationEvent implements IDockviewEvent {
127
134
  private readonly event;
128
- private readonly options;
135
+ readonly options: WillShowOverlayLocationEventOptions;
129
136
  get kind(): DockviewGroupDropLocation;
130
137
  get nativeEvent(): DragEvent;
131
138
  get position(): Position;
@@ -135,13 +142,7 @@ export declare class WillShowOverlayLocationEvent implements IDockviewEvent {
135
142
  get group(): DockviewGroupPanel | undefined;
136
143
  preventDefault(): void;
137
144
  getData(): PanelTransfer | undefined;
138
- constructor(event: WillShowOverlayEvent, options: {
139
- kind: DockviewGroupDropLocation;
140
- panel: IDockviewPanel | undefined;
141
- api: DockviewApi;
142
- group: DockviewGroupPanel | undefined;
143
- getData: () => PanelTransfer | undefined;
144
- });
145
+ constructor(event: WillShowOverlayEvent, options: WillShowOverlayLocationEventOptions);
145
146
  }
146
147
  export declare class DockviewGroupPanelModel extends CompositeDisposable implements IDockviewGroupPanelModel {
147
148
  private readonly container;
@@ -252,6 +253,7 @@ export declare class DockviewGroupPanelModel extends CompositeDisposable impleme
252
253
  private updateContainer;
253
254
  canDisplayOverlay(event: DragEvent, position: Position, target: DockviewGroupDropLocation): boolean;
254
255
  private handleDropEvent;
256
+ updateDragAndDropState(): void;
255
257
  dispose(): void;
256
258
  }
257
259
  export {};
@@ -842,6 +842,9 @@ var DockviewGroupPanelModel = /** @class */ (function (_super) {
842
842
  }));
843
843
  }
844
844
  };
845
+ DockviewGroupPanelModel.prototype.updateDragAndDropState = function () {
846
+ this.tabsContainer.updateDragAndDropState();
847
+ };
845
848
  DockviewGroupPanelModel.prototype.dispose = function () {
846
849
  var e_2, _a;
847
850
  var _b, _c, _d;
@@ -1,6 +1,6 @@
1
1
  /**
2
2
  * dockview-core
3
- * @version 4.4.0
3
+ * @version 4.4.1
4
4
  * @link https://github.com/mathuo/dockview
5
5
  * @license MIT
6
6
  */
@@ -5023,7 +5023,7 @@ define(['exports'], (function (exports) { 'use strict';
5023
5023
  this._element = document.createElement('div');
5024
5024
  this._element.className = 'dv-tab';
5025
5025
  this._element.tabIndex = 0;
5026
- this._element.draggable = true;
5026
+ this._element.draggable = !this.accessor.options.disableDnd;
5027
5027
  toggleClass(this.element, 'dv-inactive-tab', true);
5028
5028
  const dragHandler = new TabDragHandler(this._element, this.accessor, this.group, this.panel);
5029
5029
  this.dropTarget = new Droptarget(this._element, {
@@ -5071,6 +5071,9 @@ define(['exports'], (function (exports) { 'use strict';
5071
5071
  this.content = part;
5072
5072
  this._element.appendChild(this.content.element);
5073
5073
  }
5074
+ updateDragAndDropState() {
5075
+ this._element.draggable = !this.accessor.options.disableDnd;
5076
+ }
5074
5077
  dispose() {
5075
5078
  super.dispose();
5076
5079
  }
@@ -5142,7 +5145,7 @@ define(['exports'], (function (exports) { 'use strict';
5142
5145
  this.onDragStart = this._onDragStart.event;
5143
5146
  this._element = document.createElement('div');
5144
5147
  this._element.className = 'dv-void-container';
5145
- this._element.draggable = true;
5148
+ this._element.draggable = !this.accessor.options.disableDnd;
5146
5149
  this.addDisposables(this._onDrop, this._onDragStart, addDisposableListener(this._element, 'pointerdown', () => {
5147
5150
  this.accessor.doSetGroupActive(this.group);
5148
5151
  }));
@@ -5165,6 +5168,9 @@ define(['exports'], (function (exports) { 'use strict';
5165
5168
  this._onDrop.fire(event);
5166
5169
  }), this.dropTarget);
5167
5170
  }
5171
+ updateDragAndDropState() {
5172
+ this._element.draggable = !this.accessor.options.disableDnd;
5173
+ }
5168
5174
  }
5169
5175
 
5170
5176
  class Scrollbar extends CompositeDisposable {
@@ -5425,6 +5431,11 @@ define(['exports'], (function (exports) { 'use strict';
5425
5431
  .map((x) => x.value.panel.id);
5426
5432
  this._onOverflowTabsChange.fire({ tabs, reset: options.reset });
5427
5433
  }
5434
+ updateDragAndDropState() {
5435
+ for (const tab of this._tabs) {
5436
+ tab.value.updateDragAndDropState();
5437
+ }
5438
+ }
5428
5439
  }
5429
5440
 
5430
5441
  const createSvgElementFromPath = (params) => {
@@ -5697,6 +5708,10 @@ define(['exports'], (function (exports) { 'use strict';
5697
5708
  });
5698
5709
  }));
5699
5710
  }
5711
+ updateDragAndDropState() {
5712
+ this.tabs.updateDragAndDropState();
5713
+ this.voidContainer.updateDragAndDropState();
5714
+ }
5700
5715
  }
5701
5716
 
5702
5717
  class DockviewUnhandledDragOverEvent extends AcceptableEvent {
@@ -6402,6 +6417,9 @@ define(['exports'], (function (exports) { 'use strict';
6402
6417
  }));
6403
6418
  }
6404
6419
  }
6420
+ updateDragAndDropState() {
6421
+ this.tabsContainer.updateDragAndDropState();
6422
+ }
6405
6423
  dispose() {
6406
6424
  var _a, _b, _c;
6407
6425
  super.dispose();
@@ -8874,7 +8892,12 @@ define(['exports'], (function (exports) { 'use strict';
8874
8892
  }
8875
8893
  }
8876
8894
  this.updateDropTargetModel(options);
8895
+ const oldDisableDnd = this.options.disableDnd;
8877
8896
  this._options = Object.assign(Object.assign({}, this.options), options);
8897
+ const newDisableDnd = this.options.disableDnd;
8898
+ if (oldDisableDnd !== newDisableDnd) {
8899
+ this.updateDragAndDropState();
8900
+ }
8878
8901
  if ('theme' in options) {
8879
8902
  this.updateTheme();
8880
8903
  }
@@ -8889,6 +8912,12 @@ define(['exports'], (function (exports) { 'use strict';
8889
8912
  }
8890
8913
  }
8891
8914
  }
8915
+ updateDragAndDropState() {
8916
+ // Update draggable state for all tabs and void containers
8917
+ for (const group of this.groups) {
8918
+ group.model.updateDragAndDropState();
8919
+ }
8920
+ }
8892
8921
  focus() {
8893
8922
  var _a;
8894
8923
  (_a = this.activeGroup) === null || _a === void 0 ? void 0 : _a.focus();