From 1134f972d34d004694d4a5e6bcc14bfe8cd41f63 Mon Sep 17 00:00:00 2001 From: mathuo <6710312+mathuo@users.noreply.github.com> Date: Tue, 14 Mar 2023 07:46:29 +0300 Subject: [PATCH] refactor: remove legacy code --- .../__mocks__/mockDockviewPanelMode.ts | 7 ---- .../src/dockview/components/tab/defaultTab.ts | 35 +++++++------------ .../src/dockview/dockviewPanel.ts | 2 +- .../dockview/src/dockview/reactContentPart.ts | 9 ----- .../dockview/src/dockview/reactHeaderPart.ts | 7 ---- .../src/dockview/reactWatermarkPart.ts | 14 ++------ .../src/dockview/v2/reactContentRenderer.ts | 10 ------ .../src/dockview/v2/webviewContentRenderer.ts | 8 ----- 8 files changed, 16 insertions(+), 76 deletions(-) diff --git a/packages/dockview-core/src/__tests__/__mocks__/mockDockviewPanelMode.ts b/packages/dockview-core/src/__tests__/__mocks__/mockDockviewPanelMode.ts index 31fe58f8d..0d788620e 100644 --- a/packages/dockview-core/src/__tests__/__mocks__/mockDockviewPanelMode.ts +++ b/packages/dockview-core/src/__tests__/__mocks__/mockDockviewPanelMode.ts @@ -29,13 +29,6 @@ export class DockviewPanelModelMock implements IDockviewPanelModel { // } - updateParentGroup( - group: DockviewGroupPanel, - isPanelVisible: boolean - ): void { - // - } - dispose(): void { // } diff --git a/packages/dockview-core/src/dockview/components/tab/defaultTab.ts b/packages/dockview-core/src/dockview/components/tab/defaultTab.ts index 3335b5737..b69ce025d 100644 --- a/packages/dockview-core/src/dockview/components/tab/defaultTab.ts +++ b/packages/dockview-core/src/dockview/components/tab/defaultTab.ts @@ -7,9 +7,6 @@ import { createCloseButton } from '../../../svg'; export class DefaultTab extends CompositeDisposable implements ITabRenderer { private _element: HTMLElement; - - private _isPanelVisible = false; - private _isGroupActive = false; private _content: HTMLElement; private _actionContainer: HTMLElement; private _list: HTMLElement; @@ -17,7 +14,7 @@ export class DefaultTab extends CompositeDisposable implements ITabRenderer { // private params: GroupPanelPartInitParameters = {} as any; - get element() { + get element(): HTMLElement { return this._element; } @@ -55,16 +52,16 @@ export class DefaultTab extends CompositeDisposable implements ITabRenderer { this.render(); } - public update(event: PanelUpdateEvent) { + public update(event: PanelUpdateEvent): void { this.params = { ...this.params, ...event.params }; this.render(); } - focus() { + focus(): void { //noop } - public init(params: GroupPanelPartInitParameters) { + public init(params: GroupPanelPartInitParameters): void { this.params = params; this._content.textContent = params.title; @@ -74,27 +71,19 @@ export class DefaultTab extends CompositeDisposable implements ITabRenderer { }); } - public updateParentGroup( - group: DockviewGroupPanel, - isPanelVisible: boolean - ) { - const changed = - this._isPanelVisible !== isPanelVisible || - this._isGroupActive !== group.isActive; - - this._isPanelVisible = isPanelVisible; - this._isGroupActive = group.isActive; - - if (changed) { - this.render(); - } + onGroupChange(_group: DockviewGroupPanel): void { + this.render(); } - public layout(_width: number, _height: number) { + onPanelVisibleChange(_isPanelVisible: boolean): void { + this.render(); + } + + public layout(_width: number, _height: number): void { // noop } - private render() { + private render(): void { if (this._content.textContent !== this.params.title) { this._content.textContent = this.params.title; } diff --git a/packages/dockview-core/src/dockview/dockviewPanel.ts b/packages/dockview-core/src/dockview/dockviewPanel.ts index b9b113e55..36c621a16 100644 --- a/packages/dockview-core/src/dockview/dockviewPanel.ts +++ b/packages/dockview-core/src/dockview/dockviewPanel.ts @@ -155,7 +155,7 @@ export class DockviewPanel isVisible: isPanelVisible, }); - this.view?.updateParentGroup( + this.view.updateParentGroup( this._group, this._group.model.isPanelActive(this) ); diff --git a/packages/dockview/src/dockview/reactContentPart.ts b/packages/dockview/src/dockview/reactContentPart.ts index 1703046c0..6a9a3a9a4 100644 --- a/packages/dockview/src/dockview/reactContentPart.ts +++ b/packages/dockview/src/dockview/reactContentPart.ts @@ -13,8 +13,6 @@ import { export class ReactPanelContentPart implements IContentRenderer { private _element: HTMLElement; private part?: ReactPart; - // - private _group: DockviewGroupPanel | undefined; private readonly _onDidFocus = new DockviewEmitter(); readonly onDidFocus: DockviewEvent = this._onDidFocus.event; @@ -56,13 +54,6 @@ export class ReactPanelContentPart implements IContentRenderer { this.part?.update(event.params); } - public updateParentGroup( - group: DockviewGroupPanel, - _isPanelVisible: boolean - ): void { - this._group = group; - } - public layout(_width: number, _height: number): void { // noop } diff --git a/packages/dockview/src/dockview/reactHeaderPart.ts b/packages/dockview/src/dockview/reactHeaderPart.ts index efb496793..dd817e4ab 100644 --- a/packages/dockview/src/dockview/reactHeaderPart.ts +++ b/packages/dockview/src/dockview/reactHeaderPart.ts @@ -50,13 +50,6 @@ export class ReactPanelHeaderPart implements ITabRenderer { // noop - retrieval from api } - public updateParentGroup( - _group: DockviewGroupPanel, - _isPanelVisible: boolean - ): void { - // noop - retrieval from api - } - public dispose(): void { this.part?.dispose(); } diff --git a/packages/dockview/src/dockview/reactWatermarkPart.ts b/packages/dockview/src/dockview/reactWatermarkPart.ts index 9f85a9b1f..e1f16066a 100644 --- a/packages/dockview/src/dockview/reactWatermarkPart.ts +++ b/packages/dockview/src/dockview/reactWatermarkPart.ts @@ -15,9 +15,6 @@ export interface IWatermarkPanelProps extends IGroupPanelBaseProps { export class ReactWatermarkPart implements IWatermarkRenderer { private _element: HTMLElement; private part?: ReactPart; - private _groupRef: { value: DockviewGroupPanel | undefined } = { - value: undefined, - }; private parameters: GroupPanelPartInitParameters | undefined; get element(): HTMLElement { @@ -45,11 +42,7 @@ export class ReactWatermarkPart implements IWatermarkRenderer { api: parameters.api, containerApi: parameters.containerApi, close: () => { - if (this._groupRef.value) { - parameters.containerApi.removeGroup( - this._groupRef.value - ); - } + parameters.containerApi.removeGroup(parameters.api.group); }, } ); @@ -72,11 +65,10 @@ export class ReactWatermarkPart implements IWatermarkRenderer { } updateParentGroup( - group: DockviewGroupPanel, + _group: DockviewGroupPanel, _isPanelVisible: boolean ): void { - // noop - retrieval from api - this._groupRef.value = group; + // noop } dispose(): void { diff --git a/packages/dockview/src/dockview/v2/reactContentRenderer.ts b/packages/dockview/src/dockview/v2/reactContentRenderer.ts index f2ccb4db8..758c41325 100644 --- a/packages/dockview/src/dockview/v2/reactContentRenderer.ts +++ b/packages/dockview/src/dockview/v2/reactContentRenderer.ts @@ -11,11 +11,8 @@ import { IDockviewPanelProps } from '../dockview'; export class ReactContentRenderer implements IContentRenderer { private _hostedContainer: HostedContainer; - private _element: HTMLElement; private part?: ReactPart; - private _group: DockviewGroupPanel | undefined; - private parameters: GroupPanelPartInitParameters | undefined; get element(): HTMLElement { @@ -83,13 +80,6 @@ export class ReactContentRenderer implements IContentRenderer { this.part?.update(params.params); } - public updateParentGroup( - group: DockviewGroupPanel, - _isPanelVisible: boolean - ): void { - this._group = group; - } - public layout(_width: number, _height: number): void { this._hostedContainer.layout(this.element); } diff --git a/packages/dockview/src/dockview/v2/webviewContentRenderer.ts b/packages/dockview/src/dockview/v2/webviewContentRenderer.ts index a1bbda1a1..f366a2e06 100644 --- a/packages/dockview/src/dockview/v2/webviewContentRenderer.ts +++ b/packages/dockview/src/dockview/v2/webviewContentRenderer.ts @@ -9,7 +9,6 @@ import { export class WebviewContentRenderer implements IContentRenderer { private _hostedContainer: HostedContainer; private _element: HTMLElement; - private parameters: GroupPanelPartInitParameters | undefined; get element(): HTMLElement { @@ -38,13 +37,6 @@ export class WebviewContentRenderer implements IContentRenderer { } } - public updateParentGroup( - _group: DockviewGroupPanel, - _isPanelVisible: boolean - ): void { - // - } - public layout(_width: number, _height: number): void { this._hostedContainer.layout(this._element); }