Merge pull request #409 from mathuo/397-gready-rendering-mode

feat: rename rendering modes
This commit is contained in:
mathuo 2023-12-26 20:22:32 +00:00 committed by GitHub
commit 343d42cb86
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
8 changed files with 45 additions and 45 deletions

View File

@ -60,7 +60,7 @@ describe('contentContainer', () => {
const dockviewComponent = jest.fn<DockviewComponent, []>(() => { const dockviewComponent = jest.fn<DockviewComponent, []>(() => {
return { return {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as DockviewComponent; } as DockviewComponent;
}); });
@ -81,7 +81,7 @@ describe('contentContainer', () => {
view: { view: {
content: contentRenderer, content: contentRenderer,
} as Partial<IDockviewPanelModel>, } as Partial<IDockviewPanelModel>,
api: { renderer: 'destructive' }, api: { renderer: 'onlyWhenVisibile' },
} as Partial<IDockviewPanel>; } as Partial<IDockviewPanel>;
cut.openPanel(panel as IDockviewPanel); cut.openPanel(panel as IDockviewPanel);
@ -116,7 +116,7 @@ describe('contentContainer', () => {
view: { view: {
content: contentRenderer2, content: contentRenderer2,
} as Partial<IDockviewPanelModel>, } as Partial<IDockviewPanelModel>,
api: { renderer: 'destructive' }, api: { renderer: 'onlyWhenVisibile' },
} as Partial<IDockviewPanel>; } as Partial<IDockviewPanel>;
cut.openPanel(panel2 as IDockviewPanel); cut.openPanel(panel2 as IDockviewPanel);

View File

@ -258,13 +258,13 @@ describe('groupview', () => {
test('panel events are captured during de-serialization', () => { test('panel events are captured during de-serialization', () => {
const panel1 = new TestPanel('panel1', { const panel1 = new TestPanel('panel1', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any); } as any);
const panel2 = new TestPanel('panel2', { const panel2 = new TestPanel('panel2', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any); } as any);
const panel3 = new TestPanel('panel3', { const panel3 = new TestPanel('panel3', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any); } as any);
const groupview2 = new DockviewGroupPanel(dockview, 'groupview-2', { const groupview2 = new DockviewGroupPanel(dockview, 'groupview-2', {
@ -350,13 +350,13 @@ describe('groupview', () => {
); );
const panel1 = new TestPanel('panel1', { const panel1 = new TestPanel('panel1', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any); } as any);
const panel2 = new TestPanel('panel2', { const panel2 = new TestPanel('panel2', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any); } as any);
const panel3 = new TestPanel('panel3', { const panel3 = new TestPanel('panel3', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any); } as any);
expect(events.length).toBe(0); expect(events.length).toBe(0);
@ -436,13 +436,13 @@ describe('groupview', () => {
test('moveToPrevious and moveToNext', () => { test('moveToPrevious and moveToNext', () => {
const panel1 = new TestPanel('panel1', { const panel1 = new TestPanel('panel1', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any); } as any);
const panel2 = new TestPanel('panel2', { const panel2 = new TestPanel('panel2', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any); } as any);
const panel3 = new TestPanel('panel3', { const panel3 = new TestPanel('panel3', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any); } as any);
groupview.model.openPanel(panel1); groupview.model.openPanel(panel1);
@ -488,13 +488,13 @@ describe('groupview', () => {
test('closeAllPanels with panels', () => { test('closeAllPanels with panels', () => {
const panel1 = new TestPanel('panel1', { const panel1 = new TestPanel('panel1', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any); } as any);
const panel2 = new TestPanel('panel2', { const panel2 = new TestPanel('panel2', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any); } as any);
const panel3 = new TestPanel('panel3', { const panel3 = new TestPanel('panel3', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any); } as any);
groupview.model.openPanel(panel1); groupview.model.openPanel(panel1);
@ -601,7 +601,7 @@ describe('groupview', () => {
.item(0)!.childNodes; .item(0)!.childNodes;
const panel1 = new TestPanel('id_1', { const panel1 = new TestPanel('id_1', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any); } as any);
cut.openPanel(panel1); cut.openPanel(panel1);
@ -609,7 +609,7 @@ describe('groupview', () => {
expect(contentContainer.item(0)).toBe(panel1.view.content.element); expect(contentContainer.item(0)).toBe(panel1.view.content.element);
const panel2 = new TestPanel('id_2', { const panel2 = new TestPanel('id_2', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any); } as any);
cut.openPanel(panel2); cut.openPanel(panel2);
@ -617,7 +617,7 @@ describe('groupview', () => {
expect(contentContainer.item(0)).toBe(panel2.view.content.element); expect(contentContainer.item(0)).toBe(panel2.view.content.element);
const panel3 = new TestPanel('id_2', { const panel3 = new TestPanel('id_2', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any); } as any);
cut.openPanel(panel3, { skipSetPanelActive: true }); cut.openPanel(panel3, { skipSetPanelActive: true });
@ -822,7 +822,7 @@ describe('groupview', () => {
cut.openPanel( cut.openPanel(
new TestPanel('panel1', { new TestPanel('panel1', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any) } as any)
); );
@ -892,12 +892,12 @@ describe('groupview', () => {
cut.openPanel( cut.openPanel(
new TestPanel('panel1', { new TestPanel('panel1', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any) } as any)
); );
cut.openPanel( cut.openPanel(
new TestPanel('panel2', { new TestPanel('panel2', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any) } as any)
); );
@ -967,12 +967,12 @@ describe('groupview', () => {
cut.openPanel( cut.openPanel(
new TestPanel('panel1', { new TestPanel('panel1', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any) } as any)
); );
cut.openPanel( cut.openPanel(
new TestPanel('panel2', { new TestPanel('panel2', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any) } as any)
); );
@ -1077,7 +1077,7 @@ describe('groupview', () => {
cut.openPanel( cut.openPanel(
new TestPanel('panel1', { new TestPanel('panel1', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any) } as any)
); );
@ -1091,7 +1091,7 @@ describe('groupview', () => {
cut.openPanel( cut.openPanel(
new TestPanel('panel2', { new TestPanel('panel2', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any) } as any)
); );
@ -1113,7 +1113,7 @@ describe('groupview', () => {
cut.openPanel( cut.openPanel(
new TestPanel('panel1', { new TestPanel('panel1', {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
} as any) } as any)
); );

View File

@ -30,7 +30,7 @@ describe('dockviewPanel', () => {
const model = <IDockviewPanelModel>new panelModelMock(); const model = <IDockviewPanelModel>new panelModelMock();
const cut = new DockviewPanel('fake-id', accessor, api, group, model, { const cut = new DockviewPanel('fake-id', accessor, api, group, model, {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
}); });
let latestTitle: string | undefined = undefined; let latestTitle: string | undefined = undefined;
@ -77,7 +77,7 @@ describe('dockviewPanel', () => {
const model = <IDockviewPanelModel>new panelModelMock(); const model = <IDockviewPanelModel>new panelModelMock();
const cut = new DockviewPanel('fake-id', accessor, api, group, model, { const cut = new DockviewPanel('fake-id', accessor, api, group, model, {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
}); });
cut.init({ title: 'myTitle', params: {} }); cut.init({ title: 'myTitle', params: {} });
@ -114,7 +114,7 @@ describe('dockviewPanel', () => {
const model = <IDockviewPanelModel>new panelModelMock(); const model = <IDockviewPanelModel>new panelModelMock();
const cut = new DockviewPanel('fake-id', accessor, api, group, model, { const cut = new DockviewPanel('fake-id', accessor, api, group, model, {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
}); });
cut.init({ params: {}, title: 'title' }); cut.init({ params: {}, title: 'title' });
@ -148,7 +148,7 @@ describe('dockviewPanel', () => {
const model = <IDockviewPanelModel>new panelModelMock(); const model = <IDockviewPanelModel>new panelModelMock();
const cut = new DockviewPanel('fake-id', accessor, api, group, model, { const cut = new DockviewPanel('fake-id', accessor, api, group, model, {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
}); });
expect(cut.params).toEqual(undefined); expect(cut.params).toEqual(undefined);
@ -186,7 +186,7 @@ describe('dockviewPanel', () => {
const model = <IDockviewPanelModel>new panelModelMock(); const model = <IDockviewPanelModel>new panelModelMock();
const cut = new DockviewPanel('fake-id', accessor, api, group, model, { const cut = new DockviewPanel('fake-id', accessor, api, group, model, {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
}); });
cut.api.setSize({ height: 123, width: 456 }); cut.api.setSize({ height: 123, width: 456 });
@ -219,7 +219,7 @@ describe('dockviewPanel', () => {
const model = <IDockviewPanelModel>new panelModelMock(); const model = <IDockviewPanelModel>new panelModelMock();
const cut = new DockviewPanel('fake-id', accessor, api, group, model, { const cut = new DockviewPanel('fake-id', accessor, api, group, model, {
renderer: 'destructive', renderer: 'onlyWhenVisibile',
}); });
cut.init({ params: { a: '1', b: '2' }, title: 'A title' }); cut.init({ params: { a: '1', b: '2' }, title: 'A title' });

View File

@ -4,7 +4,7 @@ import { getDomNodePagePosition, toggleClass } from '../../dom';
import { CompositeDisposable, Disposable, IDisposable } from '../../lifecycle'; import { CompositeDisposable, Disposable, IDisposable } from '../../lifecycle';
import { IDockviewPanel } from '../dockviewPanel'; import { IDockviewPanel } from '../dockviewPanel';
export type DockviewPanelRenderer = 'destructive' | 'gready'; export type DockviewPanelRenderer = 'onlyWhenVisibile' | 'always';
export interface IRenderable { export interface IRenderable {
readonly element: HTMLElement; readonly element: HTMLElement;

View File

@ -124,7 +124,7 @@ export class ContentContainer
let container: HTMLElement; let container: HTMLElement;
switch (panel.api.renderer) { switch (panel.api.renderer) {
case 'destructive': case 'onlyWhenVisibile':
this.accessor.greadyRenderContainer.remove(panel); this.accessor.greadyRenderContainer.remove(panel);
if (isActive) { if (isActive) {
if (this.panel) { if (this.panel) {
@ -135,7 +135,7 @@ export class ContentContainer
} }
container = this._element; container = this._element;
break; break;
case 'gready': case 'always':
if ( if (
panel.view.content.element.parentElement === this._element panel.view.content.element.parentElement === this._element
) { ) {
@ -199,14 +199,14 @@ export class ContentContainer
let container: HTMLElement; let container: HTMLElement;
switch (renderer) { switch (renderer) {
case 'gready': case 'always':
container = container =
this.accessor.greadyRenderContainer.setReferenceContentContainer( this.accessor.greadyRenderContainer.setReferenceContentContainer(
panel, panel,
this this
); );
break; break;
case 'destructive': case 'onlyWhenVisibile':
this._element.appendChild(this.panel.view.content.element); this._element.appendChild(this.panel.view.content.element);
container = this._element; container = this._element;
break; break;
@ -242,7 +242,7 @@ export class ContentContainer
public closePanel(): void { public closePanel(): void {
if (this.panel) { if (this.panel) {
if (this.accessor.options.defaultRenderer === 'destructive') { if (this.accessor.options.defaultRenderer === 'onlyWhenVisibile') {
this._element.removeChild(this.panel.view.content.element); this._element.removeChild(this.panel.view.content.element);
} }
this.panel = undefined; this.panel = undefined;

View File

@ -306,7 +306,7 @@ export class DockviewComponent
} }
get renderer(): DockviewPanelRenderer { get renderer(): DockviewPanelRenderer {
return this.options.defaultRenderer ?? 'destructive'; return this.options.defaultRenderer ?? 'onlyWhenVisibile';
} }
constructor(options: DockviewComponentOptions) { constructor(options: DockviewComponentOptions) {

View File

@ -58,9 +58,9 @@ const components = {
<button <button
onClick={() => { onClick={() => {
setMode( setMode(
mode === 'destructive' mode === 'onlyWhenVisibile'
? 'gready' ? 'always'
: 'destructive' : 'onlyWhenVisibile'
); );
}} }}
> >

View File

@ -55,9 +55,9 @@ const components = {
<button <button
onClick={() => { onClick={() => {
setMode( setMode(
mode === 'destructive' mode === 'onlyWhenVisibile'
? 'gready' ? 'always'
: 'destructive' : 'onlyWhenVisibile'
); );
}} }}
> >