@theia/notebook 1.62.0-next.3 → 1.62.0

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.
Files changed (36) hide show
  1. package/lib/browser/contributions/notebook-actions-contribution.d.ts +2 -2
  2. package/lib/browser/contributions/notebook-actions-contribution.d.ts.map +1 -1
  3. package/lib/browser/contributions/notebook-actions-contribution.js +6 -8
  4. package/lib/browser/contributions/notebook-actions-contribution.js.map +1 -1
  5. package/lib/browser/contributions/notebook-cell-actions-contribution.d.ts +2 -2
  6. package/lib/browser/contributions/notebook-cell-actions-contribution.d.ts.map +1 -1
  7. package/lib/browser/contributions/notebook-cell-actions-contribution.js +11 -12
  8. package/lib/browser/contributions/notebook-cell-actions-contribution.js.map +1 -1
  9. package/lib/browser/service/notebook-context-manager.d.ts +1 -3
  10. package/lib/browser/service/notebook-context-manager.d.ts.map +1 -1
  11. package/lib/browser/service/notebook-context-manager.js +0 -10
  12. package/lib/browser/service/notebook-context-manager.js.map +1 -1
  13. package/lib/browser/view/notebook-cell-list-view.d.ts +2 -2
  14. package/lib/browser/view/notebook-cell-list-view.d.ts.map +1 -1
  15. package/lib/browser/view/notebook-cell-list-view.js +15 -8
  16. package/lib/browser/view/notebook-cell-list-view.js.map +1 -1
  17. package/lib/browser/view/notebook-cell-toolbar-factory.d.ts +4 -2
  18. package/lib/browser/view/notebook-cell-toolbar-factory.d.ts.map +1 -1
  19. package/lib/browser/view/notebook-cell-toolbar-factory.js +30 -19
  20. package/lib/browser/view/notebook-cell-toolbar-factory.js.map +1 -1
  21. package/lib/browser/view/notebook-cell-toolbar.d.ts +1 -2
  22. package/lib/browser/view/notebook-cell-toolbar.d.ts.map +1 -1
  23. package/lib/browser/view/notebook-cell-toolbar.js +2 -4
  24. package/lib/browser/view/notebook-cell-toolbar.js.map +1 -1
  25. package/lib/browser/view/notebook-main-toolbar.d.ts +3 -4
  26. package/lib/browser/view/notebook-main-toolbar.d.ts.map +1 -1
  27. package/lib/browser/view/notebook-main-toolbar.js +22 -45
  28. package/lib/browser/view/notebook-main-toolbar.js.map +1 -1
  29. package/package.json +8 -8
  30. package/src/browser/contributions/notebook-actions-contribution.ts +7 -9
  31. package/src/browser/contributions/notebook-cell-actions-contribution.ts +14 -14
  32. package/src/browser/service/notebook-context-manager.ts +1 -15
  33. package/src/browser/view/notebook-cell-list-view.tsx +25 -18
  34. package/src/browser/view/notebook-cell-toolbar-factory.tsx +35 -23
  35. package/src/browser/view/notebook-cell-toolbar.tsx +3 -6
  36. package/src/browser/view/notebook-main-toolbar.tsx +23 -49
@@ -25,47 +25,58 @@ const notebook_cell_toolbar_1 = require("./notebook-cell-toolbar");
25
25
  const browser_1 = require("@theia/core/lib/browser");
26
26
  const notebook_context_manager_1 = require("../service/notebook-context-manager");
27
27
  let NotebookCellToolbarFactory = class NotebookCellToolbarFactory {
28
+ constructor() {
29
+ this.onDidChangeContextEmitter = new core_1.Emitter;
30
+ this.onDidChangeContext = this.onDidChangeContextEmitter.event;
31
+ this.toDisposeOnRender = new core_1.DisposableCollection();
32
+ }
28
33
  renderCellToolbar(menuPath, cell, itemOptions) {
29
- return React.createElement(notebook_cell_toolbar_1.NotebookCellToolbar, { getMenuItems: () => this.getMenuItems(menuPath, cell, itemOptions), onContextKeysChanged: this.notebookContextManager.onDidChangeContext });
34
+ return React.createElement(notebook_cell_toolbar_1.NotebookCellToolbar, { getMenuItems: () => this.getMenuItems(menuPath, cell, itemOptions), onContextChanged: this.onDidChangeContext });
30
35
  }
31
36
  renderSidebar(menuPath, cell, itemOptions) {
32
- return React.createElement(notebook_cell_toolbar_1.NotebookCellSidebar, { getMenuItems: () => this.getMenuItems(menuPath, cell, itemOptions), onContextKeysChanged: this.notebookContextManager.onDidChangeContext });
37
+ return React.createElement(notebook_cell_toolbar_1.NotebookCellSidebar, { getMenuItems: () => this.getMenuItems(menuPath, cell, itemOptions), onContextChanged: this.onDidChangeContext });
33
38
  }
34
39
  getMenuItems(menuItemPath, cell, itemOptions) {
35
40
  var _a, _b;
41
+ this.toDisposeOnRender.dispose();
42
+ this.toDisposeOnRender = new core_1.DisposableCollection();
36
43
  const inlineItems = [];
37
44
  for (const menuNode of this.menuRegistry.getMenu(menuItemPath).children) {
38
- if (!menuNode.when || this.notebookContextManager.getCellContext(cell.handle).match(menuNode.when, this.notebookContextManager.context)) {
39
- if (menuNode.role === 2 /* CompoundMenuNodeRole.Flat */) {
40
- inlineItems.push(...(_b = (_a = menuNode.children) === null || _a === void 0 ? void 0 : _a.map(child => this.createToolbarItem(child, itemOptions))) !== null && _b !== void 0 ? _b : []);
41
- }
42
- else {
43
- inlineItems.push(this.createToolbarItem(menuNode, itemOptions));
45
+ const itemPath = [...menuItemPath, menuNode.id];
46
+ if (menuNode.isVisible(itemPath, this.notebookContextManager.getCellContext(cell.handle), this.notebookContextManager.context, (_b = (_a = itemOptions.commandArgs) === null || _a === void 0 ? void 0 : _a.call(itemOptions)) !== null && _b !== void 0 ? _b : [])) {
47
+ if (core_1.RenderedMenuNode.is(menuNode)) {
48
+ if (menuNode.onDidChange) {
49
+ this.toDisposeOnRender.push(menuNode.onDidChange(() => this.onDidChangeContextEmitter.fire()));
50
+ }
51
+ inlineItems.push(this.createToolbarItem(itemPath, menuNode, itemOptions));
44
52
  }
45
53
  }
46
54
  }
47
55
  return inlineItems;
48
56
  }
49
- createToolbarItem(menuNode, itemOptions) {
50
- const menuPath = menuNode.role === 0 /* CompoundMenuNodeRole.Submenu */ ? this.menuRegistry.getPath(menuNode) : undefined;
57
+ createToolbarItem(menuPath, menuNode, itemOptions) {
51
58
  return {
52
59
  id: menuNode.id,
53
60
  icon: menuNode.icon,
54
61
  label: menuNode.label,
55
- onClick: menuPath ?
56
- e => {
57
- var _a;
58
- return this.contextMenuRenderer.render({
62
+ onClick: e => {
63
+ var _a, _b, _c;
64
+ if (core_1.CompoundMenuNode.is(menuNode)) {
65
+ this.contextMenuRenderer.render({
59
66
  anchor: e.nativeEvent,
60
- menuPath,
67
+ menuPath: menuPath,
68
+ menu: menuNode,
61
69
  includeAnchorArg: false,
62
70
  args: (_a = itemOptions.contextMenuArgs) === null || _a === void 0 ? void 0 : _a.call(itemOptions),
63
71
  context: this.notebookContextManager.context || e.currentTarget
64
72
  });
65
- } :
66
- () => { var _a, _b; return this.commandRegistry.executeCommand(menuNode.command, ...((_b = (_a = itemOptions.commandArgs) === null || _a === void 0 ? void 0 : _a.call(itemOptions)) !== null && _b !== void 0 ? _b : [])); },
67
- isVisible: () => { var _a, _b; return menuPath ? true : Boolean(this.commandRegistry.getVisibleHandler(menuNode.command, ...((_b = (_a = itemOptions.commandArgs) === null || _a === void 0 ? void 0 : _a.call(itemOptions)) !== null && _b !== void 0 ? _b : []))); },
68
- contextKeys: menuNode.when ? this.contextKeyService.parseKeys(menuNode.when) : undefined
73
+ }
74
+ else if (core_1.CommandMenu.is(menuNode)) {
75
+ menuNode.run(menuPath, ...((_c = (_b = itemOptions.commandArgs) === null || _b === void 0 ? void 0 : _b.call(itemOptions)) !== null && _c !== void 0 ? _c : []));
76
+ }
77
+ ;
78
+ },
79
+ isVisible: () => true
69
80
  };
70
81
  }
71
82
  };
@@ -1 +1 @@
1
- {"version":3,"file":"notebook-cell-toolbar-factory.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-cell-toolbar-factory.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"notebook-cell-toolbar-factory.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-cell-toolbar-factory.tsx"],"names":[],"mappings":"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"}
@@ -2,10 +2,9 @@
2
2
  import * as React from '@theia/core/shared/react';
3
3
  import { NotebookCellToolbarItem } from './notebook-cell-toolbar-factory';
4
4
  import { DisposableCollection, Event } from '@theia/core';
5
- import { ContextKeyChangeEvent } from '@theia/core/lib/browser/context-key-service';
6
5
  export interface NotebookCellToolbarProps {
7
6
  getMenuItems: () => NotebookCellToolbarItem[];
8
- onContextKeysChanged: Event<ContextKeyChangeEvent>;
7
+ onContextChanged: Event<void>;
9
8
  }
10
9
  interface NotebookCellToolbarState {
11
10
  inlineItems: NotebookCellToolbarItem[];
@@ -1 +1 @@
1
- {"version":3,"file":"notebook-cell-toolbar.d.ts","sourceRoot":"","sources":["../../../src/browser/view/notebook-cell-toolbar.tsx"],"names":[],"mappings":";AAeA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,6CAA6C,CAAC;AAEpF,MAAM,WAAW,wBAAwB;IACrC,YAAY,EAAE,MAAM,uBAAuB,EAAE,CAAC;IAC9C,oBAAoB,EAAE,KAAK,CAAC,qBAAqB,CAAC,CAAC;CACtD;AAED,UAAU,wBAAwB;IAC9B,WAAW,EAAE,uBAAuB,EAAE,CAAC;CAC1C;AAED,uBAAe,qBAAsB,SAAQ,KAAK,CAAC,SAAS,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;IAE5G,SAAS,CAAC,SAAS,uBAA8B;gBAErC,KAAK,EAAE,wBAAwB;IAWlC,oBAAoB,IAAI,IAAI;IAIrC,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,uBAAuB,GAAG,KAAK,CAAC,SAAS;CAIvE;AAED,qBAAa,mBAAoB,SAAQ,qBAAqB;IAEjD,MAAM,IAAI,KAAK,CAAC,SAAS;CAMrC;AAED,qBAAa,mBAAoB,SAAQ,qBAAqB;IAEjD,MAAM,IAAI,KAAK,CAAC,SAAS;CAKrC"}
1
+ {"version":3,"file":"notebook-cell-toolbar.d.ts","sourceRoot":"","sources":["../../../src/browser/view/notebook-cell-toolbar.tsx"],"names":[],"mappings":";AAeA,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAElD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAE1D,MAAM,WAAW,wBAAwB;IACrC,YAAY,EAAE,MAAM,uBAAuB,EAAE,CAAC;IAC9C,gBAAgB,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;CACjC;AAED,UAAU,wBAAwB;IAC9B,WAAW,EAAE,uBAAuB,EAAE,CAAC;CAC1C;AAED,uBAAe,qBAAsB,SAAQ,KAAK,CAAC,SAAS,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;IAE5G,SAAS,CAAC,SAAS,uBAA8B;gBAErC,KAAK,EAAE,wBAAwB;IASlC,oBAAoB,IAAI,IAAI;IAIrC,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,uBAAuB,GAAG,KAAK,CAAC,SAAS;CAIvE;AAED,qBAAa,mBAAoB,SAAQ,qBAAqB;IAEjD,MAAM,IAAI,KAAK,CAAC,SAAS;CAMrC;AAED,qBAAa,mBAAoB,SAAQ,qBAAqB;IAEjD,MAAM,IAAI,KAAK,CAAC,SAAS;CAKrC"}
@@ -23,11 +23,9 @@ class NotebookCellActionBar extends React.Component {
23
23
  constructor(props) {
24
24
  super(props);
25
25
  this.toDispose = new core_1.DisposableCollection();
26
- this.toDispose.push(props.onContextKeysChanged(e => {
26
+ this.toDispose.push(props.onContextChanged(e => {
27
27
  const menuItems = this.props.getMenuItems();
28
- if (menuItems.some(item => item.contextKeys ? e.affects(item.contextKeys) : false)) {
29
- this.setState({ inlineItems: menuItems });
30
- }
28
+ this.setState({ inlineItems: menuItems });
31
29
  }));
32
30
  this.state = { inlineItems: this.props.getMenuItems() };
33
31
  }
@@ -1 +1 @@
1
- {"version":3,"file":"notebook-cell-toolbar.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-cell-toolbar.tsx"],"names":[],"mappings":";;;AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,kDAAkD;AAClD,qDAAsD;AAEtD,sCAA0D;AAY1D,MAAe,qBAAsB,SAAQ,KAAK,CAAC,SAA6D;IAI5G,YAAY,KAA+B;QACvC,KAAK,CAAC,KAAK,CAAC,CAAC;QAHP,cAAS,GAAG,IAAI,2BAAoB,EAAE,CAAC;QAI7C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC,CAAC,EAAE;YAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;YAC5C,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;gBACjF,IAAI,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC;YAC9C,CAAC;QACL,CAAC,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC,KAAK,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC;IAC5D,CAAC;IAEQ,oBAAoB;QACzB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAES,UAAU,CAAC,IAA6B;QAC9C,OAAO,6BAAK,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI,qBAAW,mCAAmC,GAAI,CAAC;IACnK,CAAC;CAEJ;AAED,MAAa,mBAAoB,SAAQ,qBAAqB;IAEjD,MAAM;QACX,OAAO,6BAAK,SAAS,EAAC,6BAA6B,IAC9C,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CACnF,CAAC;IACX,CAAC;CAEJ;AARD,kDAQC;AAED,MAAa,mBAAoB,SAAQ,qBAAqB;IAEjD,MAAM;QACX,OAAO,6BAAK,SAAS,EAAC,qCAAqC,IACtD,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CACnF,CAAC;IACX,CAAC;CACJ;AAPD,kDAOC"}
1
+ {"version":3,"file":"notebook-cell-toolbar.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-cell-toolbar.tsx"],"names":[],"mappings":";;;AAAA,gFAAgF;AAChF,yCAAyC;AACzC,EAAE;AACF,2EAA2E;AAC3E,mEAAmE;AACnE,wCAAwC;AACxC,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,6EAA6E;AAC7E,yDAAyD;AACzD,uDAAuD;AACvD,EAAE;AACF,gFAAgF;AAChF,gFAAgF;AAChF,kDAAkD;AAClD,qDAAsD;AAEtD,sCAA0D;AAW1D,MAAe,qBAAsB,SAAQ,KAAK,CAAC,SAA6D;IAI5G,YAAY,KAA+B;QACvC,KAAK,CAAC,KAAK,CAAC,CAAC;QAHP,cAAS,GAAG,IAAI,2BAAoB,EAAE,CAAC;QAI7C,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE;YAC3C,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,CAAC;YAC5C,IAAI,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC,CAAC;QAC9C,CAAC,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC,KAAK,GAAG,EAAE,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,YAAY,EAAE,EAAE,CAAC;IAC5D,CAAC;IAEQ,oBAAoB;QACzB,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC;IAC7B,CAAC;IAES,UAAU,CAAC,IAA6B;QAC9C,OAAO,6BAAK,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,IAAI,IAAI,qBAAW,mCAAmC,GAAI,CAAC;IACnK,CAAC;CAEJ;AAED,MAAa,mBAAoB,SAAQ,qBAAqB;IAEjD,MAAM;QACX,OAAO,6BAAK,SAAS,EAAC,6BAA6B,IAC9C,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CACnF,CAAC;IACX,CAAC;CAEJ;AARD,kDAQC;AAED,MAAa,mBAAoB,SAAQ,qBAAqB;IAEjD,MAAM;QACX,OAAO,6BAAK,SAAS,EAAC,qCAAqC,IACtD,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CACnF,CAAC;IACX,CAAC;CACJ;AAPD,kDAOC"}
@@ -1,5 +1,5 @@
1
1
  /// <reference types="react" />
2
- import { CommandRegistry, DisposableCollection, MenuModelRegistry, MenuNode } from '@theia/core';
2
+ import { CommandMenu, CommandRegistry, DisposableCollection, MenuModelRegistry, MenuNode, MenuPath } from '@theia/core';
3
3
  import * as React from '@theia/core/shared/react';
4
4
  import { ContextMenuRenderer } from '@theia/core/lib/browser';
5
5
  import { NotebookModel } from '../view-model/notebook-model';
@@ -44,10 +44,9 @@ export declare class NotebookMainToolbar extends React.Component<NotebookMainToo
44
44
  protected renderContextMenu(event: MouseEvent, menuItems: readonly MenuNode[]): void;
45
45
  render(): React.ReactNode;
46
46
  protected gapElementChanged(element: HTMLDivElement | null): void;
47
- protected renderMenuItem(item: MenuNode, submenu?: string): React.ReactNode;
47
+ protected renderMenuItem<T>(itemPath: MenuPath, item: MenuNode, submenu?: string): React.ReactNode;
48
48
  protected getMenuItems(): readonly MenuNode[];
49
- protected getAdditionalClasses(item: MenuNode): string;
50
- protected getAllContextKeys(menus: readonly MenuNode[], keySet: Set<string>): void;
49
+ protected getAdditionalClasses(itemPath: MenuPath, item: CommandMenu): string;
51
50
  protected calculateNumberOfHiddenItems(allMenuItems: readonly MenuNode[]): number;
52
51
  }
53
52
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"notebook-main-toolbar.d.ts","sourceRoot":"","sources":["../../../src/browser/view/notebook-main-toolbar.tsx"],"names":[],"mappings":";AAeA,OAAO,EAAc,eAAe,EAAwB,oBAAoB,EAAE,iBAAiB,EAAE,QAAQ,EAAO,MAAM,aAAa,CAAC;AACxI,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAW,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAEvE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAE3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAEhF,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAE7E,MAAM,WAAW,wBAAwB;IACrC,aAAa,EAAE,aAAa,CAAA;IAC5B,YAAY,EAAE,iBAAiB,CAAC;IAChC,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,eAAe,EAAE,eAAe,CAAC;IACjC,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,UAAU,EAAE,WAAW,CAAC;IACxB,sBAAsB,EAAE,sBAAsB,CAAC;IAC/C,mBAAmB,EAAE,mBAAmB,CAAC;CAC5C;AAED,qBACa,2BAA2B;IACL,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IACtE,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAClD,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACnD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACnD,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IACrE,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAEzF,MAAM,CAAC,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,GAAG,KAAK,CAAC,SAAS;CAUjF;AAED,UAAU,wBAAwB;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mBAAmB,EAAE,MAAM,CAAC;CAC/B;AAED,qBAAa,mBAAoB,SAAQ,KAAK,CAAC,SAAS,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;IAGxG,MAAM,CAAC,QAAQ,CAAC,aAAa,MAAM;IAEnC,SAAS,CAAC,SAAS,uBAA8B;IAEjD,SAAS,CAAC,cAAc,WAEiG;IAEzH,SAAS,CAAC,UAAU,EAAE,cAAc,GAAG,SAAS,CAAC;IACjD,SAAS,CAAC,mBAAmB,EAAE,MAAM,CAAK;IAE1C,SAAS,CAAC,cAAc,EAAE,cAAc,CAAyD;gBAErF,KAAK,EAAE,wBAAwB;IAmClC,oBAAoB,IAAI,IAAI;IAI5B,kBAAkB,IAAI,IAAI;IAI1B,iBAAiB,IAAI,IAAI;IAIlC,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAWtC,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,QAAQ,EAAE,GAAG,IAAI;IAe3E,MAAM,IAAI,KAAK,CAAC,SAAS;IAmBlC,SAAS,CAAC,iBAAiB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,GAAG,IAAI;IAWjE,SAAS,CAAC,cAAc,CAAC,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS;IA4B3E,SAAS,CAAC,YAAY,IAAI,SAAS,QAAQ,EAAE;IAO7C,SAAS,CAAC,oBAAoB,CAAC,IAAI,EAAE,QAAQ,GAAG,MAAM;IAItD,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,SAAS,QAAQ,EAAE,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI;IAQlF,SAAS,CAAC,4BAA4B,CAAC,YAAY,EAAE,SAAS,QAAQ,EAAE,GAAG,MAAM;CAKpF"}
1
+ {"version":3,"file":"notebook-main-toolbar.d.ts","sourceRoot":"","sources":["../../../src/browser/view/notebook-main-toolbar.tsx"],"names":[],"mappings":";AAeA,OAAO,EAAc,WAAW,EAAE,eAAe,EAAE,oBAAoB,EAAoB,iBAAiB,EAAE,QAAQ,EAAE,QAAQ,EAAO,MAAM,aAAa,CAAC;AAC3J,OAAO,KAAK,KAAK,MAAM,0BAA0B,CAAC;AAClD,OAAO,EAAW,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAEvE,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAE3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AAChF,OAAO,EAAE,sBAAsB,EAAE,MAAM,qCAAqC,CAAC;AAE7E,MAAM,WAAW,wBAAwB;IACrC,aAAa,EAAE,aAAa,CAAA;IAC5B,YAAY,EAAE,iBAAiB,CAAC;IAChC,qBAAqB,EAAE,qBAAqB,CAAC;IAC7C,eAAe,EAAE,eAAe,CAAC;IACjC,iBAAiB,EAAE,iBAAiB,CAAC;IACrC,UAAU,EAAE,WAAW,CAAC;IACxB,sBAAsB,EAAE,sBAAsB,CAAC;IAC/C,mBAAmB,EAAE,mBAAmB,CAAC;CAC5C;AAED,qBACa,2BAA2B;IACL,SAAS,CAAC,QAAQ,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IACtE,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAClD,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC;IACnD,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IACnD,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IACrE,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAEzF,MAAM,CAAC,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,WAAW,GAAG,KAAK,CAAC,SAAS;CAUjF;AAED,UAAU,wBAAwB;IAC9B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,mBAAmB,EAAE,MAAM,CAAC;CAC/B;AAED,qBAAa,mBAAoB,SAAQ,KAAK,CAAC,SAAS,CAAC,wBAAwB,EAAE,wBAAwB,CAAC;IAGxG,MAAM,CAAC,QAAQ,CAAC,aAAa,MAAM;IAEnC,SAAS,CAAC,SAAS,uBAA8B;IAEjD,SAAS,CAAC,cAAc,WAEiG;IAEzH,SAAS,CAAC,UAAU,EAAE,cAAc,GAAG,SAAS,CAAC;IACjD,SAAS,CAAC,mBAAmB,EAAE,MAAM,CAAK;IAE1C,SAAS,CAAC,cAAc,EAAE,cAAc,CAAyD;gBAErF,KAAK,EAAE,wBAAwB;IA4BlC,oBAAoB,IAAI,IAAI;IAI5B,kBAAkB,IAAI,IAAI;IAI1B,iBAAiB,IAAI,IAAI;IAIlC,SAAS,CAAC,oBAAoB,IAAI,IAAI;IAWtC,SAAS,CAAC,iBAAiB,CAAC,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,QAAQ,EAAE,GAAG,IAAI;IAiB3E,MAAM,IAAI,KAAK,CAAC,SAAS;IAmBlC,SAAS,CAAC,iBAAiB,CAAC,OAAO,EAAE,cAAc,GAAG,IAAI,GAAG,IAAI;IAWjE,SAAS,CAAC,cAAc,CAAC,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC,SAAS;IAmBlG,SAAS,CAAC,YAAY,IAAI,SAAS,QAAQ,EAAE;IAI7C,SAAS,CAAC,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,WAAW,GAAG,MAAM;IAI7E,SAAS,CAAC,4BAA4B,CAAC,YAAY,EAAE,SAAS,QAAQ,EAAE,GAAG,MAAM;CAKpF"}
@@ -87,18 +87,12 @@ class NotebookMainToolbar extends React.Component {
87
87
  }
88
88
  }));
89
89
  // TODO maybe we need a mechanism to check for changes in the menu to update this toolbar
90
- const contextKeys = new Set();
91
- this.getAllContextKeys(this.getMenuItems(), contextKeys);
92
- props.notebookContextManager.onDidChangeContext(e => {
93
- if (e.affects(contextKeys)) {
94
- this.forceUpdate();
95
- }
96
- });
97
- props.contextKeyService.onDidChange(e => {
98
- if (e.affects(contextKeys)) {
99
- this.forceUpdate();
90
+ const menuItems = this.getMenuItems();
91
+ for (const item of menuItems) {
92
+ if (item.onDidChange) {
93
+ item.onDidChange(() => this.forceUpdate());
100
94
  }
101
- });
95
+ }
102
96
  }
103
97
  componentWillUnmount() {
104
98
  this.toDispose.dispose();
@@ -122,12 +116,13 @@ class NotebookMainToolbar extends React.Component {
122
116
  }
123
117
  renderContextMenu(event, menuItems) {
124
118
  const hiddenItems = menuItems.slice(menuItems.length - this.calculateNumberOfHiddenItems(menuItems));
125
- const contextMenu = this.props.menuRegistry.getMenu([notebook_actions_contribution_1.NotebookMenus.NOTEBOOK_MAIN_TOOLBAR_HIDDEN_ITEMS_CONTEXT_MENU]);
126
- contextMenu.children.map(item => item.id).forEach(id => contextMenu.removeNode(id));
127
- hiddenItems.forEach(item => contextMenu.addNode(item));
119
+ const menu = new core_1.GroupImpl(notebook_actions_contribution_1.NotebookMenus.NOTEBOOK_MAIN_TOOLBAR_HIDDEN_ITEMS_CONTEXT_MENU[0]);
120
+ hiddenItems.forEach(item => menu.addNode(item));
128
121
  this.props.contextMenuRenderer.render({
129
122
  anchor: event,
130
- menuPath: [notebook_actions_contribution_1.NotebookMenus.NOTEBOOK_MAIN_TOOLBAR_HIDDEN_ITEMS_CONTEXT_MENU],
123
+ menuPath: notebook_actions_contribution_1.NotebookMenus.NOTEBOOK_MAIN_TOOLBAR_HIDDEN_ITEMS_CONTEXT_MENU,
124
+ menu: menu,
125
+ contextKeyService: this.props.contextKeyService,
131
126
  context: this.props.editorNode,
132
127
  args: [this.props.notebookModel.uri]
133
128
  });
@@ -136,7 +131,7 @@ class NotebookMainToolbar extends React.Component {
136
131
  var _a;
137
132
  const menuItems = this.getMenuItems();
138
133
  return React.createElement("div", { className: 'theia-notebook-main-toolbar', id: 'notebook-main-toolbar' },
139
- menuItems.slice(0, menuItems.length - this.calculateNumberOfHiddenItems(menuItems)).map(item => this.renderMenuItem(item)),
134
+ menuItems.slice(0, menuItems.length - this.calculateNumberOfHiddenItems(menuItems)).map(item => this.renderMenuItem(notebook_actions_contribution_1.NotebookMenus.NOTEBOOK_MAIN_TOOLBAR, item)),
140
135
  this.state.numberOfHiddenItems > 0 &&
141
136
  React.createElement("span", { className: `${(0, browser_1.codicon)('ellipsis')} action-label theia-notebook-main-toolbar-item`, onClick: e => this.renderContextMenu(e.nativeEvent, menuItems) }),
142
137
  React.createElement("div", { ref: element => this.gapElementChanged(element), style: { flexGrow: 1 } }),
@@ -154,46 +149,28 @@ class NotebookMainToolbar extends React.Component {
154
149
  this.resizeObserver.observe(this.gapElement);
155
150
  }
156
151
  }
157
- renderMenuItem(item, submenu) {
158
- var _a, _b, _c, _d, _e, _f;
159
- if (item.role === 1 /* CompoundMenuNodeRole.Group */) {
160
- const itemNodes = core_1.ArrayUtils.coalesce((_b = (_a = item.children) === null || _a === void 0 ? void 0 : _a.map(child => this.renderMenuItem(child, item.id))) !== null && _b !== void 0 ? _b : []);
152
+ renderMenuItem(itemPath, item, submenu) {
153
+ var _a, _b;
154
+ if (core_1.Group.is(item)) {
155
+ const itemNodes = core_1.ArrayUtils.coalesce((_b = (_a = item.children) === null || _a === void 0 ? void 0 : _a.map(child => this.renderMenuItem([...itemPath, child.id], child, item.id))) !== null && _b !== void 0 ? _b : []);
161
156
  return React.createElement(React.Fragment, { key: item.id },
162
157
  itemNodes,
163
158
  itemNodes && itemNodes.length > 0 && React.createElement("span", { key: `${item.id}-separator`, className: 'theia-notebook-toolbar-separator' }));
164
159
  }
165
- else if ((this.nativeSubmenus.includes(submenu !== null && submenu !== void 0 ? submenu : '')) || !item.when || this.props.contextKeyService.match(item.when, this.props.editorNode)) {
166
- const visibleCommand = Boolean(this.props.commandRegistry.getVisibleHandler((_c = item.command) !== null && _c !== void 0 ? _c : '', this.props.notebookModel));
167
- if (!visibleCommand) {
168
- return undefined;
169
- }
170
- const command = this.props.commandRegistry.getCommand((_d = item.command) !== null && _d !== void 0 ? _d : '');
171
- const label = (_e = command === null || command === void 0 ? void 0 : command.shortTitle) !== null && _e !== void 0 ? _e : item.label;
172
- const title = (_f = command === null || command === void 0 ? void 0 : command.tooltip) !== null && _f !== void 0 ? _f : item.label;
173
- return React.createElement("div", { key: item.id, id: item.id, title: title, className: `theia-notebook-main-toolbar-item action-label${this.getAdditionalClasses(item)}`, onClick: () => {
174
- if (item.command && (!item.when || this.props.contextKeyService.match(item.when, this.props.editorNode))) {
175
- this.props.commandRegistry.executeCommand(item.command, this.props.notebookModel.uri);
176
- }
160
+ else if (core_1.CommandMenu.is(item) && ((this.nativeSubmenus.includes(submenu !== null && submenu !== void 0 ? submenu : '')) || item.isVisible(itemPath, this.props.contextKeyService, this.props.editorNode))) {
161
+ return React.createElement("div", { key: item.id, id: item.id, title: item.label, className: `theia-notebook-main-toolbar-item action-label${this.getAdditionalClasses(itemPath, item)}`, onClick: () => {
162
+ item.run(itemPath, this.props.notebookModel.uri);
177
163
  } },
178
164
  React.createElement("span", { className: item.icon }),
179
- React.createElement("span", { className: 'theia-notebook-main-toolbar-item-text' }, label));
165
+ React.createElement("span", { className: 'theia-notebook-main-toolbar-item-text' }, item.label));
180
166
  }
181
167
  return undefined;
182
168
  }
183
169
  getMenuItems() {
184
- const menuPath = notebook_actions_contribution_1.NotebookMenus.NOTEBOOK_MAIN_TOOLBAR;
185
- const pluginCommands = this.props.menuRegistry.getMenuNode(menuPath).children;
186
- const theiaCommands = this.props.menuRegistry.getMenu([menuPath]).children;
187
- return theiaCommands.concat(pluginCommands);
188
- }
189
- getAdditionalClasses(item) {
190
- return !item.when || this.props.contextKeyService.match(item.when, this.props.editorNode) ? '' : ' theia-mod-disabled';
170
+ return this.props.menuRegistry.getMenu(notebook_actions_contribution_1.NotebookMenus.NOTEBOOK_MAIN_TOOLBAR).children;
191
171
  }
192
- getAllContextKeys(menus, keySet) {
193
- menus.filter(item => item.when)
194
- .forEach(item => { var _a; return (_a = this.props.contextKeyService.parseKeys(item.when)) === null || _a === void 0 ? void 0 : _a.forEach(key => keySet.add(key)); });
195
- menus.filter(item => item.children && item.children.length > 0)
196
- .forEach(item => this.getAllContextKeys(item.children, keySet));
172
+ getAdditionalClasses(itemPath, item) {
173
+ return item.isEnabled(itemPath, this.props.editorNode) ? '' : ' theia-mod-disabled';
197
174
  }
198
175
  calculateNumberOfHiddenItems(allMenuItems) {
199
176
  return this.state.numberOfHiddenItems >= allMenuItems.length ?
@@ -1 +1 @@
1
- {"version":3,"file":"notebook-main-toolbar.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-main-toolbar.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"notebook-main-toolbar.js","sourceRoot":"","sources":["../../../src/browser/view/notebook-main-toolbar.tsx"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,14 +1,14 @@
1
1
  {
2
2
  "name": "@theia/notebook",
3
- "version": "1.62.0-next.3+907647f99",
3
+ "version": "1.62.0",
4
4
  "description": "Theia - Notebook Extension",
5
5
  "dependencies": {
6
- "@theia/core": "1.62.0-next.3+907647f99",
7
- "@theia/editor": "1.62.0-next.3+907647f99",
8
- "@theia/filesystem": "1.62.0-next.3+907647f99",
9
- "@theia/monaco": "1.62.0-next.3+907647f99",
6
+ "@theia/core": "1.62.0",
7
+ "@theia/editor": "1.62.0",
8
+ "@theia/filesystem": "1.62.0",
9
+ "@theia/monaco": "1.62.0",
10
10
  "@theia/monaco-editor-core": "1.96.302",
11
- "@theia/outline-view": "1.62.0-next.3+907647f99",
11
+ "@theia/outline-view": "1.62.0",
12
12
  "advanced-mark.js": "^2.6.0",
13
13
  "react-perfect-scrollbar": "^1.5.8",
14
14
  "tslib": "^2.6.2"
@@ -46,12 +46,12 @@
46
46
  "watch": "theiaext watch"
47
47
  },
48
48
  "devDependencies": {
49
- "@theia/ext-scripts": "1.61.0",
49
+ "@theia/ext-scripts": "1.62.0",
50
50
  "@types/markdown-it": "^12.2.3",
51
51
  "@types/vscode-notebook-renderer": "^1.72.0"
52
52
  },
53
53
  "nyc": {
54
54
  "extends": "../../configs/nyc.json"
55
55
  },
56
- "gitHead": "907647f99bd78541b18e8e6133acc9246d85a8a2"
56
+ "gitHead": "a4e035ccc26fde24c2769a466cb18e3b54c517c5"
57
57
  }
@@ -14,7 +14,7 @@
14
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
15
  // *****************************************************************************
16
16
 
17
- import { Command, CommandContribution, CommandHandler, CommandRegistry, CompoundMenuNodeRole, MenuContribution, MenuModelRegistry, nls, URI } from '@theia/core';
17
+ import { Command, CommandContribution, CommandHandler, CommandRegistry, MenuContribution, MenuModelRegistry, nls, URI } from '@theia/core';
18
18
  import { inject, injectable } from '@theia/core/shared/inversify';
19
19
  import { ApplicationShell, codicon, KeybindingContribution, KeybindingRegistry } from '@theia/core/lib/browser';
20
20
  import { NotebookModel } from '../view-model/notebook-model';
@@ -297,9 +297,8 @@ export class NotebookActionsContribution implements CommandContribution, MenuCon
297
297
 
298
298
  registerMenus(menus: MenuModelRegistry): void {
299
299
  // independent submenu for plugins to add commands
300
- menus.registerIndependentSubmenu(NotebookMenus.NOTEBOOK_MAIN_TOOLBAR, 'Notebook Main Toolbar');
300
+ menus.registerSubmenu(NotebookMenus.NOTEBOOK_MAIN_TOOLBAR, 'Notebook Main Toolbar');
301
301
  // Add Notebook Cell items
302
- menus.registerSubmenu(NotebookMenus.NOTEBOOK_MAIN_TOOLBAR_CELL_ADD_GROUP, 'Add Notebook Cell', { role: CompoundMenuNodeRole.Group });
303
302
  menus.registerMenuAction(NotebookMenus.NOTEBOOK_MAIN_TOOLBAR_CELL_ADD_GROUP, {
304
303
  commandId: NotebookCommands.ADD_NEW_CODE_CELL_COMMAND.id,
305
304
  label: nls.localizeByDefault('Code'),
@@ -312,7 +311,6 @@ export class NotebookActionsContribution implements CommandContribution, MenuCon
312
311
  });
313
312
 
314
313
  // Execution related items
315
- menus.registerSubmenu(NotebookMenus.NOTEBOOK_MAIN_TOOLBAR_EXECUTION_GROUP, 'Cell Execution', { role: CompoundMenuNodeRole.Group });
316
314
  menus.registerMenuAction(NotebookMenus.NOTEBOOK_MAIN_TOOLBAR_EXECUTION_GROUP, {
317
315
  commandId: NotebookCommands.EXECUTE_NOTEBOOK_COMMAND.id,
318
316
  label: nls.localizeByDefault('Run All'),
@@ -327,7 +325,7 @@ export class NotebookActionsContribution implements CommandContribution, MenuCon
327
325
  when: NOTEBOOK_HAS_OUTPUTS
328
326
  });
329
327
 
330
- menus.registerIndependentSubmenu(NotebookMenus.NOTEBOOK_MAIN_TOOLBAR_HIDDEN_ITEMS_CONTEXT_MENU, '');
328
+ menus.registerSubmenu(NotebookMenus.NOTEBOOK_MAIN_TOOLBAR_HIDDEN_ITEMS_CONTEXT_MENU, '');
331
329
  }
332
330
 
333
331
  registerKeybindings(keybindings: KeybindingRegistry): void {
@@ -375,8 +373,8 @@ export class NotebookActionsContribution implements CommandContribution, MenuCon
375
373
  }
376
374
 
377
375
  export namespace NotebookMenus {
378
- export const NOTEBOOK_MAIN_TOOLBAR = 'notebook/toolbar';
379
- export const NOTEBOOK_MAIN_TOOLBAR_CELL_ADD_GROUP = [NOTEBOOK_MAIN_TOOLBAR, 'cell-add-group'];
380
- export const NOTEBOOK_MAIN_TOOLBAR_EXECUTION_GROUP = [NOTEBOOK_MAIN_TOOLBAR, 'cell-execution-group'];
381
- export const NOTEBOOK_MAIN_TOOLBAR_HIDDEN_ITEMS_CONTEXT_MENU = 'notebook-main-toolbar-hidden-items-context-menu';
376
+ export const NOTEBOOK_MAIN_TOOLBAR = ['notebook', 'toolbar'];
377
+ export const NOTEBOOK_MAIN_TOOLBAR_CELL_ADD_GROUP = [...NOTEBOOK_MAIN_TOOLBAR, 'cell-add-group'];
378
+ export const NOTEBOOK_MAIN_TOOLBAR_EXECUTION_GROUP = [...NOTEBOOK_MAIN_TOOLBAR, 'cell-execution-group'];
379
+ export const NOTEBOOK_MAIN_TOOLBAR_HIDDEN_ITEMS_CONTEXT_MENU = ['notebook-main-toolbar-hidden-items-context-menu'];
382
380
  }
@@ -14,7 +14,7 @@
14
14
  // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
15
  // *****************************************************************************
16
16
 
17
- import { Command, CommandContribution, CommandHandler, CommandRegistry, CompoundMenuNodeRole, MenuContribution, MenuModelRegistry, nls } from '@theia/core';
17
+ import { Command, CommandContribution, CommandHandler, CommandRegistry, MenuContribution, MenuModelRegistry, nls } from '@theia/core';
18
18
  import { codicon, Key, KeybindingContribution, KeybindingRegistry, KeyCode, KeyModifier } from '@theia/core/lib/browser';
19
19
  import { inject, injectable, postConstruct } from '@theia/core/shared/inversify';
20
20
  import { NotebookModel } from '../view-model/notebook-model';
@@ -234,15 +234,17 @@ export class NotebookCellActionContribution implements MenuContribution, Command
234
234
  NotebookCellActionContribution.ADDITIONAL_ACTION_MENU,
235
235
  nls.localizeByDefault('More'),
236
236
  {
237
- icon: codicon('ellipsis'),
238
- role: CompoundMenuNodeRole.Submenu,
239
- order: '30'
237
+ sortString: '30',
238
+ icon: codicon('ellipsis')
240
239
  }
241
240
  );
242
241
 
243
- menus.registerIndependentSubmenu(NotebookCellActionContribution.CONTRIBUTED_CELL_ACTION_MENU, '', { role: CompoundMenuNodeRole.Flat });
242
+ menus.registerSubmenu(NotebookCellActionContribution.CONTRIBUTED_CELL_ACTION_MENU, '');
244
243
  // since contributions are adding to an independent submenu we have to manually add it to the more submenu
245
- menus.getMenu(NotebookCellActionContribution.ADDITIONAL_ACTION_MENU).addNode(menus.getMenuNode(NotebookCellActionContribution.CONTRIBUTED_CELL_ACTION_MENU));
244
+ menus.linkCompoundMenuNode({
245
+ newParentPath: NotebookCellActionContribution.ADDITIONAL_ACTION_MENU,
246
+ submenuPath: NotebookCellActionContribution.CONTRIBUTED_CELL_ACTION_MENU
247
+ });
246
248
 
247
249
  // code cell sidebar menu
248
250
  menus.registerMenuAction(NotebookCellActionContribution.CODE_CELL_SIDEBAR_MENU, {
@@ -259,19 +261,17 @@ export class NotebookCellActionContribution implements MenuContribution, Command
259
261
  });
260
262
 
261
263
  // Notebook Cell extra execution options
262
- menus.registerIndependentSubmenu(NotebookCellActionContribution.CONTRIBUTED_CELL_EXECUTION_MENU,
264
+ menus.registerSubmenu(NotebookCellActionContribution.CONTRIBUTED_CELL_EXECUTION_MENU,
263
265
  nls.localizeByDefault('More...'),
264
- { role: CompoundMenuNodeRole.Flat, icon: codicon('chevron-down') });
266
+ { icon: codicon('chevron-down') });
265
267
  // menus.getMenu(NotebookCellActionContribution.CODE_CELL_SIDEBAR_MENU).addNode(menus.getMenuNode(NotebookCellActionContribution.CONTRIBUTED_CELL_EXECUTION_MENU));
266
268
 
267
269
  // code cell output sidebar menu
268
270
  menus.registerSubmenu(
269
271
  NotebookCellActionContribution.ADDITIONAL_OUTPUT_SIDEBAR_MENU,
270
272
  nls.localizeByDefault('More'),
271
- {
272
- icon: codicon('ellipsis'),
273
- role: CompoundMenuNodeRole.Submenu
274
- });
273
+ { icon: codicon('ellipsis') }
274
+ );
275
275
  menus.registerMenuAction(NotebookCellActionContribution.ADDITIONAL_OUTPUT_SIDEBAR_MENU, {
276
276
  commandId: NotebookCellCommands.CLEAR_OUTPUTS_COMMAND.id,
277
277
  label: nls.localizeByDefault('Clear Cell Outputs'),
@@ -565,8 +565,8 @@ export class NotebookCellActionContribution implements MenuContribution, Command
565
565
  export namespace NotebookCellActionContribution {
566
566
  export const ACTION_MENU = ['notebook-cell-actions-menu'];
567
567
  export const ADDITIONAL_ACTION_MENU = [...ACTION_MENU, 'more'];
568
- export const CONTRIBUTED_CELL_ACTION_MENU = 'notebook/cell/title';
569
- export const CONTRIBUTED_CELL_EXECUTION_MENU = 'notebook/cell/execute';
568
+ export const CONTRIBUTED_CELL_ACTION_MENU = ['notebook/cell/title'];
569
+ export const CONTRIBUTED_CELL_EXECUTION_MENU = ['notebook/cell/execute'];
570
570
  export const CODE_CELL_SIDEBAR_MENU = ['code-cell-sidebar-menu'];
571
571
  export const OUTPUT_SIDEBAR_MENU = ['code-cell-output-sidebar-menu'];
572
572
  export const ADDITIONAL_OUTPUT_SIDEBAR_MENU = [...OUTPUT_SIDEBAR_MENU, 'more'];
@@ -16,7 +16,7 @@
16
16
 
17
17
  import { inject, injectable } from '@theia/core/shared/inversify';
18
18
  import { ContextKeyChangeEvent, ContextKeyService, ContextMatcher, ScopedValueStore } from '@theia/core/lib/browser/context-key-service';
19
- import { DisposableCollection, Emitter } from '@theia/core';
19
+ import { DisposableCollection } from '@theia/core';
20
20
  import { NotebookKernelService } from './notebook-kernel-service';
21
21
  import {
22
22
  NOTEBOOK_CELL_EDITABLE,
@@ -43,9 +43,6 @@ export class NotebookContextManager {
43
43
 
44
44
  protected readonly toDispose = new DisposableCollection();
45
45
 
46
- protected readonly onDidChangeContextEmitter = new Emitter<ContextKeyChangeEvent>();
47
- readonly onDidChangeContext = this.onDidChangeContextEmitter.event;
48
-
49
46
  protected _context?: HTMLElement;
50
47
 
51
48
  scopedStore: ScopedValueStore;
@@ -72,14 +69,12 @@ export class NotebookContextManager {
72
69
  if (e.notebook.toString() === widget?.getResourceUri()?.toString()) {
73
70
  this.scopedStore.setContext(NOTEBOOK_KERNEL_SELECTED, !!e.newKernel);
74
71
  this.scopedStore.setContext(NOTEBOOK_KERNEL, e.newKernel);
75
- this.onDidChangeContextEmitter.fire(this.createContextKeyChangedEvent([NOTEBOOK_KERNEL_SELECTED, NOTEBOOK_KERNEL]));
76
72
  }
77
73
  }));
78
74
 
79
75
  widget.model?.onDidChangeContent(events => {
80
76
  if (events.some(e => e.kind === NotebookCellsChangeType.ModelChange || e.kind === NotebookCellsChangeType.Output)) {
81
77
  this.scopedStore.setContext(NOTEBOOK_HAS_OUTPUTS, widget.model?.cells.some(cell => cell.outputs.length > 0));
82
- this.onDidChangeContextEmitter.fire(this.createContextKeyChangedEvent([NOTEBOOK_HAS_OUTPUTS]));
83
78
  }
84
79
  });
85
80
 
@@ -91,23 +86,18 @@ export class NotebookContextManager {
91
86
  widget.model?.onDidChangeSelectedCell(e => {
92
87
  this.selectedCellChanged(e.cell);
93
88
  this.scopedStore.setContext(NOTEBOOK_CELL_FOCUSED, !!e);
94
- this.onDidChangeContextEmitter.fire(this.createContextKeyChangedEvent([NOTEBOOK_CELL_FOCUSED]));
95
89
  });
96
90
 
97
91
  this.toDispose.push(this.executionStateService.onDidChangeExecution(e => {
98
92
  if (e.notebook.toString() === widget.model?.uri.toString()) {
99
93
  this.setCellContext(e.cellHandle, NOTEBOOK_CELL_EXECUTING, !!e.changed);
100
94
  this.setCellContext(e.cellHandle, NOTEBOOK_CELL_EXECUTION_STATE, e.changed?.state ?? 'idle');
101
- this.onDidChangeContextEmitter.fire(this.createContextKeyChangedEvent([NOTEBOOK_CELL_EXECUTING, NOTEBOOK_CELL_EXECUTION_STATE]));
102
95
  }
103
96
  }));
104
97
 
105
98
  widget.onDidChangeOutputInputFocus(focus => {
106
99
  this.scopedStore.setContext(NOTEBOOK_OUTPUT_INPUT_FOCUSED, focus);
107
- this.onDidChangeContextEmitter.fire(this.createContextKeyChangedEvent([NOTEBOOK_OUTPUT_INPUT_FOCUSED]));
108
100
  });
109
-
110
- this.onDidChangeContextEmitter.fire(this.createContextKeyChangedEvent([NOTEBOOK_VIEW_TYPE, NOTEBOOK_KERNEL_SELECTED, NOTEBOOK_KERNEL]));
111
101
  }
112
102
 
113
103
  protected cellDisposables = new DisposableCollection();
@@ -123,12 +113,8 @@ export class NotebookContextManager {
123
113
  this.cellDisposables.push(cell.onDidRequestCellEditChange(cellEdit => {
124
114
  this.scopedStore.setContext(NOTEBOOK_CELL_MARKDOWN_EDIT_MODE, cellEdit);
125
115
  this.scopedStore.setContext(NOTEBOOK_CELL_EDITABLE, cell.cellKind === CellKind.Markup && !cellEdit);
126
- this.onDidChangeContextEmitter.fire(this.createContextKeyChangedEvent([NOTEBOOK_CELL_MARKDOWN_EDIT_MODE]));
127
116
  }));
128
117
  }
129
-
130
- this.onDidChangeContextEmitter.fire(this.createContextKeyChangedEvent([NOTEBOOK_CELL_TYPE]));
131
-
132
118
  }
133
119
 
134
120
  protected setCellContext(cellHandle: number, key: string, value: unknown): void {