From 692a86e489a3f08314f9b67ccb92662c268eada5 Mon Sep 17 00:00:00 2001 From: Jeremy Tuloup Date: Thu, 19 Jan 2023 21:25:51 +0000 Subject: [PATCH 1/3] Add the variable inspector to the right area --- src/index.ts | 59 +++++++--------------------------------------------- 1 file changed, 8 insertions(+), 51 deletions(-) diff --git a/src/index.ts b/src/index.ts index 58464c0..d3ede60 100644 --- a/src/index.ts +++ b/src/index.ts @@ -11,11 +11,10 @@ import { VariableInspectorManager, IVariableInspectorManager } from './manager'; import { Languages } from './inspectorscripts'; -import { ICommandPalette, WidgetTracker } from '@jupyterlab/apputils'; +import { WidgetTracker } from '@jupyterlab/apputils'; import { ILabShell, - ILayoutRestorer, JupyterFrontEnd, JupyterFrontEndPlugin, } from '@jupyterlab/application'; @@ -26,28 +25,15 @@ import { INotebookTracker, NotebookPanel } from '@jupyterlab/notebook'; import { listIcon } from '@jupyterlab/ui-components'; -namespace CommandIDs { - export const open = 'variableinspector:open'; -} - /** * A service providing variable introspection. */ const variableinspector: JupyterFrontEndPlugin = { id: '@lckr/jupyterlab_variableinspector', - requires: [ICommandPalette, ILayoutRestorer, ILabShell], provides: IVariableInspectorManager, autoStart: true, - activate: ( - app: JupyterFrontEnd, - palette: ICommandPalette, - restorer: ILayoutRestorer, - labShell: ILabShell - ): IVariableInspectorManager => { + activate: (app: JupyterFrontEnd): IVariableInspectorManager => { const manager = new VariableInspectorManager(); - const category = 'Variable Inspector'; - const command = CommandIDs.open; - const label = 'Open Variable Inspector'; const namespace = 'variableinspector'; const tracker = new WidgetTracker({ namespace }); @@ -67,36 +53,17 @@ const variableinspector: JupyterFrontEndPlugin = { } }); - //Track the inspector panel + // Track the inspector panel tracker.add(panel); return panel; } - // Enable state restoration - restorer.restore(tracker, { - command, - args: () => null, - name: () => 'variableinspector', - }); - - // Add command to palette - app.commands.addCommand(command, { - label, - execute: () => { - if (!manager.panel || manager.panel.isDisposed) { - manager.panel = newPanel(); - } - if (!manager.panel.isAttached) { - labShell.add(manager.panel, 'main'); - } - if (manager.source) { - manager.source.performInspection(); - } - labShell.activateById(manager.panel.id); - }, - }); - palette.addItem({ command, category }); + manager.panel = newPanel(); + if (manager.source) { + manager.source.performInspection(); + } + app.shell.add(manager.panel, 'right'); console.log( 'JupyterLab extension @lckr/jupyterlab_variableinspector is activated!' @@ -206,11 +173,6 @@ const consoles: JupyterFrontEndPlugin = { } }); }); - - app.contextMenu.addItem({ - command: CommandIDs.open, - selector: '.jp-CodeConsole', - }); }, }; @@ -302,11 +264,6 @@ const notebooks: JupyterFrontEndPlugin = { } }); }); - - app.contextMenu.addItem({ - command: CommandIDs.open, - selector: '.jp-Notebook', - }); }, }; From e169f3898b4a4a533f2aac890d881270922411a8 Mon Sep 17 00:00:00 2001 From: Jeremy Tuloup Date: Thu, 19 Jan 2023 21:28:46 +0000 Subject: [PATCH 2/3] Fix background color --- style/index.css | 1 + 1 file changed, 1 insertion(+) diff --git a/style/index.css b/style/index.css index c92dedd..86bd8c4 100644 --- a/style/index.css +++ b/style/index.css @@ -5,6 +5,7 @@ flex-direction: column; overflow: auto; font-size: var(--jp-ui-font-size1); + background: var(--jp-layout-color1); } .jp-VarInspector-table { From 3dd1435bdd6ddf8fd5ae12de3e3c6e2d4c4527c5 Mon Sep 17 00:00:00 2001 From: Jeremy Tuloup Date: Thu, 19 Jan 2023 21:29:24 +0000 Subject: [PATCH 3/3] Remove widget title --- src/index.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/src/index.ts b/src/index.ts index d3ede60..8d6e81b 100644 --- a/src/index.ts +++ b/src/index.ts @@ -44,7 +44,6 @@ const variableinspector: JupyterFrontEndPlugin = { const panel = new VariableInspectorPanel(); panel.id = 'jp-variableinspector'; - panel.title.label = 'Variable Inspector'; panel.title.icon = listIcon; panel.title.closable = true; panel.disposed.connect(() => {