@theia/core 1.46.0-next.106 → 1.46.0-next.144

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 (125) hide show
  1. package/README.md +6 -6
  2. package/i18n/nls.cs.json +4 -0
  3. package/i18n/nls.de.json +4 -0
  4. package/i18n/nls.es.json +4 -0
  5. package/i18n/nls.fr.json +4 -0
  6. package/i18n/nls.hu.json +4 -0
  7. package/i18n/nls.it.json +4 -0
  8. package/i18n/nls.ja.json +4 -0
  9. package/i18n/nls.json +4 -0
  10. package/i18n/nls.pl.json +4 -0
  11. package/i18n/nls.pt-br.json +4 -0
  12. package/i18n/nls.pt-pt.json +4 -0
  13. package/i18n/nls.ru.json +4 -0
  14. package/i18n/nls.zh-cn.json +4 -0
  15. package/lib/browser/color-application-contribution.d.ts +4 -2
  16. package/lib/browser/color-application-contribution.d.ts.map +1 -1
  17. package/lib/browser/color-application-contribution.js +11 -1
  18. package/lib/browser/color-application-contribution.js.map +1 -1
  19. package/lib/browser/command-open-handler.js +1 -1
  20. package/lib/browser/command-open-handler.js.map +1 -1
  21. package/lib/browser/common-frontend-contribution.d.ts +6 -0
  22. package/lib/browser/common-frontend-contribution.d.ts.map +1 -1
  23. package/lib/browser/common-frontend-contribution.js +43 -1
  24. package/lib/browser/common-frontend-contribution.js.map +1 -1
  25. package/lib/browser/frontend-application-module.d.ts.map +1 -1
  26. package/lib/browser/frontend-application-module.js +2 -0
  27. package/lib/browser/frontend-application-module.js.map +1 -1
  28. package/lib/browser/index.d.ts +1 -0
  29. package/lib/browser/index.d.ts.map +1 -1
  30. package/lib/browser/index.js +1 -0
  31. package/lib/browser/index.js.map +1 -1
  32. package/lib/browser/keybinding.js +1 -1
  33. package/lib/browser/keybinding.js.map +1 -1
  34. package/lib/browser/menu/browser-context-menu-renderer.d.ts.map +1 -1
  35. package/lib/browser/menu/browser-context-menu-renderer.js +2 -1
  36. package/lib/browser/menu/browser-context-menu-renderer.js.map +1 -1
  37. package/lib/browser/menu/browser-menu-plugin.d.ts +1 -1
  38. package/lib/browser/menu/browser-menu-plugin.d.ts.map +1 -1
  39. package/lib/browser/menu/browser-menu-plugin.js +2 -2
  40. package/lib/browser/menu/browser-menu-plugin.js.map +1 -1
  41. package/lib/browser/open-with-service.d.ts +44 -0
  42. package/lib/browser/open-with-service.d.ts.map +1 -0
  43. package/lib/browser/open-with-service.js +66 -0
  44. package/lib/browser/open-with-service.js.map +1 -0
  45. package/lib/browser/secondary-window-handler.d.ts +12 -11
  46. package/lib/browser/secondary-window-handler.d.ts.map +1 -1
  47. package/lib/browser/secondary-window-handler.js +16 -23
  48. package/lib/browser/secondary-window-handler.js.map +1 -1
  49. package/lib/browser/shell/application-shell.d.ts +3 -1
  50. package/lib/browser/shell/application-shell.d.ts.map +1 -1
  51. package/lib/browser/shell/application-shell.js +28 -20
  52. package/lib/browser/shell/application-shell.js.map +1 -1
  53. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.d.ts +1 -0
  54. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.d.ts.map +1 -1
  55. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.js +12 -7
  56. package/lib/browser/shell/tab-bar-toolbar/tab-bar-toolbar.js.map +1 -1
  57. package/lib/browser/shell/view-contribution.d.ts.map +1 -1
  58. package/lib/browser/shell/view-contribution.js +2 -1
  59. package/lib/browser/shell/view-contribution.js.map +1 -1
  60. package/lib/browser/styling-service.d.ts +3 -2
  61. package/lib/browser/styling-service.d.ts.map +1 -1
  62. package/lib/browser/styling-service.js +11 -2
  63. package/lib/browser/styling-service.js.map +1 -1
  64. package/lib/browser/window/default-secondary-window-service.d.ts +1 -1
  65. package/lib/browser/window/default-secondary-window-service.d.ts.map +1 -1
  66. package/lib/browser/window/default-secondary-window-service.js +22 -25
  67. package/lib/browser/window/default-secondary-window-service.js.map +1 -1
  68. package/lib/browser/window/default-window-service.d.ts +1 -0
  69. package/lib/browser/window/default-window-service.d.ts.map +1 -1
  70. package/lib/browser/window/default-window-service.js +3 -0
  71. package/lib/browser/window/default-window-service.js.map +1 -1
  72. package/lib/browser/window/test/mock-window-service.d.ts +1 -0
  73. package/lib/browser/window/test/mock-window-service.d.ts.map +1 -1
  74. package/lib/browser/window/test/mock-window-service.js +1 -0
  75. package/lib/browser/window/test/mock-window-service.js.map +1 -1
  76. package/lib/browser/window/window-service.d.ts +4 -0
  77. package/lib/browser/window/window-service.d.ts.map +1 -1
  78. package/lib/common/event.d.ts +5 -0
  79. package/lib/common/event.d.ts.map +1 -1
  80. package/lib/common/event.js +14 -1
  81. package/lib/common/event.js.map +1 -1
  82. package/lib/electron-browser/menu/electron-context-menu-renderer.d.ts.map +1 -1
  83. package/lib/electron-browser/menu/electron-context-menu-renderer.js +3 -1
  84. package/lib/electron-browser/menu/electron-context-menu-renderer.js.map +1 -1
  85. package/lib/electron-browser/preload.js +2 -2
  86. package/lib/electron-browser/preload.js.map +1 -1
  87. package/lib/electron-browser/window/electron-secondary-window-service.d.ts +1 -1
  88. package/lib/electron-browser/window/electron-secondary-window-service.d.ts.map +1 -1
  89. package/lib/electron-browser/window/electron-secondary-window-service.js +4 -8
  90. package/lib/electron-browser/window/electron-secondary-window-service.js.map +1 -1
  91. package/lib/electron-browser/window/electron-window-service.d.ts +1 -0
  92. package/lib/electron-browser/window/electron-window-service.d.ts.map +1 -1
  93. package/lib/electron-browser/window/electron-window-service.js +3 -0
  94. package/lib/electron-browser/window/electron-window-service.js.map +1 -1
  95. package/lib/electron-common/electron-api.d.ts +2 -2
  96. package/lib/electron-common/electron-api.d.ts.map +1 -1
  97. package/lib/electron-main/electron-api-main.d.ts.map +1 -1
  98. package/lib/electron-main/electron-api-main.js +12 -2
  99. package/lib/electron-main/electron-api-main.js.map +1 -1
  100. package/package.json +6 -6
  101. package/src/browser/color-application-contribution.ts +11 -2
  102. package/src/browser/command-open-handler.ts +1 -1
  103. package/src/browser/common-frontend-contribution.ts +44 -1
  104. package/src/browser/frontend-application-module.ts +3 -0
  105. package/src/browser/index.ts +1 -0
  106. package/src/browser/keybinding.ts +1 -1
  107. package/src/browser/menu/browser-context-menu-renderer.ts +2 -1
  108. package/src/browser/menu/browser-menu-plugin.ts +2 -2
  109. package/src/browser/open-with-service.ts +93 -0
  110. package/src/browser/secondary-window-handler.ts +21 -22
  111. package/src/browser/shell/application-shell.ts +25 -18
  112. package/src/browser/shell/tab-bar-toolbar/tab-bar-toolbar.tsx +15 -10
  113. package/src/browser/shell/view-contribution.ts +3 -2
  114. package/src/browser/styling-service.ts +12 -3
  115. package/src/browser/window/default-secondary-window-service.ts +24 -26
  116. package/src/browser/window/default-window-service.ts +4 -0
  117. package/src/browser/window/test/mock-window-service.ts +1 -0
  118. package/src/browser/window/window-service.ts +5 -0
  119. package/src/common/event.ts +18 -0
  120. package/src/electron-browser/menu/electron-context-menu-renderer.ts +3 -1
  121. package/src/electron-browser/preload.ts +3 -3
  122. package/src/electron-browser/window/electron-secondary-window-service.ts +4 -8
  123. package/src/electron-browser/window/electron-window-service.ts +3 -0
  124. package/src/electron-common/electron-api.ts +2 -2
  125. package/src/electron-main/electron-api-main.ts +11 -2
@@ -23,16 +23,12 @@ let ElectronSecondaryWindowService = class ElectronSecondaryWindowService extend
23
23
  focus(win) {
24
24
  window.electronTheiaCore.focusWindow(win.name);
25
25
  }
26
- doCreateSecondaryWindow(widget, shell) {
27
- const w = super.doCreateSecondaryWindow(widget, shell);
28
- if (w) {
29
- window.electronTheiaCore.setMenuBarVisible(false, w.name);
30
- window.electronTheiaCore.setSecondaryWindowCloseRequestHandler(w.name, () => this.canClose(widget, shell));
31
- }
32
- return w;
26
+ windowCreated(newWindow, widget, shell) {
27
+ window.electronTheiaCore.setMenuBarVisible(false, newWindow.name);
28
+ window.electronTheiaCore.setSecondaryWindowCloseRequestHandler(newWindow.name, () => this.canClose(widget, shell));
33
29
  }
34
30
  async canClose(widget, shell) {
35
- await shell.closeWidget(widget.id, undefined);
31
+ await shell.closeWidget(widget.id);
36
32
  return widget.isDisposed;
37
33
  }
38
34
  };
@@ -1 +1 @@
1
- {"version":3,"file":"electron-secondary-window-service.js","sourceRoot":"","sources":["../../../src/electron-browser/window/electron-secondary-window-service.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,kFAAkF;AAClF,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;;;;AAEhF,yCAAuC;AACvC,4GAAsG;AAItG,IAAa,8BAA8B,GAA3C,MAAa,8BAA+B,SAAQ,gEAA6B;IACpE,KAAK,CAAC,GAAW;QACtB,MAAM,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IAEkB,uBAAuB,CAAC,MAAyB,EAAE,KAAuB;QACzF,MAAM,CAAC,GAAG,KAAK,CAAC,uBAAuB,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QACvD,IAAI,CAAC,EAAE;YACH,MAAM,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;YAC1D,MAAM,CAAC,iBAAiB,CAAC,qCAAqC,CAAC,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;SAC9G;QACD,OAAO,CAAC,CAAC;IACb,CAAC;IACO,KAAK,CAAC,QAAQ,CAAC,MAAyB,EAAE,KAAuB;QACrE,MAAM,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC;QAC9C,OAAO,MAAM,CAAC,UAAU,CAAC;IAC7B,CAAC;CACJ,CAAA;AAjBY,8BAA8B;IAD1C,IAAA,sBAAU,GAAE;GACA,8BAA8B,CAiB1C;AAjBY,wEAA8B"}
1
+ {"version":3,"file":"electron-secondary-window-service.js","sourceRoot":"","sources":["../../../src/electron-browser/window/electron-secondary-window-service.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,kFAAkF;AAClF,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;;;;AAEhF,yCAAuC;AACvC,4GAAsG;AAItG,IAAa,8BAA8B,GAA3C,MAAa,8BAA+B,SAAQ,gEAA6B;IACpE,KAAK,CAAC,GAAW;QACtB,MAAM,CAAC,iBAAiB,CAAC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IACnD,CAAC;IAEkB,aAAa,CAAC,SAAiB,EAAE,MAAyB,EAAE,KAAuB;QAClG,MAAM,CAAC,iBAAiB,CAAC,iBAAiB,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC;QAClE,MAAM,CAAC,iBAAiB,CAAC,qCAAqC,CAAC,SAAS,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC;IACvH,CAAC;IACO,KAAK,CAAC,QAAQ,CAAC,MAAyB,EAAE,KAAuB;QACrE,MAAM,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACnC,OAAO,MAAM,CAAC,UAAU,CAAC;IAC7B,CAAC;CACJ,CAAA;AAbY,8BAA8B;IAD1C,IAAA,sBAAU,GAAE;GACA,8BAA8B,CAa1C;AAbY,wEAA8B"}
@@ -20,6 +20,7 @@ export declare class ElectronWindowService extends DefaultWindowService {
20
20
  protected readonly connectionCloseService: ConnectionCloseService;
21
21
  openNewWindow(url: string, { external }?: NewWindowOptions): undefined;
22
22
  openNewDefaultWindow(params?: WindowSearchParams): void;
23
+ focus(): void;
23
24
  protected init(): void;
24
25
  protected registerUnloadListeners(): void;
25
26
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"electron-window-service.d.ts","sourceRoot":"","sources":["../../../src/electron-browser/window/electron-window-service.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AACnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AAC/F,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE1E,qBACa,qBAAsB,SAAQ,oBAAoB;IAE3D;;OAEG;IACH,SAAS,CAAC,WAAW,EAAE,OAAO,CAAS;IAEvC;;OAEG;IACH,SAAS,CAAC,aAAa,EAAE,OAAO,CAAS;IAGzC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAG1D,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,yBAAyB,CAAC;IAGvD,SAAS,CAAC,QAAQ,CAAC,yBAAyB,EAAE,yBAAyB,CAAC;IAGxE,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAEzD,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,GAAE,gBAAqB,GAAG,SAAS;IAK1E,oBAAoB,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,IAAI;IAKhE,SAAS,CAAC,IAAI,IAAI,IAAI;cAYH,uBAAuB,IAAI,IAAI;IAOlD;;OAEG;cACa,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAO7C,MAAM,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,IAAI;CAetD"}
1
+ {"version":3,"file":"electron-window-service.d.ts","sourceRoot":"","sources":["../../../src/electron-browser/window/electron-window-service.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC3E,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AACnF,OAAO,EAAE,yBAAyB,EAAE,MAAM,oDAAoD,CAAC;AAC/F,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAC1E,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,kBAAkB,EAAE,MAAM,8CAA8C,CAAC;AAClF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAE1E,qBACa,qBAAsB,SAAQ,oBAAoB;IAE3D;;OAEG;IACH,SAAS,CAAC,WAAW,EAAE,OAAO,CAAS;IAEvC;;OAEG;IACH,SAAS,CAAC,aAAa,EAAE,OAAO,CAAS;IAGzC,SAAS,CAAC,QAAQ,CAAC,kBAAkB,EAAE,kBAAkB,CAAC;IAG1D,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE,yBAAyB,CAAC;IAGvD,SAAS,CAAC,QAAQ,CAAC,yBAAyB,EAAE,yBAAyB,CAAC;IAGxE,SAAS,CAAC,QAAQ,CAAC,sBAAsB,EAAE,sBAAsB,CAAC;IAEzD,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,GAAE,gBAAqB,GAAG,SAAS;IAK1E,oBAAoB,CAAC,MAAM,CAAC,EAAE,kBAAkB,GAAG,IAAI;IAIvD,KAAK,IAAI,IAAI;IAItB,SAAS,CAAC,IAAI,IAAI,IAAI;cAYH,uBAAuB,IAAI,IAAI;IAOlD;;OAEG;cACa,qBAAqB,IAAI,OAAO,CAAC,IAAI,CAAC;IAO7C,MAAM,CAAC,MAAM,CAAC,EAAE,mBAAmB,GAAG,IAAI;CAetD"}
@@ -42,6 +42,9 @@ let ElectronWindowService = class ElectronWindowService extends default_window_s
42
42
  openNewDefaultWindow(params) {
43
43
  this.delegate.openNewDefaultWindow(params);
44
44
  }
45
+ focus() {
46
+ window.electronTheiaCore.focusWindow();
47
+ }
45
48
  init() {
46
49
  // Update the default zoom level on startup when the preferences event is fired.
47
50
  this.electronWindowPreferences.onPreferenceChanged(e => {
@@ -1 +1 @@
1
- {"version":3,"file":"electron-window-service.js","sourceRoot":"","sources":["../../../src/electron-browser/window/electron-window-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"electron-window-service.js","sourceRoot":"","sources":["../../../src/electron-browser/window/electron-window-service.ts"],"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;;;;AAEhF,yCAA8D;AAE9D,wFAAmF;AACnF,qGAA+F;AAC/F,+EAA0E;AAC1E,wFAAsF;AACtF,uFAAkF;AAIlF,IAAa,qBAAqB,GAAlC,MAAa,qBAAsB,SAAQ,6CAAoB;IAA/D;;QAEI;;WAEG;QACO,gBAAW,GAAY,KAAK,CAAC;QAEvC;;WAEG;QACO,kBAAa,GAAY,KAAK,CAAC;IAuE7C,CAAC;IAzDY,aAAa,CAAC,GAAW,EAAE,EAAE,QAAQ,KAAuB,EAAE;QACnE,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC/C,OAAO,SAAS,CAAC;IACrB,CAAC;IAEQ,oBAAoB,CAAC,MAA2B;QACrD,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAEQ,KAAK;QACV,MAAM,CAAC,iBAAiB,CAAC,WAAW,EAAE,CAAC;IAC3C,CAAC;IAES,IAAI;QACV,gFAAgF;QAChF,IAAI,CAAC,yBAAyB,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE;YACnD,IAAI,CAAC,CAAC,cAAc,KAAK,kBAAkB,EAAE;gBACzC,IAAI,CAAC,qBAAqB,EAAE,CAAC;aAChC;QACL,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,iBAAiB,CAAC,cAAc,CAAC,GAAG,EAAE;YACzC,IAAI,CAAC,sBAAsB,CAAC,YAAY,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC,CAAC;QAC9E,CAAC,CAAC,CAAC;IACP,CAAC;IAEkB,uBAAuB;QACtC,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,CAAC,MAAM,CAAC,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC;QACzF,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,GAAG,EAAE;YACnC,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;QAChC,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACO,KAAK,CAAC,qBAAqB;QACjC,MAAM,kBAAkB,GAAG,IAAI,CAAC,yBAAyB,CAAC,kBAAkB,CAAC,CAAC;QAC9E,IAAI,MAAM,MAAM,CAAC,iBAAiB,CAAC,YAAY,EAAE,KAAK,kBAAkB,EAAE;YACtE,MAAM,CAAC,iBAAiB,CAAC,YAAY,CAAC,kBAAkB,CAAC,CAAC;SAC7D;IACL,CAAC;IAEQ,MAAM,CAAC,MAA4B;QACxC,IAAI,MAAM,EAAE;YACR,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YAC3C,IAAI,MAAM,CAAC,MAAM,EAAE;gBACf,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,IAAI,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACjG,WAAW,CAAC,MAAM,GAAG,KAAK,CAAC;aAC9B;YACD,IAAI,MAAM,CAAC,IAAI,EAAE;gBACb,WAAW,CAAC,IAAI,GAAG,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC;aACxC;YACD,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;SAChC;aAAM;YACH,MAAM,CAAC,iBAAiB,CAAC,aAAa,EAAE,CAAC;SAC5C;IACL,CAAC;CACJ,CAAA;AApEG;IADC,IAAA,kBAAM,EAAC,yCAAkB,CAAC;;iEAC+B;AAG1D;IADC,IAAA,kBAAM,EAAC,wDAAyB,CAAC;;uDACqB;AAGvD;IADC,IAAA,kBAAM,EAAC,uDAAyB,CAAC;;wEACsC;AAGxE;IADC,IAAA,kBAAM,EAAC,8CAAsB,CAAC;;qEACmC;AAelE;IADC,IAAA,yBAAa,GAAE;;;;iDAWf;AA/CQ,qBAAqB;IADjC,IAAA,sBAAU,GAAE;GACA,qBAAqB,CAiFjC;AAjFY,sDAAqB"}
@@ -27,9 +27,9 @@ export interface TheiaCoreAPI {
27
27
  attachSecurityToken: (endpoint: string) => Promise<void>;
28
28
  setMenuBarVisible(visible: boolean, windowName?: string): void;
29
29
  setMenu(menu: MenuDto[] | undefined): void;
30
- popup(menu: MenuDto[], x: number, y: number, onClosed: () => void): Promise<number>;
30
+ popup(menu: MenuDto[], x: number, y: number, onClosed: () => void, windowName?: string): Promise<number>;
31
31
  closePopup(handle: number): void;
32
- focusWindow(name: string): void;
32
+ focusWindow(name?: string): void;
33
33
  showItemInFolder(fsPath: string): void;
34
34
  getTitleBarStyleAtStartup(): Promise<string>;
35
35
  setTitleBarStyle(style: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"electron-api.d.ts","sourceRoot":"","sources":["../../src/electron-common/electron-api.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,oBAAoB,EAAE,MAAM,6CAA6C,CAAC;AACnF,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACvC,OAAO,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAE5F,oBAAY,QAAQ,GAAG,CAAC,MAAM,GAAG,MAAM,GAAG,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,WAAW,GAAG,OAAO,GAAG,UAAU,GAAG,MAAM,GAAG,YAAY,GAAG,QAAQ,GAAG,MAAM,CAAC,CAAC;AAErJ,MAAM,WAAW,OAAO;IACpB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,CAAC,EAAE,OAAO,EAAE,CAAC;IACpB,IAAI,CAAC,EAAE,CAAC,QAAQ,GAAG,WAAW,GAAG,SAAS,GAAG,UAAU,GAAG,OAAO,CAAC,CAAC;IACnE,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,IAAI,CAAC,EAAE,QAAQ,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAA;CACvB;AAED,oBAAY,eAAe,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,GAAG,SAAS,CAAC,GAAG;IACjE,OAAO,CAAC,EAAE,eAAe,EAAE,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAA;CACrB,CAAC;AAEF,oBAAY,WAAW,GAAG,UAAU,GAAG,YAAY,GAAG,OAAO,CAAC;AAE9D,MAAM,WAAW,YAAY;IACzB,cAAc,EAAE;QACZ,YAAY,EAAE,MAAM,CAAC;KACxB,CAAA;IACD,gBAAgB,EAAE,MAAM,MAAM,CAAC;IAC/B,mBAAmB,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAEzD,iBAAiB,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/D,OAAO,CAAC,IAAI,EAAE,OAAO,EAAE,GAAG,SAAS,GAAG,IAAI,CAAC;IAE3C,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACpF,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjC,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAEhC,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAEvC,yBAAyB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7C,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACtC,kBAAkB,CAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAClD,QAAQ,IAAI,IAAI,CAAC;IACjB,WAAW,IAAI,OAAO,CAAC;IACvB,QAAQ,IAAI,IAAI,CAAC;IACjB,UAAU,IAAI,IAAI,CAAC;IACnB,KAAK,IAAI,IAAI,CAAC;IACd,aAAa,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,UAAU,CAAC;IACnE,cAAc,CAAC,OAAO,EAAE,MAAM,IAAI,GAAG,UAAU,CAAC;IAChD,sBAAsB,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,UAAU,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IAEhF,qCAAqC,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC;IAEjG,cAAc,IAAI,IAAI,CAAC;IACvB,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAEpC,gBAAgB,IAAI,OAAO,CAAC;IAC5B,YAAY,IAAI,OAAO,CAAC;IACxB,gBAAgB,IAAI,IAAI,CAAC;IAEzB,aAAa,IAAI,IAAI,CAAC;IACtB,OAAO,IAAI,IAAI,CAAC;IAEhB,uBAAuB,CAAC,KAAK,EAAE,wBAAwB,GAAG,IAAI,CAAC;IAE/D,aAAa,IAAI,MAAM,CAAC;IACxB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAEnC,uBAAuB,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,oBAAoB,KAAK,IAAI,GAAG,UAAU,CAAC;IAExF,QAAQ,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,CAAC;IACjC,MAAM,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,UAAU,KAAK,IAAI,GAAG,UAAU,CAAC;IACxD,iBAAiB,EAAE,OAAO,CAAC;CAC9B;AAED,OAAO,CAAC,MAAM,CAAC;IACX,UAAU,MAAM;QACZ,iBAAiB,EAAE,YAAY,CAAA;KAClC;CACJ;AAED,eAAO,MAAM,mBAAmB,uBAAuB,CAAC;AACxD,eAAO,MAAM,gBAAgB,YAAY,CAAC;AAC1C,eAAO,MAAM,4BAA4B,sBAAsB,CAAC;AAChE,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAChD,eAAO,MAAM,kBAAkB,cAAc,CAAC;AAC9C,eAAO,MAAM,sBAAsB,iBAAiB,CAAC;AACrD,eAAO,MAAM,mBAAmB,eAAe,CAAC;AAChD,eAAO,MAAM,0BAA0B,qBAAqB,CAAC;AAC7D,eAAO,MAAM,oBAAoB,gBAAgB,CAAC;AAClD,eAAO,MAAM,iBAAiB,mBAAmB,CAAC;AAClD,eAAO,MAAM,iBAAiB,mBAAmB,CAAC;AAClD,eAAO,MAAM,2BAA2B,qBAAqB,CAAC;AAC9D,eAAO,MAAM,6BAA6B,wBAAwB,CAAC;AAEnE,eAAO,MAAM,kCAAkC,2BAA2B,CAAC;AAC3E,eAAO,MAAM,uBAAuB,kBAAkB,CAAC;AACvD,eAAO,MAAM,4BAA4B,uBAAuB,CAAC;AACjE,eAAO,MAAM,aAAa,UAAU,CAAC;AACrC,eAAO,MAAM,gBAAgB,aAAa,CAAC;AAC3C,eAAO,MAAM,gBAAgB,aAAa,CAAC;AAC3C,eAAO,MAAM,oBAAoB,gBAAgB,CAAC;AAElD,eAAO,MAAM,sBAAsB,iBAAiB,CAAC;AAErD,eAAO,MAAM,kBAAkB,eAAe,CAAC;AAC/C,eAAO,MAAM,uBAAuB,kBAAkB,CAAC;AACvD,eAAO,MAAM,uBAAuB,mBAAmB,CAAC;AACxD,eAAO,MAAM,sBAAsB,iBAAiB,CAAC;AACrD,eAAO,MAAM,sBAAsB,iBAAiB,CAAC;AACrD,eAAO,MAAM,0BAA0B,qBAAqB,CAAC;AAC7D,eAAO,MAAM,sBAAsB,iBAAiB,CAAC;AACrD,eAAO,MAAM,0BAA0B,qBAAqB,CAAC;AAE7D,eAAO,MAAM,+BAA+B,0BAA0B,CAAC;AAEvE,eAAO,MAAM,qBAAqB,iBAAiB,CAAC;AACpD,eAAO,MAAM,sBAAsB,kBAAkB,CAAC;AACtD,eAAO,MAAM,eAAe,YAAY,CAAC;AAEzC,eAAO,MAAM,yBAAyB,4BAA4B,CAAC;AAEnE,eAAO,MAAM,sBAAsB,kBAAkB,CAAC;AACtD,eAAO,MAAM,uBAAuB,mBAAmB,CAAC;AAExD,eAAO,MAAM,+BAA+B,0BAA0B,CAAC;AACvE,eAAO,MAAM,sBAAsB,kBAAkB,CAAC"}
1
+ {"version":3,"file":"electron-api.d.ts","sourceRoot":"","sources":["../../src/electron-common/electron-api.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"electron-api-main.d.ts","sourceRoot":"","sources":["../../src/electron-main/electron-api-main.ts"],"names":[],"mappings":"AAgBA,OAAO,EACqB,IAAI,EAAE,0BAA0B,EAAe,WAAW,EACrF,MAAM,iCAAiC,CAAC;AAIzC,OAAO,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAC5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EASH,WAAW,EAeX,eAAe,EAQlB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,mCAAmC,EAAE,MAAM,6BAA6B,CAAC;AAC3G,OAAO,EAAE,UAAU,EAA+B,YAAY,EAAE,MAAM,WAAW,CAAC;AAGlF,qBACa,YAAa,YAAW,mCAAmC;IAEpE,SAAS,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAEvD,SAAS,CAAC,QAAQ,CAAC,UAAU,oBAA2B;IAExD,OAAO,CAAC,WAAW,EAAE,uBAAuB,GAAG,YAAY,CAAC,IAAI,CAAC;IAiKjE,WAAW,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,0BAA0B,EAAE;CAwB7G;AAID,yBAAiB,gBAAgB,CAAC;IAC9B,SAAgB,eAAe,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAEzE;IAED,SAAgB,gBAAgB,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAW/D;IAED,SAAgB,YAAY,CAAC,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAetF;IAED,SAAgB,qBAAqB,CAAC,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAe7G;IAED,SAAgB,eAAe,CAAC,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,UAAU,CAEhF;IAED,SAAgB,yBAAyB,CAAC,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,wBAAwB,KAAK,IAAI,GAAG,UAAU,CAEzH;IAED,SAAgB,SAAS,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,KAAK,IAAI,GAAG,UAAU,CAE9F;IAED,SAAgB,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI,CAEhE;CASJ"}
1
+ {"version":3,"file":"electron-api-main.d.ts","sourceRoot":"","sources":["../../src/electron-main/electron-api-main.ts"],"names":[],"mappings":"AAgBA,OAAO,EACqB,IAAI,EAAE,0BAA0B,EAAe,WAAW,EACrF,MAAM,iCAAiC,CAAC;AAIzC,OAAO,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,sCAAsC,CAAC;AAC5F,OAAO,EAAE,qBAAqB,EAAE,MAAM,mCAAmC,CAAC;AAC1E,OAAO,EASH,WAAW,EAeX,eAAe,EAQlB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,uBAAuB,EAAE,mCAAmC,EAAE,MAAM,6BAA6B,CAAC;AAC3G,OAAO,EAAE,UAAU,EAA+B,YAAY,EAAE,MAAM,WAAW,CAAC;AAGlF,qBACa,YAAa,YAAW,mCAAmC;IAEpE,SAAS,CAAC,qBAAqB,EAAE,qBAAqB,CAAC;IAEvD,SAAS,CAAC,QAAQ,CAAC,UAAU,oBAA2B;IAExD,OAAO,CAAC,WAAW,EAAE,uBAAuB,GAAG,YAAY,CAAC,IAAI,CAAC;IA0KjE,WAAW,CAAC,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,GAAG,0BAA0B,EAAE;CAwB7G;AAID,yBAAiB,gBAAgB,CAAC;IAC9B,SAAgB,eAAe,CAAC,EAAE,EAAE,WAAW,EAAE,KAAK,EAAE,WAAW,GAAG,IAAI,CAEzE;IAED,SAAgB,gBAAgB,CAAC,EAAE,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAW/D;IAED,SAAgB,YAAY,CAAC,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,UAAU,GAAG,OAAO,CAAC,OAAO,CAAC,CAetF;IAED,SAAgB,qBAAqB,CAAC,UAAU,EAAE,WAAW,EAAE,eAAe,EAAE,WAAW,GAAG,OAAO,CAAC,OAAO,CAAC,CAe7G;IAED,SAAgB,eAAe,CAAC,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,IAAI,GAAG,UAAU,CAEhF;IAED,SAAgB,yBAAyB,CAAC,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC,KAAK,EAAE,wBAAwB,KAAK,IAAI,GAAG,UAAU,CAEzH;IAED,SAAgB,SAAS,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,KAAK,IAAI,GAAG,UAAU,CAE9F;IAED,SAAgB,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,GAAG,IAAI,CAEhE;CASJ"}
@@ -77,7 +77,7 @@ let TheiaMainApi = class TheiaMainApi {
77
77
  }
78
78
  });
79
79
  // popup menu
80
- electron_1.ipcMain.handle(electron_api_1.CHANNEL_OPEN_POPUP, (event, menuId, menu, x, y) => {
80
+ electron_1.ipcMain.handle(electron_api_1.CHANNEL_OPEN_POPUP, (event, menuId, menu, x, y, windowName) => {
81
81
  const zoom = event.sender.getZoomFactor();
82
82
  // TODO: Remove the offset once Electron fixes https://github.com/electron/electron/issues/31641
83
83
  const offset = process.platform === 'win32' ? 0 : 2;
@@ -86,7 +86,15 @@ let TheiaMainApi = class TheiaMainApi {
86
86
  y = Math.round(y * zoom) + offset;
87
87
  const popup = electron_1.Menu.buildFromTemplate(this.fromMenuDto(event.sender, menuId, menu));
88
88
  this.openPopups.set(menuId, popup);
89
+ let electronWindow;
90
+ if (windowName) {
91
+ electronWindow = electron_1.BrowserWindow.getAllWindows().find(win => win.webContents.mainFrame.name === windowName);
92
+ }
93
+ else {
94
+ electronWindow = electron_1.BrowserWindow.fromWebContents(event.sender) || undefined;
95
+ }
89
96
  popup.popup({
97
+ window: electronWindow,
90
98
  callback: () => {
91
99
  this.openPopups.delete(menuId);
92
100
  event.sender.send(electron_api_1.CHANNEL_ON_CLOSE_POPUP, menuId);
@@ -100,7 +108,9 @@ let TheiaMainApi = class TheiaMainApi {
100
108
  });
101
109
  // focus windows for secondary window support
102
110
  electron_1.ipcMain.on(electron_api_1.CHANNEL_FOCUS_WINDOW, (event, windowName) => {
103
- const electronWindow = electron_1.BrowserWindow.getAllWindows().find(win => win.webContents.mainFrame.name === windowName);
111
+ const electronWindow = windowName
112
+ ? electron_1.BrowserWindow.getAllWindows().find(win => win.webContents.mainFrame.name === windowName)
113
+ : electron_1.BrowserWindow.fromWebContents(event.sender);
104
114
  if (electronWindow) {
105
115
  if (electronWindow.isMinimized()) {
106
116
  electronWindow.restore();
@@ -1 +1 @@
1
- {"version":3,"file":"electron-api-main.js","sourceRoot":"","sources":["../../src/electron-main/electron-api-main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"electron-api-main.js","sourceRoot":"","sources":["../../src/electron-main/electron-api-main.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@theia/core",
3
- "version": "1.46.0-next.106+cf038c17c",
3
+ "version": "1.46.0-next.144+32f393a33",
4
4
  "description": "Theia is a cloud & desktop IDE framework implemented in TypeScript.",
5
5
  "main": "lib/common/index.js",
6
6
  "typings": "lib/common/index.d.ts",
@@ -16,8 +16,8 @@
16
16
  "@phosphor/signaling": "1",
17
17
  "@phosphor/virtualdom": "1",
18
18
  "@phosphor/widgets": "1",
19
- "@theia/application-package": "1.46.0-next.106+cf038c17c",
20
- "@theia/request": "1.46.0-next.106+cf038c17c",
19
+ "@theia/application-package": "1.46.0-next.144+32f393a33",
20
+ "@theia/request": "1.46.0-next.144+32f393a33",
21
21
  "@types/body-parser": "^1.16.4",
22
22
  "@types/cookie": "^0.3.3",
23
23
  "@types/dompurify": "^2.2.2",
@@ -206,12 +206,12 @@
206
206
  "watch": "theiaext watch"
207
207
  },
208
208
  "devDependencies": {
209
- "@theia/ext-scripts": "1.47.0",
210
- "@theia/re-exports": "1.47.0",
209
+ "@theia/ext-scripts": "1.48.0",
210
+ "@theia/re-exports": "1.48.0",
211
211
  "minimist": "^1.2.0"
212
212
  },
213
213
  "nyc": {
214
214
  "extends": "../../configs/nyc.json"
215
215
  },
216
- "gitHead": "cf038c17c3b3b210d9ae02b09d64921f639247f9"
216
+ "gitHead": "32f393a3385927ed79708b4e1a2faf78806f1fd3"
217
217
  }
@@ -22,6 +22,7 @@ import { FrontendApplicationContribution } from './frontend-application-contribu
22
22
  import { ContributionProvider } from '../common/contribution-provider';
23
23
  import { Disposable, DisposableCollection } from '../common/disposable';
24
24
  import { DEFAULT_BACKGROUND_COLOR_STORAGE_KEY } from './frontend-application-config-provider';
25
+ import { SecondaryWindowHandler } from './secondary-window-handler';
25
26
 
26
27
  export const ColorContribution = Symbol('ColorContribution');
27
28
  export interface ColorContribution {
@@ -43,6 +44,9 @@ export class ColorApplicationContribution implements FrontendApplicationContribu
43
44
 
44
45
  @inject(ThemeService) protected readonly themeService: ThemeService;
45
46
 
47
+ @inject(SecondaryWindowHandler)
48
+ protected readonly secondaryWindowHandler: SecondaryWindowHandler;
49
+
46
50
  onStart(): void {
47
51
  for (const contribution of this.colorContributions.getContributions()) {
48
52
  contribution.registerColors(this.colors);
@@ -55,13 +59,18 @@ export class ColorApplicationContribution implements FrontendApplicationContribu
55
59
  this.colors.onDidChange(() => this.update());
56
60
 
57
61
  this.registerWindow(window);
62
+ this.secondaryWindowHandler.onWillAddWidget(([widget, window]) => {
63
+ this.registerWindow(window);
64
+ });
65
+ this.secondaryWindowHandler.onWillRemoveWidget(([widget, window]) => {
66
+ this.windows.delete(window);
67
+ });
58
68
  }
59
69
 
60
- registerWindow(win: Window): Disposable {
70
+ registerWindow(win: Window): void {
61
71
  this.windows.add(win);
62
72
  this.updateWindow(win);
63
73
  this.onDidChangeEmitter.fire();
64
- return Disposable.create(() => this.windows.delete(win));
65
74
  }
66
75
 
67
76
  protected readonly toUpdate = new DisposableCollection();
@@ -41,7 +41,7 @@ export class CommandOpenHandler implements OpenHandler {
41
41
  try {
42
42
  args = JSON.parse(uri.query);
43
43
  } catch {
44
- // ignore error
44
+ args = uri.query;
45
45
  }
46
46
  }
47
47
  if (!Array.isArray(args)) {
@@ -280,6 +280,15 @@ export namespace CommonCommands {
280
280
  category: VIEW_CATEGORY,
281
281
  label: 'Toggle Menu Bar'
282
282
  });
283
+ /**
284
+ * Command Parameters:
285
+ * - `fileName`: string
286
+ * - `directory`: URI
287
+ */
288
+ export const NEW_FILE = Command.toDefaultLocalizedCommand({
289
+ id: 'workbench.action.files.newFile',
290
+ category: FILE_CATEGORY
291
+ });
283
292
  export const NEW_UNTITLED_TEXT_FILE = Command.toDefaultLocalizedCommand({
284
293
  id: 'workbench.action.files.newUntitledTextFile',
285
294
  category: FILE_CATEGORY,
@@ -1424,6 +1433,7 @@ export class CommonFrontendContribution implements FrontendApplicationContributi
1424
1433
  const items: QuickPickItemOrSeparator[] = [
1425
1434
  {
1426
1435
  label: nls.localizeByDefault('New Text File'),
1436
+ description: nls.localizeByDefault('Built-in'),
1427
1437
  execute: async () => this.commandRegistry.executeCommand(CommonCommands.NEW_UNTITLED_TEXT_FILE.id)
1428
1438
  },
1429
1439
  ...newFileContributions.children
@@ -1446,10 +1456,43 @@ export class CommonFrontendContribution implements FrontendApplicationContributi
1446
1456
 
1447
1457
  })
1448
1458
  ];
1459
+
1460
+ const CREATE_NEW_FILE_ITEM_ID = 'create-new-file';
1461
+ const hasNewFileHandler = this.commandRegistry.getActiveHandler(CommonCommands.NEW_FILE.id) !== undefined;
1462
+ // Create a "Create New File" item only if there is a NEW_FILE command handler.
1463
+ const createNewFileItem: QuickPickItem & { value?: string } | undefined = hasNewFileHandler ? {
1464
+ id: CREATE_NEW_FILE_ITEM_ID,
1465
+ label: nls.localizeByDefault('Create New File ({0})'),
1466
+ description: nls.localizeByDefault('Built-in'),
1467
+ execute: async () => {
1468
+ if (createNewFileItem?.value) {
1469
+ const parent = await this.workingDirProvider.getUserWorkingDir();
1470
+ // Exec NEW_FILE command with the file name and parent dir as arguments
1471
+ return this.commandRegistry.executeCommand(CommonCommands.NEW_FILE.id, createNewFileItem.value, parent);
1472
+ }
1473
+ }
1474
+ } : undefined;
1475
+
1449
1476
  this.quickInputService.showQuickPick(items, {
1450
1477
  title: nls.localizeByDefault('New File...'),
1451
1478
  placeholder: nls.localizeByDefault('Select File Type or Enter File Name...'),
1452
- canSelectMany: false
1479
+ canSelectMany: false,
1480
+ onDidChangeValue: picker => {
1481
+ if (createNewFileItem === undefined) {
1482
+ return;
1483
+ }
1484
+ // Dynamically show or hide the "Create New File" item based on the input value.
1485
+ if (picker.value) {
1486
+ createNewFileItem.alwaysShow = true;
1487
+ createNewFileItem.value = picker.value;
1488
+ createNewFileItem.label = nls.localizeByDefault('Create New File ({0})', picker.value);
1489
+ picker.items = [...items, createNewFileItem];
1490
+ } else {
1491
+ createNewFileItem.alwaysShow = false;
1492
+ createNewFileItem.value = undefined;
1493
+ picker.items = items.filter(item => item !== createNewFileItem);
1494
+ }
1495
+ }
1453
1496
  });
1454
1497
  }
1455
1498
 
@@ -140,6 +140,7 @@ import { HoverService } from './hover-service';
140
140
  import { AdditionalViewsMenuWidget, AdditionalViewsMenuWidgetFactory } from './shell/additional-views-menu-widget';
141
141
  import { LanguageIconLabelProvider } from './language-icon-provider';
142
142
  import { bindTreePreferences } from './tree';
143
+ import { OpenWithService } from './open-with-service';
143
144
 
144
145
  export { bindResourceProvider, bindMessageService, bindPreferenceService };
145
146
 
@@ -224,6 +225,8 @@ export const frontendApplicationModule = new ContainerModule((bind, _unbind, _is
224
225
  bind(CommandOpenHandler).toSelf().inSingletonScope();
225
226
  bind(OpenHandler).toService(CommandOpenHandler);
226
227
 
228
+ bind(OpenWithService).toSelf().inSingletonScope();
229
+
227
230
  bind(TooltipServiceImpl).toSelf().inSingletonScope();
228
231
  bind(TooltipService).toService(TooltipServiceImpl);
229
232
 
@@ -19,6 +19,7 @@ export * from './frontend-application';
19
19
  export * from './frontend-application-contribution';
20
20
  export * from './keyboard';
21
21
  export * from './opener-service';
22
+ export * from './open-with-service';
22
23
  export * from './browser';
23
24
  export * from './context-menu-renderer';
24
25
  export * from './widgets';
@@ -497,7 +497,7 @@ export class KeybindingRegistry {
497
497
 
498
498
  isEnabledInScope(binding: common.Keybinding, target: HTMLElement | undefined): boolean {
499
499
  const context = binding.context && this.contexts[binding.context];
500
- if (binding.command && !this.commandRegistry.isEnabled(binding.command, binding.args)) {
500
+ if (binding.command && (!this.isPseudoCommand(binding.command) && !this.commandRegistry.isEnabled(binding.command, binding.args))) {
501
501
  return false;
502
502
  }
503
503
  if (context && !context.isEnabled(binding)) {
@@ -40,7 +40,8 @@ export class BrowserContextMenuRenderer extends ContextMenuRenderer {
40
40
  if (onHide) {
41
41
  contextMenu.aboutToClose.connect(() => onHide!());
42
42
  }
43
- contextMenu.open(x, y);
43
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
44
+ contextMenu.open(x, y, undefined, context);
44
45
  return new BrowserContextMenuAccess(contextMenu);
45
46
  }
46
47
 
@@ -267,14 +267,14 @@ export class DynamicMenuWidget extends MenuWidget {
267
267
  });
268
268
  }
269
269
 
270
- public override open(x: number, y: number, options?: MenuWidget.IOpenOptions): void {
270
+ public override open(x: number, y: number, options?: MenuWidget.IOpenOptions, anchor?: HTMLElement): void {
271
271
  const cb = () => {
272
272
  this.restoreFocusedElement();
273
273
  this.aboutToClose.disconnect(cb);
274
274
  };
275
275
  this.aboutToClose.connect(cb);
276
276
  this.preserveFocusedElement();
277
- super.open(x, y, options);
277
+ super.open(x, y, options, anchor);
278
278
  }
279
279
 
280
280
  protected updateSubMenus(parent: MenuWidget, menu: CompoundMenuNode, commands: MenuCommandRegistry): void {
@@ -0,0 +1,93 @@
1
+ // *****************************************************************************
2
+ // Copyright (C) 2024 TypeFox and others.
3
+ //
4
+ // This program and the accompanying materials are made available under the
5
+ // terms of the Eclipse Public License v. 2.0 which is available at
6
+ // http://www.eclipse.org/legal/epl-2.0.
7
+ //
8
+ // This Source Code may also be made available under the following Secondary
9
+ // Licenses when the conditions for such availability set forth in the Eclipse
10
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
11
+ // with the GNU Classpath Exception which is available at
12
+ // https://www.gnu.org/software/classpath/license.html.
13
+ //
14
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
15
+ // *****************************************************************************
16
+
17
+ import { inject, injectable } from 'inversify';
18
+ import { Disposable } from '../common/disposable';
19
+ import { nls } from '../common/nls';
20
+ import { MaybePromise } from '../common/types';
21
+ import { URI } from '../common/uri';
22
+ import { QuickInputService } from './quick-input';
23
+
24
+ export interface OpenWithHandler {
25
+ /**
26
+ * A unique id of this handler.
27
+ */
28
+ readonly id: string;
29
+ /**
30
+ * A human-readable name of this handler.
31
+ */
32
+ readonly label?: string;
33
+ /**
34
+ * A human-readable provider name of this handler.
35
+ */
36
+ readonly providerName?: string;
37
+ /**
38
+ * A css icon class of this handler.
39
+ */
40
+ readonly iconClass?: string;
41
+ /**
42
+ * Test whether this handler can open the given URI for given options.
43
+ * Return a nonzero number if this handler can open; otherwise it cannot.
44
+ * Never reject.
45
+ *
46
+ * A returned value indicating a priority of this handler.
47
+ */
48
+ canHandle(uri: URI): number;
49
+ /**
50
+ * Open a widget for the given URI and options.
51
+ * Resolve to an opened widget or undefined, e.g. if a page is opened.
52
+ * Never reject if `canHandle` return a positive number; otherwise should reject.
53
+ */
54
+ open(uri: URI): MaybePromise<object | undefined>;
55
+ }
56
+
57
+ @injectable()
58
+ export class OpenWithService {
59
+
60
+ @inject(QuickInputService)
61
+ protected readonly quickInputService: QuickInputService;
62
+
63
+ protected readonly handlers: OpenWithHandler[] = [];
64
+
65
+ registerHandler(handler: OpenWithHandler): Disposable {
66
+ this.handlers.push(handler);
67
+ return Disposable.create(() => {
68
+ const index = this.handlers.indexOf(handler);
69
+ if (index !== -1) {
70
+ this.handlers.splice(index, 1);
71
+ }
72
+ });
73
+ }
74
+
75
+ async openWith(uri: URI): Promise<object | undefined> {
76
+ const handlers = this.getHandlers(uri);
77
+ const result = await this.quickInputService.pick(handlers.map(handler => ({
78
+ handler: handler,
79
+ label: handler.label ?? handler.id,
80
+ detail: handler.providerName
81
+ })), {
82
+ placeHolder: nls.localizeByDefault("Select editor for '{0}'", uri.path.base)
83
+ });
84
+ if (result) {
85
+ return result.handler.open(uri);
86
+ }
87
+ }
88
+
89
+ getHandlers(uri: URI): OpenWithHandler[] {
90
+ const map = new Map<OpenWithHandler, number>(this.handlers.map(handler => [handler, handler.canHandle(uri)]));
91
+ return this.handlers.filter(handler => map.get(handler)! > 0).sort((a, b) => map.get(b)! - map.get(a)!);
92
+ }
93
+ }
@@ -22,8 +22,6 @@ import { ApplicationShell } from './shell/application-shell';
22
22
  import { Emitter } from '../common/event';
23
23
  import { SecondaryWindowService } from './window/secondary-window-service';
24
24
  import { KeybindingRegistry } from './keybinding';
25
- import { ColorApplicationContribution } from './color-application-contribution';
26
- import { StylingService } from './styling-service';
27
25
 
28
26
  /** Widget to be contained directly in a secondary window. */
29
27
  class SecondaryWindowRootWidget extends Widget {
@@ -47,7 +45,6 @@ class SecondaryWindowRootWidget extends Widget {
47
45
  * This handler manages the opened secondary windows and sets up messaging between them and the Theia main window.
48
46
  * In addition, it provides access to the extracted widgets and provides notifications when widgets are added to or removed from this handler.
49
47
  *
50
- * @experimental The functionality provided by this handler is experimental and has known issues in Electron apps.
51
48
  */
52
49
  @injectable()
53
50
  export class SecondaryWindowHandler {
@@ -59,17 +56,19 @@ export class SecondaryWindowHandler {
59
56
  @inject(KeybindingRegistry)
60
57
  protected keybindings: KeybindingRegistry;
61
58
 
62
- @inject(ColorApplicationContribution)
63
- protected colorAppContribution: ColorApplicationContribution;
64
-
65
- @inject(StylingService)
66
- protected stylingService: StylingService;
59
+ protected readonly onWillAddWidgetEmitter = new Emitter<[Widget, Window]>();
60
+ /** Subscribe to get notified when a widget is added to this handler, i.e. the widget was moved to an secondary window . */
61
+ readonly onWillAddWidget = this.onWillAddWidgetEmitter.event;
67
62
 
68
- protected readonly onDidAddWidgetEmitter = new Emitter<Widget>();
63
+ protected readonly onDidAddWidgetEmitter = new Emitter<[Widget, Window]>();
69
64
  /** Subscribe to get notified when a widget is added to this handler, i.e. the widget was moved to an secondary window . */
70
65
  readonly onDidAddWidget = this.onDidAddWidgetEmitter.event;
71
66
 
72
- protected readonly onDidRemoveWidgetEmitter = new Emitter<Widget>();
67
+ protected readonly onWillRemoveWidgetEmitter = new Emitter<[Widget, Window]>();
68
+ /** Subscribe to get notified when a widget is removed from this handler, i.e. the widget's window was closed or the widget was disposed. */
69
+ readonly onWillRemoveWidget = this.onWillRemoveWidgetEmitter.event;
70
+
71
+ protected readonly onDidRemoveWidgetEmitter = new Emitter<[Widget, Window]>();
73
72
  /** Subscribe to get notified when a widget is removed from this handler, i.e. the widget's window was closed or the widget was disposed. */
74
73
  readonly onDidRemoveWidget = this.onDidRemoveWidgetEmitter.event;
75
74
 
@@ -122,7 +121,8 @@ export class SecondaryWindowHandler {
122
121
  }
123
122
 
124
123
  const mainWindowTitle = document.title;
125
- newWindow.onload = () => {
124
+
125
+ newWindow.addEventListener('load', () => {
126
126
  this.keybindings.registerEventListeners(newWindow);
127
127
  // Use the widget's title as the window title
128
128
  // Even if the widget's label were malicious, this should be safe against XSS because the HTML standard defines this is inserted via a text node.
@@ -134,8 +134,8 @@ export class SecondaryWindowHandler {
134
134
  console.error('Could not find dom element to attach to in secondary window');
135
135
  return;
136
136
  }
137
- const unregisterWithColorContribution = this.colorAppContribution.registerWindow(newWindow);
138
- const unregisterWithStylingService = this.stylingService.registerWindow(newWindow);
137
+
138
+ this.onWillAddWidgetEmitter.fire([widget, newWindow]);
139
139
 
140
140
  widget.secondaryWindow = newWindow;
141
141
  const rootWidget = new SecondaryWindowRootWidget();
@@ -145,13 +145,12 @@ export class SecondaryWindowHandler {
145
145
  widget.show();
146
146
  widget.update();
147
147
 
148
- this.addWidget(widget);
148
+ this.addWidget(widget, newWindow);
149
149
 
150
150
  // Close the window if the widget is disposed, e.g. by a command closing all widgets.
151
151
  widget.disposed.connect(() => {
152
- unregisterWithColorContribution.dispose();
153
- unregisterWithStylingService.dispose();
154
- this.removeWidget(widget);
152
+ this.onWillRemoveWidgetEmitter.fire([widget, newWindow]);
153
+ this.removeWidget(widget, newWindow);
155
154
  if (!newWindow.closed) {
156
155
  newWindow.close();
157
156
  }
@@ -165,7 +164,7 @@ export class SecondaryWindowHandler {
165
164
  updateWidget();
166
165
  });
167
166
  widget.activate();
168
- };
167
+ });
169
168
  }
170
169
 
171
170
  /**
@@ -195,18 +194,18 @@ export class SecondaryWindowHandler {
195
194
  return undefined;
196
195
  }
197
196
 
198
- protected addWidget(widget: ExtractableWidget): void {
197
+ protected addWidget(widget: ExtractableWidget, win: Window): void {
199
198
  if (!this._widgets.includes(widget)) {
200
199
  this._widgets.push(widget);
201
- this.onDidAddWidgetEmitter.fire(widget);
200
+ this.onDidAddWidgetEmitter.fire([widget, win]);
202
201
  }
203
202
  }
204
203
 
205
- protected removeWidget(widget: ExtractableWidget): void {
204
+ protected removeWidget(widget: ExtractableWidget, win: Window): void {
206
205
  const index = this._widgets.indexOf(widget);
207
206
  if (index > -1) {
208
207
  this._widgets.splice(index, 1);
209
- this.onDidRemoveWidgetEmitter.fire(widget);
208
+ this.onDidRemoveWidgetEmitter.fire([widget, win]);
210
209
  }
211
210
  }
212
211
  }