@jupyterlab/cell-toolbar 4.1.0-alpha.2 → 4.1.0-alpha.4
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/lib/celltoolbartracker.d.ts +20 -6
- package/lib/celltoolbartracker.js +85 -65
- package/lib/celltoolbartracker.js.map +1 -1
- package/package.json +12 -12
- package/src/celltoolbartracker.ts +99 -76
- package/style/base.css +6 -12
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { ToolbarRegistry } from '@jupyterlab/apputils';
|
|
2
|
-
import { CellModel } from '@jupyterlab/cells';
|
|
2
|
+
import { Cell, CellModel } from '@jupyterlab/cells';
|
|
3
3
|
import { DocumentRegistry } from '@jupyterlab/docregistry';
|
|
4
4
|
import { Notebook, NotebookPanel } from '@jupyterlab/notebook';
|
|
5
5
|
import { IObservableList } from '@jupyterlab/observables';
|
|
@@ -11,17 +11,31 @@ import { IMapChange } from '@jupyter/ydoc';
|
|
|
11
11
|
* Watch a notebook so that a cell toolbar appears on the active cell
|
|
12
12
|
*/
|
|
13
13
|
export declare class CellToolbarTracker implements IDisposable {
|
|
14
|
-
|
|
14
|
+
/**
|
|
15
|
+
* CellToolbarTracker constructor
|
|
16
|
+
*
|
|
17
|
+
* @param panel The notebook panel
|
|
18
|
+
* @param toolbar The toolbar; deprecated use {@link toolbarFactory} instead
|
|
19
|
+
* @param toolbarFactory The toolbar factory
|
|
20
|
+
*/
|
|
21
|
+
constructor(panel: NotebookPanel, toolbar?: IObservableList<ToolbarRegistry.IToolbarItem>, toolbarFactory?: (widget: Cell) => IObservableList<ToolbarRegistry.IToolbarItem>);
|
|
22
|
+
/**
|
|
23
|
+
* @deprecated Will become protected in JupyterLab 5
|
|
24
|
+
*/
|
|
15
25
|
_onMetadataChanged(model: CellModel, args: IMapChange): void;
|
|
26
|
+
/**
|
|
27
|
+
* @deprecated Will become protected in JupyterLab 5
|
|
28
|
+
*/
|
|
16
29
|
_onActiveCellChanged(notebook: Notebook): void;
|
|
17
30
|
get isDisposed(): boolean;
|
|
18
31
|
dispose(): void;
|
|
19
32
|
private _addToolbar;
|
|
20
33
|
private _getCell;
|
|
21
|
-
private _findToolbarWidgets;
|
|
22
34
|
private _removeToolbar;
|
|
23
35
|
/**
|
|
24
36
|
* Call back on settings changes
|
|
37
|
+
*
|
|
38
|
+
* @deprecated To remove when toolbar can not be provided directly to the tracker
|
|
25
39
|
*/
|
|
26
40
|
private _onToolbarChanged;
|
|
27
41
|
private _changedEventCallback;
|
|
@@ -37,21 +51,21 @@ export declare class CellToolbarTracker implements IDisposable {
|
|
|
37
51
|
private _markdownOverlapsToolbar;
|
|
38
52
|
private _outputOverlapsToolbar;
|
|
39
53
|
private _codeOverlapsToolbar;
|
|
40
|
-
private _cellEditorWidgetLeft;
|
|
41
|
-
private _cellEditorWidgetRight;
|
|
42
54
|
private _cellToolbarRect;
|
|
43
55
|
private _cellToolbarLeft;
|
|
44
56
|
private _isDisposed;
|
|
45
57
|
private _panel;
|
|
46
58
|
private _previousActiveCell;
|
|
47
59
|
private _toolbar;
|
|
60
|
+
private _toolbarItems;
|
|
61
|
+
private _toolbarFactory;
|
|
48
62
|
}
|
|
49
63
|
/**
|
|
50
64
|
* Widget extension that creates a CellToolbarTracker each time a notebook is
|
|
51
65
|
* created.
|
|
52
66
|
*/
|
|
53
67
|
export declare class CellBarExtension implements DocumentRegistry.WidgetExtension {
|
|
54
|
-
static FACTORY_NAME
|
|
68
|
+
static readonly FACTORY_NAME = "Cell";
|
|
55
69
|
constructor(commands: CommandRegistry, toolbarFactory?: (widget: Widget) => IObservableList<ToolbarRegistry.IToolbarItem>);
|
|
56
70
|
protected get defaultToolbarFactory(): (widget: Widget) => IObservableList<ToolbarRegistry.IToolbarItem>;
|
|
57
71
|
createNew(panel: NotebookPanel): IDisposable;
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
| Copyright (c) Jupyter Development Team.
|
|
3
3
|
| Distributed under the terms of the Modified BSD License.
|
|
4
4
|
|----------------------------------------------------------------------------*/
|
|
5
|
-
import { createDefaultFactory } from '@jupyterlab/apputils';
|
|
5
|
+
import { createDefaultFactory, setToolbar } from '@jupyterlab/apputils';
|
|
6
6
|
import { ObservableList } from '@jupyterlab/observables';
|
|
7
7
|
import { ReactWidget, Toolbar } from '@jupyterlab/ui-components';
|
|
8
8
|
import { some } from '@lumino/algorithm';
|
|
@@ -19,6 +19,7 @@ const TEXT_MIME_TYPES = [
|
|
|
19
19
|
* Widget cell toolbar classes
|
|
20
20
|
*/
|
|
21
21
|
const CELL_TOOLBAR_CLASS = 'jp-cell-toolbar';
|
|
22
|
+
// @deprecated to be removed
|
|
22
23
|
const CELL_MENU_CLASS = 'jp-cell-menu';
|
|
23
24
|
/**
|
|
24
25
|
* Class for a cell whose contents overlap with the cell toolbar
|
|
@@ -28,32 +29,48 @@ const TOOLBAR_OVERLAP_CLASS = 'jp-toolbar-overlap';
|
|
|
28
29
|
* Watch a notebook so that a cell toolbar appears on the active cell
|
|
29
30
|
*/
|
|
30
31
|
export class CellToolbarTracker {
|
|
31
|
-
|
|
32
|
-
|
|
32
|
+
/**
|
|
33
|
+
* CellToolbarTracker constructor
|
|
34
|
+
*
|
|
35
|
+
* @param panel The notebook panel
|
|
36
|
+
* @param toolbar The toolbar; deprecated use {@link toolbarFactory} instead
|
|
37
|
+
* @param toolbarFactory The toolbar factory
|
|
38
|
+
*/
|
|
39
|
+
constructor(panel, toolbar, toolbarFactory) {
|
|
33
40
|
this._isDisposed = false;
|
|
41
|
+
this._toolbar = null;
|
|
42
|
+
this._toolbarItems = null;
|
|
43
|
+
this._toolbarFactory = null;
|
|
34
44
|
this._panel = panel;
|
|
35
45
|
this._previousActiveCell = this._panel.content.activeCell;
|
|
36
|
-
this.
|
|
37
|
-
this.
|
|
38
|
-
this.
|
|
46
|
+
this._toolbarItems = toolbar !== null && toolbar !== void 0 ? toolbar : null;
|
|
47
|
+
this._toolbarFactory = toolbarFactory !== null && toolbarFactory !== void 0 ? toolbarFactory : null;
|
|
48
|
+
if (this._toolbarItems === null && this._toolbarFactory === null) {
|
|
49
|
+
throw Error('You must provide the toolbarFactory or the toolbar items.');
|
|
50
|
+
}
|
|
51
|
+
// deprecated to be removed when we remove toolbar from input arguments
|
|
52
|
+
if (!this._toolbarFactory && this._toolbarItems) {
|
|
53
|
+
this._onToolbarChanged();
|
|
54
|
+
this._toolbarItems.changed.connect(this._onToolbarChanged, this);
|
|
55
|
+
}
|
|
39
56
|
// Only add the toolbar to the notebook's active cell (if any) once it has fully rendered and been revealed.
|
|
40
57
|
void panel.revealed.then(() => {
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
this._onActiveCellChanged(
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
var _a;
|
|
53
|
-
panel.content.activeCellChanged.disconnect(this._onActiveCellChanged);
|
|
54
|
-
(_a = panel.content.activeCell) === null || _a === void 0 ? void 0 : _a.model.metadataChanged.disconnect(this._onMetadataChanged);
|
|
58
|
+
requestAnimationFrame(() => {
|
|
59
|
+
const notebook = panel.content;
|
|
60
|
+
this._onActiveCellChanged(notebook);
|
|
61
|
+
// Handle subsequent changes of active cell.
|
|
62
|
+
notebook.activeCellChanged.connect(this._onActiveCellChanged, this);
|
|
63
|
+
// Check whether the toolbar should be rendered upon a layout change
|
|
64
|
+
notebook.renderingLayoutChanged.connect(this._onActiveCellChanged, this);
|
|
65
|
+
notebook.disposed.connect(() => {
|
|
66
|
+
notebook.activeCellChanged.disconnect(this._onActiveCellChanged);
|
|
67
|
+
});
|
|
68
|
+
});
|
|
55
69
|
});
|
|
56
70
|
}
|
|
71
|
+
/**
|
|
72
|
+
* @deprecated Will become protected in JupyterLab 5
|
|
73
|
+
*/
|
|
57
74
|
_onMetadataChanged(model, args) {
|
|
58
75
|
if (args.key === 'jupyter') {
|
|
59
76
|
if (typeof args.newValue === 'object' &&
|
|
@@ -70,6 +87,9 @@ export class CellToolbarTracker {
|
|
|
70
87
|
}
|
|
71
88
|
}
|
|
72
89
|
}
|
|
90
|
+
/**
|
|
91
|
+
* @deprecated Will become protected in JupyterLab 5
|
|
92
|
+
*/
|
|
73
93
|
_onActiveCellChanged(notebook) {
|
|
74
94
|
if (this._previousActiveCell && !this._previousActiveCell.isDisposed) {
|
|
75
95
|
// Disposed cells do not have a model anymore.
|
|
@@ -88,39 +108,49 @@ export class CellToolbarTracker {
|
|
|
88
108
|
return this._isDisposed;
|
|
89
109
|
}
|
|
90
110
|
dispose() {
|
|
91
|
-
var _a;
|
|
111
|
+
var _a, _b;
|
|
92
112
|
if (this.isDisposed) {
|
|
93
113
|
return;
|
|
94
114
|
}
|
|
95
115
|
this._isDisposed = true;
|
|
96
|
-
this.
|
|
97
|
-
|
|
98
|
-
if (cells) {
|
|
99
|
-
for (const model of cells) {
|
|
100
|
-
this._removeToolbar(model);
|
|
101
|
-
}
|
|
102
|
-
}
|
|
116
|
+
(_a = this._toolbarItems) === null || _a === void 0 ? void 0 : _a.changed.disconnect(this._onToolbarChanged, this);
|
|
117
|
+
(_b = this._toolbar) === null || _b === void 0 ? void 0 : _b.dispose();
|
|
103
118
|
this._panel = null;
|
|
104
119
|
Signal.clearData(this);
|
|
105
120
|
}
|
|
106
121
|
_addToolbar(model) {
|
|
107
122
|
const cell = this._getCell(model);
|
|
108
|
-
if (cell) {
|
|
109
|
-
const toolbarWidget = new Toolbar();
|
|
123
|
+
if (cell && !cell.isDisposed) {
|
|
124
|
+
const toolbarWidget = (this._toolbar = new Toolbar());
|
|
125
|
+
// Note: CELL_MENU_CLASS is deprecated.
|
|
110
126
|
toolbarWidget.addClass(CELL_MENU_CLASS);
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
127
|
+
toolbarWidget.addClass(CELL_TOOLBAR_CLASS);
|
|
128
|
+
const promises = [cell.ready];
|
|
129
|
+
if (this._toolbarFactory) {
|
|
130
|
+
setToolbar(cell, this._toolbarFactory, toolbarWidget);
|
|
131
|
+
// FIXME toolbarWidget.update() - strangely this does not work
|
|
132
|
+
toolbarWidget.layout.widgets.forEach(w => {
|
|
133
|
+
w.update();
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
else {
|
|
137
|
+
for (const { name, widget } of this._toolbarItems) {
|
|
138
|
+
toolbarWidget.addItem(name, widget);
|
|
139
|
+
if (widget instanceof ReactWidget &&
|
|
140
|
+
widget.renderPromise !== undefined) {
|
|
141
|
+
widget.update();
|
|
142
|
+
promises.push(widget.renderPromise);
|
|
143
|
+
}
|
|
118
144
|
}
|
|
119
145
|
}
|
|
120
146
|
// Wait for all the buttons to be rendered before attaching the toolbar.
|
|
121
147
|
Promise.all(promises)
|
|
122
148
|
.then(() => {
|
|
123
|
-
|
|
149
|
+
var _a;
|
|
150
|
+
if (cell.isDisposed || ((_a = this._panel) === null || _a === void 0 ? void 0 : _a.content.activeCell) !== cell) {
|
|
151
|
+
toolbarWidget.dispose();
|
|
152
|
+
return;
|
|
153
|
+
}
|
|
124
154
|
cell.layout.insertWidget(0, toolbarWidget);
|
|
125
155
|
// For rendered markdown, watch for resize events.
|
|
126
156
|
cell.displayChanged.connect(this._resizeEventCallback, this);
|
|
@@ -138,24 +168,22 @@ export class CellToolbarTracker {
|
|
|
138
168
|
var _a;
|
|
139
169
|
return (_a = this._panel) === null || _a === void 0 ? void 0 : _a.content.widgets.find(widget => widget.model === model);
|
|
140
170
|
}
|
|
141
|
-
_findToolbarWidgets(cell) {
|
|
142
|
-
const widgets = cell.layout.widgets;
|
|
143
|
-
// Search for header using the CSS class or use the first one if not found.
|
|
144
|
-
return widgets.filter(widget => widget.hasClass(CELL_TOOLBAR_CLASS)) || [];
|
|
145
|
-
}
|
|
146
171
|
_removeToolbar(model) {
|
|
172
|
+
var _a, _b;
|
|
147
173
|
const cell = this._getCell(model);
|
|
148
|
-
if (cell) {
|
|
149
|
-
this._findToolbarWidgets(cell).forEach(widget => {
|
|
150
|
-
widget.dispose();
|
|
151
|
-
});
|
|
174
|
+
if (cell && !cell.isDisposed) {
|
|
152
175
|
// Attempt to remove the resize and changed event handlers.
|
|
153
176
|
cell.displayChanged.disconnect(this._resizeEventCallback, this);
|
|
154
177
|
}
|
|
155
178
|
model.contentChanged.disconnect(this._changedEventCallback, this);
|
|
179
|
+
if (((_a = this._toolbar) === null || _a === void 0 ? void 0 : _a.parent) === cell && ((_b = this._toolbar) === null || _b === void 0 ? void 0 : _b.isDisposed) === false) {
|
|
180
|
+
this._toolbar.dispose();
|
|
181
|
+
}
|
|
156
182
|
}
|
|
157
183
|
/**
|
|
158
184
|
* Call back on settings changes
|
|
185
|
+
*
|
|
186
|
+
* @deprecated To remove when toolbar can not be provided directly to the tracker
|
|
159
187
|
*/
|
|
160
188
|
_onToolbarChanged() {
|
|
161
189
|
var _a;
|
|
@@ -198,11 +226,12 @@ export class CellToolbarTracker {
|
|
|
198
226
|
});
|
|
199
227
|
}
|
|
200
228
|
_cellToolbarOverlapsContents(activeCell) {
|
|
201
|
-
var _a;
|
|
229
|
+
var _a, _b, _c, _d;
|
|
202
230
|
const cellType = activeCell.model.type;
|
|
203
231
|
// If the toolbar is too large for the current cell, hide it.
|
|
204
|
-
const
|
|
205
|
-
const
|
|
232
|
+
const editorRect = (_a = activeCell.editorWidget) === null || _a === void 0 ? void 0 : _a.node.getBoundingClientRect();
|
|
233
|
+
const cellLeft = (_b = editorRect === null || editorRect === void 0 ? void 0 : editorRect.left) !== null && _b !== void 0 ? _b : 0;
|
|
234
|
+
const cellRight = (_c = editorRect === null || editorRect === void 0 ? void 0 : editorRect.right) !== null && _c !== void 0 ? _c : 0;
|
|
206
235
|
const toolbarLeft = this._cellToolbarLeft(activeCell);
|
|
207
236
|
if (toolbarLeft === null) {
|
|
208
237
|
return false;
|
|
@@ -216,7 +245,7 @@ export class CellToolbarTracker {
|
|
|
216
245
|
return this._markdownOverlapsToolbar(activeCell);
|
|
217
246
|
}
|
|
218
247
|
// Check for overlap in code content
|
|
219
|
-
if (((
|
|
248
|
+
if (((_d = this._panel) === null || _d === void 0 ? void 0 : _d.content.renderingLayout) === 'default') {
|
|
220
249
|
return this._codeOverlapsToolbar(activeCell);
|
|
221
250
|
}
|
|
222
251
|
else {
|
|
@@ -299,20 +328,12 @@ export class CellToolbarTracker {
|
|
|
299
328
|
const toolbarLeft = this._cellToolbarLeft(activeCell);
|
|
300
329
|
return toolbarLeft === null ? false : lineRight > toolbarLeft;
|
|
301
330
|
}
|
|
302
|
-
_cellEditorWidgetLeft(activeCell) {
|
|
303
|
-
var _a, _b;
|
|
304
|
-
return (_b = (_a = activeCell.editorWidget) === null || _a === void 0 ? void 0 : _a.node.getBoundingClientRect().left) !== null && _b !== void 0 ? _b : 0;
|
|
305
|
-
}
|
|
306
|
-
_cellEditorWidgetRight(activeCell) {
|
|
307
|
-
var _a, _b;
|
|
308
|
-
return (_b = (_a = activeCell.editorWidget) === null || _a === void 0 ? void 0 : _a.node.getBoundingClientRect().right) !== null && _b !== void 0 ? _b : 0;
|
|
309
|
-
}
|
|
310
331
|
_cellToolbarRect(activeCell) {
|
|
311
|
-
|
|
312
|
-
if (
|
|
332
|
+
var _a;
|
|
333
|
+
if (((_a = this._toolbar) === null || _a === void 0 ? void 0 : _a.parent) !== activeCell) {
|
|
313
334
|
return null;
|
|
314
335
|
}
|
|
315
|
-
const activeCellToolbar =
|
|
336
|
+
const activeCellToolbar = this._toolbar.node;
|
|
316
337
|
return activeCellToolbar.getBoundingClientRect();
|
|
317
338
|
}
|
|
318
339
|
_cellToolbarLeft(activeCell) {
|
|
@@ -350,7 +371,7 @@ const defaultToolbarItems = [
|
|
|
350
371
|
* Widget extension that creates a CellToolbarTracker each time a notebook is
|
|
351
372
|
* created.
|
|
352
373
|
*/
|
|
353
|
-
class CellBarExtension {
|
|
374
|
+
export class CellBarExtension {
|
|
354
375
|
constructor(commands, toolbarFactory) {
|
|
355
376
|
this._commands = commands;
|
|
356
377
|
this._toolbarFactory = toolbarFactory !== null && toolbarFactory !== void 0 ? toolbarFactory : this.defaultToolbarFactory;
|
|
@@ -367,9 +388,8 @@ class CellBarExtension {
|
|
|
367
388
|
});
|
|
368
389
|
}
|
|
369
390
|
createNew(panel) {
|
|
370
|
-
return new CellToolbarTracker(panel, this._toolbarFactory
|
|
391
|
+
return new CellToolbarTracker(panel, undefined, this._toolbarFactory);
|
|
371
392
|
}
|
|
372
393
|
}
|
|
373
394
|
CellBarExtension.FACTORY_NAME = 'Cell';
|
|
374
|
-
export { CellBarExtension };
|
|
375
395
|
//# sourceMappingURL=celltoolbartracker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"celltoolbartracker.js","sourceRoot":"","sources":["../src/celltoolbartracker.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"celltoolbartracker.js","sourceRoot":"","sources":["../src/celltoolbartracker.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jupyterlab/cell-toolbar",
|
|
3
|
-
"version": "4.1.0-alpha.
|
|
3
|
+
"version": "4.1.0-alpha.4",
|
|
4
4
|
"description": "Contextual cell toolbar adapted from jlab-enhanced-cell-toolbar",
|
|
5
5
|
"homepage": "https://github.com/jupyterlab/jupyterlab",
|
|
6
6
|
"bugs": {
|
|
@@ -41,24 +41,24 @@
|
|
|
41
41
|
},
|
|
42
42
|
"dependencies": {
|
|
43
43
|
"@jupyter/ydoc": "^1.1.1",
|
|
44
|
-
"@jupyterlab/apputils": "^4.2.0-alpha.
|
|
45
|
-
"@jupyterlab/cells": "^4.1.0-alpha.
|
|
46
|
-
"@jupyterlab/docregistry": "^4.1.0-alpha.
|
|
47
|
-
"@jupyterlab/notebook": "^4.1.0-alpha.
|
|
48
|
-
"@jupyterlab/observables": "^5.1.0-alpha.
|
|
49
|
-
"@jupyterlab/ui-components": "^4.1.0-alpha.
|
|
44
|
+
"@jupyterlab/apputils": "^4.2.0-alpha.4",
|
|
45
|
+
"@jupyterlab/cells": "^4.1.0-alpha.4",
|
|
46
|
+
"@jupyterlab/docregistry": "^4.1.0-alpha.4",
|
|
47
|
+
"@jupyterlab/notebook": "^4.1.0-alpha.4",
|
|
48
|
+
"@jupyterlab/observables": "^5.1.0-alpha.4",
|
|
49
|
+
"@jupyterlab/ui-components": "^4.1.0-alpha.4",
|
|
50
50
|
"@lumino/algorithm": "^2.0.1",
|
|
51
|
-
"@lumino/commands": "^2.
|
|
51
|
+
"@lumino/commands": "^2.2.0",
|
|
52
52
|
"@lumino/disposable": "^2.1.2",
|
|
53
53
|
"@lumino/signaling": "^2.1.2",
|
|
54
|
-
"@lumino/widgets": "^2.3.1
|
|
54
|
+
"@lumino/widgets": "^2.3.1"
|
|
55
55
|
},
|
|
56
56
|
"devDependencies": {
|
|
57
|
-
"@jupyterlab/testing": "^4.1.0-alpha.
|
|
57
|
+
"@jupyterlab/testing": "^4.1.0-alpha.4",
|
|
58
58
|
"@types/jest": "^29.2.0",
|
|
59
59
|
"jest": "^29.2.0",
|
|
60
|
-
"rimraf": "~
|
|
61
|
-
"typescript": "~5.
|
|
60
|
+
"rimraf": "~5.0.5",
|
|
61
|
+
"typescript": "~5.1.6"
|
|
62
62
|
},
|
|
63
63
|
"publishConfig": {
|
|
64
64
|
"access": "public"
|
|
@@ -2,7 +2,11 @@
|
|
|
2
2
|
| Copyright (c) Jupyter Development Team.
|
|
3
3
|
| Distributed under the terms of the Modified BSD License.
|
|
4
4
|
|----------------------------------------------------------------------------*/
|
|
5
|
-
import {
|
|
5
|
+
import {
|
|
6
|
+
createDefaultFactory,
|
|
7
|
+
setToolbar,
|
|
8
|
+
ToolbarRegistry
|
|
9
|
+
} from '@jupyterlab/apputils';
|
|
6
10
|
import {
|
|
7
11
|
Cell,
|
|
8
12
|
CellModel,
|
|
@@ -34,6 +38,7 @@ const TEXT_MIME_TYPES = [
|
|
|
34
38
|
* Widget cell toolbar classes
|
|
35
39
|
*/
|
|
36
40
|
const CELL_TOOLBAR_CLASS = 'jp-cell-toolbar';
|
|
41
|
+
// @deprecated to be removed
|
|
37
42
|
const CELL_MENU_CLASS = 'jp-cell-menu';
|
|
38
43
|
|
|
39
44
|
/**
|
|
@@ -45,45 +50,59 @@ const TOOLBAR_OVERLAP_CLASS = 'jp-toolbar-overlap';
|
|
|
45
50
|
* Watch a notebook so that a cell toolbar appears on the active cell
|
|
46
51
|
*/
|
|
47
52
|
export class CellToolbarTracker implements IDisposable {
|
|
53
|
+
/**
|
|
54
|
+
* CellToolbarTracker constructor
|
|
55
|
+
*
|
|
56
|
+
* @param panel The notebook panel
|
|
57
|
+
* @param toolbar The toolbar; deprecated use {@link toolbarFactory} instead
|
|
58
|
+
* @param toolbarFactory The toolbar factory
|
|
59
|
+
*/
|
|
48
60
|
constructor(
|
|
49
61
|
panel: NotebookPanel,
|
|
50
|
-
toolbar
|
|
62
|
+
toolbar?: IObservableList<ToolbarRegistry.IToolbarItem>,
|
|
63
|
+
toolbarFactory?: (
|
|
64
|
+
widget: Cell
|
|
65
|
+
) => IObservableList<ToolbarRegistry.IToolbarItem>
|
|
51
66
|
) {
|
|
52
67
|
this._panel = panel;
|
|
53
68
|
this._previousActiveCell = this._panel.content.activeCell;
|
|
54
|
-
this.
|
|
69
|
+
this._toolbarItems = toolbar ?? null;
|
|
70
|
+
this._toolbarFactory = toolbarFactory ?? null;
|
|
55
71
|
|
|
56
|
-
this.
|
|
57
|
-
|
|
72
|
+
if (this._toolbarItems === null && this._toolbarFactory === null) {
|
|
73
|
+
throw Error('You must provide the toolbarFactory or the toolbar items.');
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
// deprecated to be removed when we remove toolbar from input arguments
|
|
77
|
+
if (!this._toolbarFactory && this._toolbarItems) {
|
|
78
|
+
this._onToolbarChanged();
|
|
79
|
+
this._toolbarItems.changed.connect(this._onToolbarChanged, this);
|
|
80
|
+
}
|
|
58
81
|
|
|
59
82
|
// Only add the toolbar to the notebook's active cell (if any) once it has fully rendered and been revealed.
|
|
60
83
|
void panel.revealed.then(() => {
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
this._onActiveCellChanged(
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
this
|
|
78
|
-
);
|
|
79
|
-
panel.disposed.connect(() => {
|
|
80
|
-
panel.content.activeCellChanged.disconnect(this._onActiveCellChanged);
|
|
81
|
-
panel.content.activeCell?.model.metadataChanged.disconnect(
|
|
82
|
-
this._onMetadataChanged
|
|
83
|
-
);
|
|
84
|
+
requestAnimationFrame(() => {
|
|
85
|
+
const notebook = panel.content;
|
|
86
|
+
this._onActiveCellChanged(notebook);
|
|
87
|
+
// Handle subsequent changes of active cell.
|
|
88
|
+
notebook.activeCellChanged.connect(this._onActiveCellChanged, this);
|
|
89
|
+
|
|
90
|
+
// Check whether the toolbar should be rendered upon a layout change
|
|
91
|
+
notebook.renderingLayoutChanged.connect(
|
|
92
|
+
this._onActiveCellChanged,
|
|
93
|
+
this
|
|
94
|
+
);
|
|
95
|
+
|
|
96
|
+
notebook.disposed.connect(() => {
|
|
97
|
+
notebook.activeCellChanged.disconnect(this._onActiveCellChanged);
|
|
98
|
+
});
|
|
99
|
+
});
|
|
84
100
|
});
|
|
85
101
|
}
|
|
86
102
|
|
|
103
|
+
/**
|
|
104
|
+
* @deprecated Will become protected in JupyterLab 5
|
|
105
|
+
*/
|
|
87
106
|
_onMetadataChanged(model: CellModel, args: IMapChange) {
|
|
88
107
|
if (args.key === 'jupyter') {
|
|
89
108
|
if (
|
|
@@ -104,6 +123,10 @@ export class CellToolbarTracker implements IDisposable {
|
|
|
104
123
|
}
|
|
105
124
|
}
|
|
106
125
|
}
|
|
126
|
+
|
|
127
|
+
/**
|
|
128
|
+
* @deprecated Will become protected in JupyterLab 5
|
|
129
|
+
*/
|
|
107
130
|
_onActiveCellChanged(notebook: Notebook): void {
|
|
108
131
|
if (this._previousActiveCell && !this._previousActiveCell.isDisposed) {
|
|
109
132
|
// Disposed cells do not have a model anymore.
|
|
@@ -134,14 +157,8 @@ export class CellToolbarTracker implements IDisposable {
|
|
|
134
157
|
}
|
|
135
158
|
this._isDisposed = true;
|
|
136
159
|
|
|
137
|
-
this.
|
|
138
|
-
|
|
139
|
-
const cells = this._panel?.context.model.cells;
|
|
140
|
-
if (cells) {
|
|
141
|
-
for (const model of cells) {
|
|
142
|
-
this._removeToolbar(model);
|
|
143
|
-
}
|
|
144
|
-
}
|
|
160
|
+
this._toolbarItems?.changed.disconnect(this._onToolbarChanged, this);
|
|
161
|
+
this._toolbar?.dispose();
|
|
145
162
|
|
|
146
163
|
this._panel = null;
|
|
147
164
|
|
|
@@ -151,26 +168,39 @@ export class CellToolbarTracker implements IDisposable {
|
|
|
151
168
|
private _addToolbar(model: ICellModel): void {
|
|
152
169
|
const cell = this._getCell(model);
|
|
153
170
|
|
|
154
|
-
if (cell) {
|
|
155
|
-
const toolbarWidget = new Toolbar();
|
|
171
|
+
if (cell && !cell.isDisposed) {
|
|
172
|
+
const toolbarWidget = (this._toolbar = new Toolbar());
|
|
173
|
+
// Note: CELL_MENU_CLASS is deprecated.
|
|
156
174
|
toolbarWidget.addClass(CELL_MENU_CLASS);
|
|
157
|
-
|
|
158
|
-
const promises: Promise<void>[] = [];
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
(
|
|
164
|
-
)
|
|
165
|
-
|
|
166
|
-
|
|
175
|
+
toolbarWidget.addClass(CELL_TOOLBAR_CLASS);
|
|
176
|
+
const promises: Promise<void>[] = [cell.ready];
|
|
177
|
+
if (this._toolbarFactory) {
|
|
178
|
+
setToolbar(cell, this._toolbarFactory, toolbarWidget);
|
|
179
|
+
// FIXME toolbarWidget.update() - strangely this does not work
|
|
180
|
+
(toolbarWidget.layout as PanelLayout).widgets.forEach(w => {
|
|
181
|
+
w.update();
|
|
182
|
+
});
|
|
183
|
+
} else {
|
|
184
|
+
for (const { name, widget } of this._toolbarItems!) {
|
|
185
|
+
toolbarWidget.addItem(name, widget);
|
|
186
|
+
if (
|
|
187
|
+
widget instanceof ReactWidget &&
|
|
188
|
+
(widget as ReactWidget).renderPromise !== undefined
|
|
189
|
+
) {
|
|
190
|
+
(widget as ReactWidget).update();
|
|
191
|
+
promises.push((widget as ReactWidget).renderPromise!);
|
|
192
|
+
}
|
|
167
193
|
}
|
|
168
194
|
}
|
|
169
195
|
|
|
170
196
|
// Wait for all the buttons to be rendered before attaching the toolbar.
|
|
171
197
|
Promise.all(promises)
|
|
172
198
|
.then(() => {
|
|
173
|
-
|
|
199
|
+
if (cell.isDisposed || this._panel?.content.activeCell !== cell) {
|
|
200
|
+
toolbarWidget.dispose();
|
|
201
|
+
return;
|
|
202
|
+
}
|
|
203
|
+
|
|
174
204
|
(cell.layout as PanelLayout).insertWidget(0, toolbarWidget);
|
|
175
205
|
|
|
176
206
|
// For rendered markdown, watch for resize events.
|
|
@@ -192,27 +222,22 @@ export class CellToolbarTracker implements IDisposable {
|
|
|
192
222
|
return this._panel?.content.widgets.find(widget => widget.model === model);
|
|
193
223
|
}
|
|
194
224
|
|
|
195
|
-
private _findToolbarWidgets(cell: Cell): Widget[] {
|
|
196
|
-
const widgets = (cell.layout as PanelLayout).widgets;
|
|
197
|
-
|
|
198
|
-
// Search for header using the CSS class or use the first one if not found.
|
|
199
|
-
return widgets.filter(widget => widget.hasClass(CELL_TOOLBAR_CLASS)) || [];
|
|
200
|
-
}
|
|
201
|
-
|
|
202
225
|
private _removeToolbar(model: ICellModel): void {
|
|
203
226
|
const cell = this._getCell(model);
|
|
204
|
-
if (cell) {
|
|
205
|
-
this._findToolbarWidgets(cell).forEach(widget => {
|
|
206
|
-
widget.dispose();
|
|
207
|
-
});
|
|
227
|
+
if (cell && !cell.isDisposed) {
|
|
208
228
|
// Attempt to remove the resize and changed event handlers.
|
|
209
229
|
cell.displayChanged.disconnect(this._resizeEventCallback, this);
|
|
210
230
|
}
|
|
211
231
|
model.contentChanged.disconnect(this._changedEventCallback, this);
|
|
232
|
+
if (this._toolbar?.parent === cell && this._toolbar?.isDisposed === false) {
|
|
233
|
+
this._toolbar.dispose();
|
|
234
|
+
}
|
|
212
235
|
}
|
|
213
236
|
|
|
214
237
|
/**
|
|
215
238
|
* Call back on settings changes
|
|
239
|
+
*
|
|
240
|
+
* @deprecated To remove when toolbar can not be provided directly to the tracker
|
|
216
241
|
*/
|
|
217
242
|
private _onToolbarChanged(): void {
|
|
218
243
|
// Reset toolbar when settings changes
|
|
@@ -262,8 +287,10 @@ export class CellToolbarTracker implements IDisposable {
|
|
|
262
287
|
const cellType = activeCell.model.type;
|
|
263
288
|
|
|
264
289
|
// If the toolbar is too large for the current cell, hide it.
|
|
265
|
-
|
|
266
|
-
const
|
|
290
|
+
|
|
291
|
+
const editorRect = activeCell.editorWidget?.node.getBoundingClientRect();
|
|
292
|
+
const cellLeft = editorRect?.left ?? 0;
|
|
293
|
+
const cellRight = editorRect?.right ?? 0;
|
|
267
294
|
const toolbarLeft = this._cellToolbarLeft(activeCell);
|
|
268
295
|
|
|
269
296
|
if (toolbarLeft === null) {
|
|
@@ -385,20 +412,11 @@ export class CellToolbarTracker implements IDisposable {
|
|
|
385
412
|
return toolbarLeft === null ? false : lineRight > toolbarLeft;
|
|
386
413
|
}
|
|
387
414
|
|
|
388
|
-
private _cellEditorWidgetLeft(activeCell: Cell<ICellModel>): number {
|
|
389
|
-
return activeCell.editorWidget?.node.getBoundingClientRect().left ?? 0;
|
|
390
|
-
}
|
|
391
|
-
|
|
392
|
-
private _cellEditorWidgetRight(activeCell: Cell<ICellModel>): number {
|
|
393
|
-
return activeCell.editorWidget?.node.getBoundingClientRect().right ?? 0;
|
|
394
|
-
}
|
|
395
|
-
|
|
396
415
|
private _cellToolbarRect(activeCell: Cell<ICellModel>): DOMRect | null {
|
|
397
|
-
|
|
398
|
-
if (toolbarWidgets.length < 1) {
|
|
416
|
+
if (this._toolbar?.parent !== activeCell) {
|
|
399
417
|
return null;
|
|
400
418
|
}
|
|
401
|
-
const activeCellToolbar =
|
|
419
|
+
const activeCellToolbar = this._toolbar.node;
|
|
402
420
|
|
|
403
421
|
return activeCellToolbar.getBoundingClientRect();
|
|
404
422
|
}
|
|
@@ -410,7 +428,12 @@ export class CellToolbarTracker implements IDisposable {
|
|
|
410
428
|
private _isDisposed = false;
|
|
411
429
|
private _panel: NotebookPanel | null;
|
|
412
430
|
private _previousActiveCell: Cell<ICellModel> | null;
|
|
413
|
-
private _toolbar:
|
|
431
|
+
private _toolbar: Widget | null = null;
|
|
432
|
+
private _toolbarItems: IObservableList<ToolbarRegistry.IToolbarItem> | null =
|
|
433
|
+
null;
|
|
434
|
+
private _toolbarFactory:
|
|
435
|
+
| ((widget: Cell) => IObservableList<ToolbarRegistry.IToolbarItem>)
|
|
436
|
+
| null = null;
|
|
414
437
|
}
|
|
415
438
|
|
|
416
439
|
const defaultToolbarItems: ToolbarRegistry.IWidget[] = [
|
|
@@ -445,7 +468,7 @@ const defaultToolbarItems: ToolbarRegistry.IWidget[] = [
|
|
|
445
468
|
* created.
|
|
446
469
|
*/
|
|
447
470
|
export class CellBarExtension implements DocumentRegistry.WidgetExtension {
|
|
448
|
-
static FACTORY_NAME = 'Cell';
|
|
471
|
+
static readonly FACTORY_NAME = 'Cell';
|
|
449
472
|
|
|
450
473
|
constructor(
|
|
451
474
|
commands: CommandRegistry,
|
|
@@ -473,7 +496,7 @@ export class CellBarExtension implements DocumentRegistry.WidgetExtension {
|
|
|
473
496
|
}
|
|
474
497
|
|
|
475
498
|
createNew(panel: NotebookPanel): IDisposable {
|
|
476
|
-
return new CellToolbarTracker(panel, this._toolbarFactory
|
|
499
|
+
return new CellToolbarTracker(panel, undefined, this._toolbarFactory);
|
|
477
500
|
}
|
|
478
501
|
|
|
479
502
|
private _commands: CommandRegistry;
|
package/style/base.css
CHANGED
|
@@ -18,40 +18,34 @@
|
|
|
18
18
|
.jp-cell-toolbar {
|
|
19
19
|
display: flex;
|
|
20
20
|
flex-direction: row;
|
|
21
|
-
padding:
|
|
21
|
+
padding: 0;
|
|
22
22
|
min-height: 25px;
|
|
23
23
|
z-index: 6;
|
|
24
24
|
position: absolute;
|
|
25
|
-
top: 5px;
|
|
26
25
|
right: 8px;
|
|
27
26
|
|
|
28
27
|
/* Override .jp-Toolbar */
|
|
29
28
|
background-color: transparent;
|
|
30
29
|
border-bottom: inherit;
|
|
31
|
-
box-shadow:
|
|
30
|
+
box-shadow: none;
|
|
32
31
|
}
|
|
33
32
|
|
|
34
33
|
/* Overrides for mobile view hiding cell toolbar */
|
|
35
34
|
@media only screen and (width <= 760px) {
|
|
36
|
-
.jp-cell-
|
|
35
|
+
.jp-cell-toolbar {
|
|
37
36
|
display: none;
|
|
38
37
|
}
|
|
39
38
|
}
|
|
40
39
|
|
|
41
|
-
.jp-cell-
|
|
42
|
-
display: flex;
|
|
43
|
-
flex-direction: row;
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
.jp-cell-menu button.jp-ToolbarButtonComponent {
|
|
40
|
+
.jp-cell-toolbar button.jp-ToolbarButtonComponent {
|
|
47
41
|
cursor: pointer;
|
|
48
42
|
}
|
|
49
43
|
|
|
50
|
-
.jp-cell-
|
|
44
|
+
.jp-cell-toolbar .jp-ToolbarButton button {
|
|
51
45
|
display: none;
|
|
52
46
|
}
|
|
53
47
|
|
|
54
|
-
.jp-cell-
|
|
48
|
+
.jp-cell-toolbar .jp-ToolbarButton .jp-cell-all,
|
|
55
49
|
.jp-CodeCell .jp-ToolbarButton .jp-cell-code,
|
|
56
50
|
.jp-MarkdownCell .jp-ToolbarButton .jp-cell-markdown,
|
|
57
51
|
.jp-RawCell .jp-ToolbarButton .jp-cell-raw {
|