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.
- package/dist/cjs/dockview/components/tab/tab.d.ts +1 -0
- package/dist/cjs/dockview/components/tab/tab.js +4 -1
- package/dist/cjs/dockview/components/titlebar/tabs.d.ts +1 -0
- package/dist/cjs/dockview/components/titlebar/tabs.js +16 -0
- package/dist/cjs/dockview/components/titlebar/tabsContainer.d.ts +2 -0
- package/dist/cjs/dockview/components/titlebar/tabsContainer.js +4 -0
- package/dist/cjs/dockview/components/titlebar/voidContainer.d.ts +1 -0
- package/dist/cjs/dockview/components/titlebar/voidContainer.js +4 -1
- package/dist/cjs/dockview/dockviewComponent.d.ts +1 -0
- package/dist/cjs/dockview/dockviewComponent.js +53 -31
- package/dist/cjs/dockview/dockviewGroupPanelModel.d.ts +10 -8
- package/dist/cjs/dockview/dockviewGroupPanelModel.js +3 -0
- package/dist/dockview-core.amd.js +32 -3
- package/dist/dockview-core.amd.js.map +1 -1
- package/dist/dockview-core.amd.min.js +2 -2
- package/dist/dockview-core.amd.min.js.map +1 -1
- package/dist/dockview-core.amd.min.noStyle.js +2 -2
- package/dist/dockview-core.amd.min.noStyle.js.map +1 -1
- package/dist/dockview-core.amd.noStyle.js +32 -3
- package/dist/dockview-core.amd.noStyle.js.map +1 -1
- package/dist/dockview-core.cjs.js +32 -3
- package/dist/dockview-core.cjs.js.map +1 -1
- package/dist/dockview-core.esm.js +32 -3
- package/dist/dockview-core.esm.js.map +1 -1
- package/dist/dockview-core.esm.min.js +2 -2
- package/dist/dockview-core.esm.min.js.map +1 -1
- package/dist/dockview-core.js +32 -3
- package/dist/dockview-core.js.map +1 -1
- package/dist/dockview-core.min.js +2 -2
- package/dist/dockview-core.min.js.map +1 -1
- package/dist/dockview-core.min.noStyle.js +2 -2
- package/dist/dockview-core.min.noStyle.js.map +1 -1
- package/dist/dockview-core.noStyle.js +32 -3
- package/dist/dockview-core.noStyle.js.map +1 -1
- package/dist/esm/dockview/components/tab/tab.d.ts +1 -0
- package/dist/esm/dockview/components/tab/tab.js +4 -1
- package/dist/esm/dockview/components/titlebar/tabs.d.ts +1 -0
- package/dist/esm/dockview/components/titlebar/tabs.js +5 -0
- package/dist/esm/dockview/components/titlebar/tabsContainer.d.ts +2 -0
- package/dist/esm/dockview/components/titlebar/tabsContainer.js +4 -0
- package/dist/esm/dockview/components/titlebar/voidContainer.d.ts +1 -0
- package/dist/esm/dockview/components/titlebar/voidContainer.js +4 -1
- package/dist/esm/dockview/dockviewComponent.d.ts +1 -0
- package/dist/esm/dockview/dockviewComponent.js +11 -0
- package/dist/esm/dockview/dockviewGroupPanelModel.d.ts +10 -8
- package/dist/esm/dockview/dockviewGroupPanelModel.js +3 -0
- 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
|
}
|
|
@@ -41,7 +41,7 @@ export class Tab extends CompositeDisposable {
|
|
|
41
41
|
this._element = document.createElement('div');
|
|
42
42
|
this._element.className = 'dv-tab';
|
|
43
43
|
this._element.tabIndex = 0;
|
|
44
|
-
this._element.draggable =
|
|
44
|
+
this._element.draggable = !this.accessor.options.disableDnd;
|
|
45
45
|
toggleClass(this.element, 'dv-inactive-tab', true);
|
|
46
46
|
const dragHandler = new TabDragHandler(this._element, this.accessor, this.group, this.panel);
|
|
47
47
|
this.dropTarget = new Droptarget(this._element, {
|
|
@@ -89,6 +89,9 @@ export class Tab extends CompositeDisposable {
|
|
|
89
89
|
this.content = part;
|
|
90
90
|
this._element.appendChild(this.content.element);
|
|
91
91
|
}
|
|
92
|
+
updateDragAndDropState() {
|
|
93
|
+
this._element.draggable = !this.accessor.options.disableDnd;
|
|
94
|
+
}
|
|
92
95
|
dispose() {
|
|
93
96
|
super.dispose();
|
|
94
97
|
}
|
|
@@ -186,4 +186,9 @@ export class Tabs extends CompositeDisposable {
|
|
|
186
186
|
.map((x) => x.value.panel.id);
|
|
187
187
|
this._onOverflowTabsChange.fire({ tabs, reset: options.reset });
|
|
188
188
|
}
|
|
189
|
+
updateDragAndDropState() {
|
|
190
|
+
for (const tab of this._tabs) {
|
|
191
|
+
tab.value.updateDragAndDropState();
|
|
192
|
+
}
|
|
193
|
+
}
|
|
189
194
|
}
|
|
@@ -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
|
}
|
|
@@ -17,7 +17,7 @@ export class VoidContainer extends CompositeDisposable {
|
|
|
17
17
|
this.onDragStart = this._onDragStart.event;
|
|
18
18
|
this._element = document.createElement('div');
|
|
19
19
|
this._element.className = 'dv-void-container';
|
|
20
|
-
this._element.draggable =
|
|
20
|
+
this._element.draggable = !this.accessor.options.disableDnd;
|
|
21
21
|
this.addDisposables(this._onDrop, this._onDragStart, addDisposableListener(this._element, 'pointerdown', () => {
|
|
22
22
|
this.accessor.doSetGroupActive(this.group);
|
|
23
23
|
}));
|
|
@@ -40,4 +40,7 @@ export class VoidContainer extends CompositeDisposable {
|
|
|
40
40
|
this._onDrop.fire(event);
|
|
41
41
|
}), this.dropTarget);
|
|
42
42
|
}
|
|
43
|
+
updateDragAndDropState() {
|
|
44
|
+
this._element.draggable = !this.accessor.options.disableDnd;
|
|
45
|
+
}
|
|
43
46
|
}
|
|
@@ -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;
|
|
@@ -728,7 +728,12 @@ export class DockviewComponent extends BaseGrid {
|
|
|
728
728
|
}
|
|
729
729
|
}
|
|
730
730
|
this.updateDropTargetModel(options);
|
|
731
|
+
const oldDisableDnd = this.options.disableDnd;
|
|
731
732
|
this._options = Object.assign(Object.assign({}, this.options), options);
|
|
733
|
+
const newDisableDnd = this.options.disableDnd;
|
|
734
|
+
if (oldDisableDnd !== newDisableDnd) {
|
|
735
|
+
this.updateDragAndDropState();
|
|
736
|
+
}
|
|
732
737
|
if ('theme' in options) {
|
|
733
738
|
this.updateTheme();
|
|
734
739
|
}
|
|
@@ -743,6 +748,12 @@ export class DockviewComponent extends BaseGrid {
|
|
|
743
748
|
}
|
|
744
749
|
}
|
|
745
750
|
}
|
|
751
|
+
updateDragAndDropState() {
|
|
752
|
+
// Update draggable state for all tabs and void containers
|
|
753
|
+
for (const group of this.groups) {
|
|
754
|
+
group.model.updateDragAndDropState();
|
|
755
|
+
}
|
|
756
|
+
}
|
|
746
757
|
focus() {
|
|
747
758
|
var _a;
|
|
748
759
|
(_a = this.activeGroup) === null || _a === void 0 ? void 0 : _a.focus();
|
|
@@ -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
|
-
|
|
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 {};
|