@theia/getting-started 1.40.1 → 1.42.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.
@@ -1,7 +1,10 @@
1
1
  import { CommandRegistry, MenuModelRegistry } from '@theia/core/lib/common';
2
- import { AbstractViewContribution, FrontendApplicationContribution, FrontendApplication } from '@theia/core/lib/browser';
2
+ import { AbstractViewContribution, FrontendApplicationContribution, FrontendApplication, PreferenceService } from '@theia/core/lib/browser';
3
+ import { EditorManager } from '@theia/editor/lib/browser/editor-manager';
3
4
  import { GettingStartedWidget } from './getting-started-widget';
5
+ import { FileService } from '@theia/filesystem/lib/browser/file-service';
4
6
  import { FrontendApplicationStateService } from '@theia/core/lib/browser/frontend-application-state';
7
+ import { PreviewContribution } from '@theia/preview/lib/browser/preview-contribution';
5
8
  import { WorkspaceService } from '@theia/workspace/lib/browser';
6
9
  /**
7
10
  * Triggers opening the `GettingStartedWidget`.
@@ -11,10 +14,16 @@ export declare const GettingStartedCommand: {
11
14
  label: string;
12
15
  };
13
16
  export declare class GettingStartedContribution extends AbstractViewContribution<GettingStartedWidget> implements FrontendApplicationContribution {
17
+ protected readonly commandRegistry: CommandRegistry;
18
+ protected readonly editorManager: EditorManager;
19
+ protected readonly fileService: FileService;
20
+ protected readonly preferenceService: PreferenceService;
21
+ protected readonly previewContribution: PreviewContribution;
14
22
  protected readonly stateService: FrontendApplicationStateService;
15
23
  protected readonly workspaceService: WorkspaceService;
16
24
  constructor();
17
25
  onStart(app: FrontendApplication): Promise<void>;
26
+ protected openReadme(): Promise<void>;
18
27
  registerCommands(registry: CommandRegistry): void;
19
28
  registerMenus(menus: MenuModelRegistry): void;
20
29
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getting-started-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/getting-started-contribution.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,EAAe,wBAAwB,EAAE,+BAA+B,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AACtI,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,+BAA+B,EAAE,MAAM,oDAAoD,CAAC;AACrG,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;CAGjC,CAAC;AAEF,qBACa,0BAA2B,SAAQ,wBAAwB,CAAC,oBAAoB,CAAE,YAAW,+BAA+B;IAGrI,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,+BAA+B,CAAC;IAGjE,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;;IAYhD,OAAO,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAQ7C,gBAAgB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAMjD,aAAa,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI;CAOzD"}
1
+ {"version":3,"file":"getting-started-contribution.d.ts","sourceRoot":"","sources":["../../src/browser/getting-started-contribution.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAc,eAAe,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AACxF,OAAO,EAA+B,wBAAwB,EAAE,+BAA+B,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAC;AACzK,OAAO,EAAE,aAAa,EAAE,MAAM,0CAA0C,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,4CAA4C,CAAC;AACzE,OAAO,EAAE,+BAA+B,EAAE,MAAM,oDAAoD,CAAC;AACrG,OAAO,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AACtF,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAC;AAEhE;;GAEG;AACH,eAAO,MAAM,qBAAqB;;;CAGjC,CAAC;AAEF,qBACa,0BAA2B,SAAQ,wBAAwB,CAAC,oBAAoB,CAAE,YAAW,+BAA+B;IAGrI,SAAS,CAAC,QAAQ,CAAC,eAAe,EAAE,eAAe,CAAC;IAGpD,SAAS,CAAC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;IAGhD,SAAS,CAAC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAG5C,SAAS,CAAC,QAAQ,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;IAGxD,SAAS,CAAC,QAAQ,CAAC,mBAAmB,EAAE,mBAAmB,CAAC;IAG5D,SAAS,CAAC,QAAQ,CAAC,YAAY,EAAE,+BAA+B,CAAC;IAGjE,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,gBAAgB,CAAC;;IAYhD,OAAO,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;cAyBtC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBlC,gBAAgB,CAAC,QAAQ,EAAE,eAAe,GAAG,IAAI;IAMjD,aAAa,CAAC,KAAK,EAAE,iBAAiB,GAAG,IAAI;CAOzD"}
@@ -26,9 +26,13 @@ var __metadata = (this && this.__metadata) || function (k, v) {
26
26
  Object.defineProperty(exports, "__esModule", { value: true });
27
27
  exports.GettingStartedContribution = exports.GettingStartedCommand = void 0;
28
28
  const inversify_1 = require("@theia/core/shared/inversify");
29
+ const common_1 = require("@theia/core/lib/common");
29
30
  const browser_1 = require("@theia/core/lib/browser");
31
+ const editor_manager_1 = require("@theia/editor/lib/browser/editor-manager");
30
32
  const getting_started_widget_1 = require("./getting-started-widget");
33
+ const file_service_1 = require("@theia/filesystem/lib/browser/file-service");
31
34
  const frontend_application_state_1 = require("@theia/core/lib/browser/frontend-application-state");
35
+ const preview_contribution_1 = require("@theia/preview/lib/browser/preview-contribution");
32
36
  const browser_2 = require("@theia/workspace/lib/browser");
33
37
  /**
34
38
  * Triggers opening the `GettingStartedWidget`.
@@ -48,8 +52,47 @@ let GettingStartedContribution = class GettingStartedContribution extends browse
48
52
  });
49
53
  }
50
54
  async onStart(app) {
51
- if (!this.workspaceService.opened) {
52
- this.stateService.reachedState('ready').then(() => this.openView({ reveal: true, activate: true }));
55
+ this.stateService.reachedState('ready').then(async () => {
56
+ if (this.editorManager.all.length === 0) {
57
+ await this.preferenceService.ready;
58
+ const startupEditor = this.preferenceService.get('workbench.startupEditor');
59
+ switch (startupEditor) {
60
+ case 'welcomePage':
61
+ this.openView({ reveal: true, activate: true });
62
+ break;
63
+ case 'welcomePageInEmptyWorkbench':
64
+ if (!this.workspaceService.opened) {
65
+ this.openView({ reveal: true, activate: true });
66
+ }
67
+ break;
68
+ case 'newUntitledFile':
69
+ this.commandRegistry.executeCommand(browser_1.CommonCommands.NEW_UNTITLED_TEXT_FILE.id);
70
+ break;
71
+ case 'readme':
72
+ await this.openReadme();
73
+ break;
74
+ }
75
+ }
76
+ });
77
+ }
78
+ async openReadme() {
79
+ const roots = await this.workspaceService.roots;
80
+ const readmes = await Promise.all(roots.map(async (folder) => {
81
+ var _a;
82
+ const folderStat = await this.fileService.resolve(folder.resource);
83
+ const fileArr = ((_a = folderStat === null || folderStat === void 0 ? void 0 : folderStat.children) === null || _a === void 0 ? void 0 : _a.sort((a, b) => a.name.localeCompare(b.name))) || [];
84
+ const filePath = fileArr.find(file => file.name.toLowerCase() === 'readme.md') || fileArr.find(file => file.name.toLowerCase().startsWith('readme'));
85
+ return filePath === null || filePath === void 0 ? void 0 : filePath.resource;
86
+ }));
87
+ const validReadmes = common_1.ArrayUtils.coalesce(readmes);
88
+ if (validReadmes.length) {
89
+ for (const readme of validReadmes) {
90
+ await this.previewContribution.open(readme);
91
+ }
92
+ }
93
+ else {
94
+ // If no readme is found, show the welcome page.
95
+ this.openView({ reveal: true, activate: true });
53
96
  }
54
97
  }
55
98
  registerCommands(registry) {
@@ -65,6 +108,26 @@ let GettingStartedContribution = class GettingStartedContribution extends browse
65
108
  });
66
109
  }
67
110
  };
111
+ __decorate([
112
+ (0, inversify_1.inject)(common_1.CommandRegistry),
113
+ __metadata("design:type", common_1.CommandRegistry)
114
+ ], GettingStartedContribution.prototype, "commandRegistry", void 0);
115
+ __decorate([
116
+ (0, inversify_1.inject)(editor_manager_1.EditorManager),
117
+ __metadata("design:type", editor_manager_1.EditorManager)
118
+ ], GettingStartedContribution.prototype, "editorManager", void 0);
119
+ __decorate([
120
+ (0, inversify_1.inject)(file_service_1.FileService),
121
+ __metadata("design:type", file_service_1.FileService)
122
+ ], GettingStartedContribution.prototype, "fileService", void 0);
123
+ __decorate([
124
+ (0, inversify_1.inject)(browser_1.PreferenceService),
125
+ __metadata("design:type", Object)
126
+ ], GettingStartedContribution.prototype, "preferenceService", void 0);
127
+ __decorate([
128
+ (0, inversify_1.inject)(preview_contribution_1.PreviewContribution),
129
+ __metadata("design:type", preview_contribution_1.PreviewContribution)
130
+ ], GettingStartedContribution.prototype, "previewContribution", void 0);
68
131
  __decorate([
69
132
  (0, inversify_1.inject)(frontend_application_state_1.FrontendApplicationStateService),
70
133
  __metadata("design:type", frontend_application_state_1.FrontendApplicationStateService)
@@ -1 +1 @@
1
- {"version":3,"file":"getting-started-contribution.js","sourceRoot":"","sources":["../../src/browser/getting-started-contribution.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,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,4DAAkE;AAElE,qDAAsI;AACtI,qEAAgE;AAChE,mGAAqG;AACrG,0DAAgE;AAEhE;;GAEG;AACU,QAAA,qBAAqB,GAAG;IACjC,EAAE,EAAE,6CAAoB,CAAC,EAAE;IAC3B,KAAK,EAAE,6CAAoB,CAAC,KAAK;CACpC,CAAC;AAGF,IAAa,0BAA0B,GAAvC,MAAa,0BAA2B,SAAQ,kCAA8C;IAQ1F;QACI,KAAK,CAAC;YACF,QAAQ,EAAE,6CAAoB,CAAC,EAAE;YACjC,UAAU,EAAE,6CAAoB,CAAC,KAAK;YACtC,oBAAoB,EAAE;gBAClB,IAAI,EAAE,MAAM;aACf;SACJ,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,GAAwB;QAClC,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE;YAC/B,IAAI,CAAC,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,IAAI,CACxC,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CACxD,CAAC;SACL;IACL,CAAC;IAEQ,gBAAgB,CAAC,QAAyB;QAC/C,QAAQ,CAAC,eAAe,CAAC,6BAAqB,EAAE;YAC5C,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;SACjE,CAAC,CAAC;IACP,CAAC;IAEQ,aAAa,CAAC,KAAwB;QAC3C,KAAK,CAAC,kBAAkB,CAAC,qBAAW,CAAC,IAAI,EAAE;YACvC,SAAS,EAAE,6BAAqB,CAAC,EAAE;YACnC,KAAK,EAAE,6BAAqB,CAAC,KAAK;YAClC,KAAK,EAAE,KAAK;SACf,CAAC,CAAC;IACP,CAAC;CACJ,CAAA;AApCG;IADC,IAAA,kBAAM,EAAC,4DAA+B,CAAC;8BACP,4DAA+B;gEAAC;AAGjE;IADC,IAAA,kBAAM,EAAC,0BAAgB,CAAC;8BACY,0BAAgB;oEAAC;AAN7C,0BAA0B;IADtC,IAAA,sBAAU,GAAE;;GACA,0BAA0B,CAuCtC;AAvCY,gEAA0B"}
1
+ {"version":3,"file":"getting-started-contribution.js","sourceRoot":"","sources":["../../src/browser/getting-started-contribution.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"getting-started-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/getting-started-frontend-module.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,eAAe,EAAc,MAAM,8BAA8B,CAAC;AAI3E,OAAO,mCAAmC,CAAC;;AAE3C,wBAQG"}
1
+ {"version":3,"file":"getting-started-frontend-module.d.ts","sourceRoot":"","sources":["../../src/browser/getting-started-frontend-module.ts"],"names":[],"mappings":"AAiBA,OAAO,EAAE,eAAe,EAAc,MAAM,8BAA8B,CAAC;AAI3E,OAAO,mCAAmC,CAAC;;AAE3C,wBASG"}
@@ -19,6 +19,7 @@ const getting_started_contribution_1 = require("./getting-started-contribution")
19
19
  const inversify_1 = require("@theia/core/shared/inversify");
20
20
  const getting_started_widget_1 = require("./getting-started-widget");
21
21
  const browser_1 = require("@theia/core/lib/browser");
22
+ const getting_started_preferences_1 = require("./getting-started-preferences");
22
23
  require("../../src/browser/style/index.css");
23
24
  exports.default = new inversify_1.ContainerModule((bind) => {
24
25
  (0, browser_1.bindViewContribution)(bind, getting_started_contribution_1.GettingStartedContribution);
@@ -28,5 +29,6 @@ exports.default = new inversify_1.ContainerModule((bind) => {
28
29
  id: getting_started_widget_1.GettingStartedWidget.ID,
29
30
  createWidget: () => context.container.get(getting_started_widget_1.GettingStartedWidget),
30
31
  })).inSingletonScope();
32
+ (0, getting_started_preferences_1.bindGettingStartedPreferences)(bind);
31
33
  });
32
34
  //# sourceMappingURL=getting-started-frontend-module.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getting-started-frontend-module.js","sourceRoot":"","sources":["../../src/browser/getting-started-frontend-module.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,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,iFAA4E;AAC5E,4DAA2E;AAC3E,qEAAgE;AAChE,qDAA+G;AAE/G,6CAA2C;AAE3C,kBAAe,IAAI,2BAAe,CAAC,CAAC,IAAqB,EAAE,EAAE;IACzD,IAAA,8BAAoB,EAAC,IAAI,EAAE,yDAA0B,CAAC,CAAC;IACvD,IAAI,CAAC,yCAA+B,CAAC,CAAC,SAAS,CAAC,yDAA0B,CAAC,CAAC;IAC5E,IAAI,CAAC,6CAAoB,CAAC,CAAC,MAAM,EAAE,CAAC;IACpC,IAAI,CAAC,uBAAa,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC3C,EAAE,EAAE,6CAAoB,CAAC,EAAE;QAC3B,YAAY,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAuB,6CAAoB,CAAC;KACxF,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;AAC3B,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"getting-started-frontend-module.js","sourceRoot":"","sources":["../../src/browser/getting-started-frontend-module.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,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,iFAA4E;AAC5E,4DAA2E;AAC3E,qEAAgE;AAChE,qDAA+G;AAC/G,+EAA8E;AAC9E,6CAA2C;AAE3C,kBAAe,IAAI,2BAAe,CAAC,CAAC,IAAqB,EAAE,EAAE;IACzD,IAAA,8BAAoB,EAAC,IAAI,EAAE,yDAA0B,CAAC,CAAC;IACvD,IAAI,CAAC,yCAA+B,CAAC,CAAC,SAAS,CAAC,yDAA0B,CAAC,CAAC;IAC5E,IAAI,CAAC,6CAAoB,CAAC,CAAC,MAAM,EAAE,CAAC;IACpC,IAAI,CAAC,uBAAa,CAAC,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC3C,EAAE,EAAE,6CAAoB,CAAC,EAAE;QAC3B,YAAY,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAuB,6CAAoB,CAAC;KACxF,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACvB,IAAA,2DAA6B,EAAC,IAAI,CAAC,CAAC;AACxC,CAAC,CAAC,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { interfaces } from '@theia/core/shared/inversify';
2
+ import { PreferenceProxy, PreferenceService, PreferenceSchema } from '@theia/core/lib/browser/preferences';
3
+ export declare const GettingStartedPreferenceSchema: PreferenceSchema;
4
+ export interface GettingStartedConfiguration {
5
+ 'workbench.startupEditor': string;
6
+ }
7
+ export declare const GettingStartedPreferenceContribution: unique symbol;
8
+ export declare const GettingStartedPreferences: unique symbol;
9
+ export declare type GettingStartedPreferences = PreferenceProxy<GettingStartedConfiguration>;
10
+ export declare function createGettingStartedPreferences(preferences: PreferenceService, schema?: PreferenceSchema): GettingStartedPreferences;
11
+ export declare function bindGettingStartedPreferences(bind: interfaces.Bind): void;
12
+ //# sourceMappingURL=getting-started-preferences.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getting-started-preferences.d.ts","sourceRoot":"","sources":["../../src/browser/getting-started-preferences.ts"],"names":[],"mappings":"AAgBA,OAAO,EAAE,UAAU,EAAE,MAAM,8BAA8B,CAAC;AAC1D,OAAO,EAEH,eAAe,EACf,iBAAiB,EACjB,gBAAgB,EAEnB,MAAM,qCAAqC,CAAC;AAI7C,eAAO,MAAM,8BAA8B,EAAE,gBAmB5C,CAAC;AAEF,MAAM,WAAW,2BAA2B;IACxC,yBAAyB,EAAE,MAAM,CAAC;CACrC;AAED,eAAO,MAAM,oCAAoC,eAAiD,CAAC;AACnG,eAAO,MAAM,yBAAyB,eAAsC,CAAC;AAC7E,oBAAY,yBAAyB,GAAG,eAAe,CAAC,2BAA2B,CAAC,CAAC;AAErF,wBAAgB,+BAA+B,CAAC,WAAW,EAAE,iBAAiB,EAAE,MAAM,GAAE,gBAAiD,GAAG,yBAAyB,CAEpK;AAED,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,GAAG,IAAI,CAQzE"}
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ // *****************************************************************************
3
+ // Copyright (C) 2023 Ericsson and others.
4
+ //
5
+ // This program and the accompanying materials are made available under the
6
+ // terms of the Eclipse Public License v. 2.0 which is available at
7
+ // http://www.eclipse.org/legal/epl-2.0.
8
+ //
9
+ // This Source Code may also be made available under the following Secondary
10
+ // Licenses when the conditions for such availability set forth in the Eclipse
11
+ // Public License v. 2.0 are satisfied: GNU General Public License, version 2
12
+ // with the GNU Classpath Exception which is available at
13
+ // https://www.gnu.org/software/classpath/license.html.
14
+ //
15
+ // SPDX-License-Identifier: EPL-2.0 OR GPL-2.0-only WITH Classpath-exception-2.0
16
+ // *****************************************************************************
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.bindGettingStartedPreferences = exports.createGettingStartedPreferences = exports.GettingStartedPreferences = exports.GettingStartedPreferenceContribution = exports.GettingStartedPreferenceSchema = void 0;
19
+ const preferences_1 = require("@theia/core/lib/browser/preferences");
20
+ const frontend_application_config_provider_1 = require("@theia/core/lib/browser/frontend-application-config-provider");
21
+ const nls_1 = require("@theia/core/lib/common/nls");
22
+ exports.GettingStartedPreferenceSchema = {
23
+ 'type': 'object',
24
+ properties: {
25
+ 'workbench.startupEditor': {
26
+ type: 'string',
27
+ enum: ['none', 'welcomePage', 'readme', 'newUntitledFile', 'welcomePageInEmptyWorkbench'],
28
+ enumDescriptions: [
29
+ nls_1.nls.localizeByDefault('Start without an editor.'),
30
+ nls_1.nls.localize('theia/getting-started/startup-editor/welcomePage', 'Open the Welcome page, with content to aid in getting started with {0} and extensions.', frontend_application_config_provider_1.FrontendApplicationConfigProvider.get().applicationName),
31
+ // eslint-disable-next-line max-len
32
+ nls_1.nls.localizeByDefault("Open the README when opening a folder that contains one, fallback to 'welcomePage' otherwise. Note: This is only observed as a global configuration, it will be ignored if set in a workspace or folder configuration."),
33
+ nls_1.nls.localizeByDefault('Open a new untitled text file (only applies when opening an empty window).'),
34
+ nls_1.nls.localizeByDefault('Open the Welcome page when opening an empty workbench.'),
35
+ ],
36
+ default: 'welcomePage',
37
+ description: nls_1.nls.localizeByDefault('Controls which editor is shown at startup, if none are restored from the previous session.')
38
+ },
39
+ }
40
+ };
41
+ exports.GettingStartedPreferenceContribution = Symbol('GettingStartedPreferenceContribution');
42
+ exports.GettingStartedPreferences = Symbol('GettingStartedPreferences');
43
+ function createGettingStartedPreferences(preferences, schema = exports.GettingStartedPreferenceSchema) {
44
+ return (0, preferences_1.createPreferenceProxy)(preferences, schema);
45
+ }
46
+ exports.createGettingStartedPreferences = createGettingStartedPreferences;
47
+ function bindGettingStartedPreferences(bind) {
48
+ bind(exports.GettingStartedPreferences).toDynamicValue(ctx => {
49
+ const preferences = ctx.container.get(preferences_1.PreferenceService);
50
+ const contribution = ctx.container.get(exports.GettingStartedPreferenceContribution);
51
+ return createGettingStartedPreferences(preferences, contribution.schema);
52
+ }).inSingletonScope();
53
+ bind(exports.GettingStartedPreferenceContribution).toConstantValue({ schema: exports.GettingStartedPreferenceSchema });
54
+ bind(preferences_1.PreferenceContribution).toService(exports.GettingStartedPreferenceContribution);
55
+ }
56
+ exports.bindGettingStartedPreferences = bindGettingStartedPreferences;
57
+ //# sourceMappingURL=getting-started-preferences.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getting-started-preferences.js","sourceRoot":"","sources":["../../src/browser/getting-started-preferences.ts"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,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;;;AAGhF,qEAM6C;AAC7C,uHAAiH;AACjH,oDAAiD;AAEpC,QAAA,8BAA8B,GAAqB;IAC5D,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE;QACR,yBAAyB,EAAE;YACvB,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,iBAAiB,EAAE,6BAA6B,CAAC;YACzF,gBAAgB,EAAE;gBACd,SAAG,CAAC,iBAAiB,CAAC,0BAA0B,CAAC;gBACjD,SAAG,CAAC,QAAQ,CAAC,kDAAkD,EAAE,wFAAwF,EACrJ,wEAAiC,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC;gBAC5D,mCAAmC;gBACnC,SAAG,CAAC,iBAAiB,CAAC,wNAAwN,CAAC;gBAC/O,SAAG,CAAC,iBAAiB,CAAC,4EAA4E,CAAC;gBACnG,SAAG,CAAC,iBAAiB,CAAC,wDAAwD,CAAC;aAClF;YACD,OAAO,EAAE,aAAa;YACtB,WAAW,EAAE,SAAG,CAAC,iBAAiB,CAAC,4FAA4F,CAAC;SACnI;KACJ;CACJ,CAAC;AAMW,QAAA,oCAAoC,GAAG,MAAM,CAAC,sCAAsC,CAAC,CAAC;AACtF,QAAA,yBAAyB,GAAG,MAAM,CAAC,2BAA2B,CAAC,CAAC;AAG7E,SAAgB,+BAA+B,CAAC,WAA8B,EAAE,SAA2B,sCAA8B;IACrI,OAAO,IAAA,mCAAqB,EAAC,WAAW,EAAE,MAAM,CAAC,CAAC;AACtD,CAAC;AAFD,0EAEC;AAED,SAAgB,6BAA6B,CAAC,IAAqB;IAC/D,IAAI,CAAC,iCAAyB,CAAC,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE;QACjD,MAAM,WAAW,GAAG,GAAG,CAAC,SAAS,CAAC,GAAG,CAAoB,+BAAiB,CAAC,CAAC;QAC5E,MAAM,YAAY,GAAG,GAAG,CAAC,SAAS,CAAC,GAAG,CAAyB,4CAAoC,CAAC,CAAC;QACrG,OAAO,+BAA+B,CAAC,WAAW,EAAE,YAAY,CAAC,MAAM,CAAC,CAAC;IAC7E,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;IACtB,IAAI,CAAC,4CAAoC,CAAC,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE,sCAA8B,EAAE,CAAC,CAAC;IACvG,IAAI,CAAC,oCAAsB,CAAC,CAAC,SAAS,CAAC,4CAAoC,CAAC,CAAC;AACjF,CAAC;AARD,sEAQC"}
@@ -3,7 +3,7 @@ import * as React from '@theia/core/shared/react';
3
3
  import URI from '@theia/core/lib/common/uri';
4
4
  import { CommandRegistry } from '@theia/core/lib/common';
5
5
  import { WorkspaceService } from '@theia/workspace/lib/browser';
6
- import { Message, ReactWidget, LabelProvider } from '@theia/core/lib/browser';
6
+ import { Message, ReactWidget, LabelProvider, PreferenceService } from '@theia/core/lib/browser';
7
7
  import { ApplicationInfo, ApplicationServer } from '@theia/core/lib/common/application-protocol';
8
8
  import { EnvVariablesServer } from '@theia/core/lib/common/env-variables';
9
9
  import { WindowService } from '@theia/core/lib/browser/window/window-service';
@@ -58,6 +58,7 @@ export declare class GettingStartedWidget extends ReactWidget {
58
58
  protected readonly labelProvider: LabelProvider;
59
59
  protected readonly windowService: WindowService;
60
60
  protected readonly workspaceService: WorkspaceService;
61
+ protected readonly preferenceService: PreferenceService;
61
62
  protected init(): void;
62
63
  protected doInit(): Promise<void>;
63
64
  protected onActivateRequest(msg: Message): void;
@@ -92,6 +93,7 @@ export declare class GettingStartedWidget extends ReactWidget {
92
93
  * Render the version section.
93
94
  */
94
95
  protected renderVersion(): React.ReactNode;
96
+ protected renderPreferences(): React.ReactNode;
95
97
  /**
96
98
  * Build the list of workspace paths.
97
99
  * @param workspaces {string[]} the list of workspaces.
@@ -149,4 +151,7 @@ export declare class GettingStartedWidget extends ReactWidget {
149
151
  protected doOpenExternalLinkEnter: (e: React.KeyboardEvent, url: string) => void;
150
152
  protected isEnterKey(e: React.KeyboardEvent): boolean;
151
153
  }
154
+ export interface PreferencesProps {
155
+ preferenceService: PreferenceService;
156
+ }
152
157
  //# sourceMappingURL=getting-started-widget.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"getting-started-widget.d.ts","sourceRoot":"","sources":["../../src/browser/getting-started-widget.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getting-started-widget.d.ts","sourceRoot":"","sources":["../../src/browser/getting-started-widget.tsx"],"names":[],"mappings":"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"}
@@ -182,18 +182,20 @@ let GettingStartedWidget = GettingStartedWidget_1 = class GettingStartedWidget e
182
182
  */
183
183
  render() {
184
184
  return React.createElement("div", { className: 'gs-container' },
185
- this.renderHeader(),
186
- React.createElement("hr", { className: 'gs-hr' }),
187
- React.createElement("div", { className: 'flex-grid' },
188
- React.createElement("div", { className: 'col' }, this.renderOpen())),
189
- React.createElement("div", { className: 'flex-grid' },
190
- React.createElement("div", { className: 'col' }, this.renderRecentWorkspaces())),
191
- React.createElement("div", { className: 'flex-grid' },
192
- React.createElement("div", { className: 'col' }, this.renderSettings())),
193
- React.createElement("div", { className: 'flex-grid' },
194
- React.createElement("div", { className: 'col' }, this.renderHelp())),
195
- React.createElement("div", { className: 'flex-grid' },
196
- React.createElement("div", { className: 'col' }, this.renderVersion())));
185
+ React.createElement("div", { className: 'gs-content-container' },
186
+ this.renderHeader(),
187
+ React.createElement("hr", { className: 'gs-hr' }),
188
+ React.createElement("div", { className: 'flex-grid' },
189
+ React.createElement("div", { className: 'col' }, this.renderOpen())),
190
+ React.createElement("div", { className: 'flex-grid' },
191
+ React.createElement("div", { className: 'col' }, this.renderRecentWorkspaces())),
192
+ React.createElement("div", { className: 'flex-grid' },
193
+ React.createElement("div", { className: 'col' }, this.renderSettings())),
194
+ React.createElement("div", { className: 'flex-grid' },
195
+ React.createElement("div", { className: 'col' }, this.renderHelp())),
196
+ React.createElement("div", { className: 'flex-grid' },
197
+ React.createElement("div", { className: 'col' }, this.renderVersion()))),
198
+ React.createElement("div", { className: 'gs-preference-container' }, this.renderPreferences()));
197
199
  }
198
200
  /**
199
201
  * Render the widget header.
@@ -245,7 +247,7 @@ let GettingStartedWidget = GettingStartedWidget_1 = class GettingStartedWidget e
245
247
  nls_1.nls.localizeByDefault('Recent')),
246
248
  items.length > 0 ? content : React.createElement("p", { className: 'gs-no-recent' },
247
249
  nls_1.nls.localizeByDefault('You have no recent folders,') + ' ',
248
- React.createElement("a", { role: 'button', tabIndex: 0, onClick: this.doOpenWorkspace, onKeyDown: this.doOpenWorkspaceEnter }, nls_1.nls.localizeByDefault('open a folder')),
250
+ React.createElement("a", { role: 'button', tabIndex: 0, onClick: this.doOpenFolder, onKeyDown: this.doOpenFolderEnter }, nls_1.nls.localizeByDefault('open a folder')),
249
251
  ' ' + nls_1.nls.localizeByDefault('to start.')),
250
252
  more);
251
253
  }
@@ -288,6 +290,9 @@ let GettingStartedWidget = GettingStartedWidget_1 = class GettingStartedWidget e
288
290
  React.createElement("div", { className: 'gs-action-container' },
289
291
  React.createElement("p", { className: 'gs-sub-header' }, this.applicationInfo ? nls_1.nls.localizeByDefault('Version: {0}', this.applicationInfo.version) : '')));
290
292
  }
293
+ renderPreferences() {
294
+ return React.createElement(WelcomePreferences, { preferenceService: this.preferenceService });
295
+ }
291
296
  /**
292
297
  * Build the list of workspace paths.
293
298
  * @param workspaces {string[]} the list of workspaces.
@@ -315,7 +320,7 @@ GettingStartedWidget.ID = 'getting.started.widget';
315
320
  /**
316
321
  * The widget `label` which is used for display purposes.
317
322
  */
318
- GettingStartedWidget.LABEL = nls_1.nls.localizeByDefault('Get Started');
323
+ GettingStartedWidget.LABEL = nls_1.nls.localizeByDefault('Welcome');
319
324
  __decorate([
320
325
  (0, inversify_1.inject)(application_protocol_1.ApplicationServer),
321
326
  __metadata("design:type", Object)
@@ -340,6 +345,10 @@ __decorate([
340
345
  (0, inversify_1.inject)(browser_1.WorkspaceService),
341
346
  __metadata("design:type", browser_1.WorkspaceService)
342
347
  ], GettingStartedWidget.prototype, "workspaceService", void 0);
348
+ __decorate([
349
+ (0, inversify_1.inject)(browser_3.PreferenceService),
350
+ __metadata("design:type", Object)
351
+ ], GettingStartedWidget.prototype, "preferenceService", void 0);
343
352
  __decorate([
344
353
  (0, inversify_1.postConstruct)(),
345
354
  __metadata("design:type", Function),
@@ -350,4 +359,23 @@ GettingStartedWidget = GettingStartedWidget_1 = __decorate([
350
359
  (0, inversify_1.injectable)()
351
360
  ], GettingStartedWidget);
352
361
  exports.GettingStartedWidget = GettingStartedWidget;
362
+ function WelcomePreferences(props) {
363
+ const [startupEditor, setStartupEditor] = React.useState(props.preferenceService.get('workbench.startupEditor', 'welcomePage'));
364
+ React.useEffect(() => {
365
+ const prefListener = props.preferenceService.onPreferenceChanged(change => {
366
+ if (change.preferenceName === 'workbench.startupEditor') {
367
+ const prefValue = change.newValue;
368
+ setStartupEditor(prefValue);
369
+ }
370
+ });
371
+ return () => prefListener.dispose();
372
+ }, [props.preferenceService]);
373
+ const handleChange = (e) => {
374
+ const newValue = e.target.checked ? 'welcomePage' : 'none';
375
+ props.preferenceService.updateValue('workbench.startupEditor', newValue);
376
+ };
377
+ return (React.createElement("div", { className: 'gs-preference' },
378
+ React.createElement("input", { type: "checkbox", className: "theia-input", id: "startupEditor", onChange: handleChange, checked: startupEditor === 'welcomePage' || startupEditor === 'welcomePageInEmptyWorkbench' }),
379
+ React.createElement("label", { htmlFor: "startupEditor" }, nls_1.nls.localizeByDefault('Show welcome page on startup'))));
380
+ }
353
381
  //# sourceMappingURL=getting-started-widget.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getting-started-widget.js","sourceRoot":"","sources":["../../src/browser/getting-started-widget.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getting-started-widget.js","sourceRoot":"","sources":["../../src/browser/getting-started-widget.tsx"],"names":[],"mappings":";AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,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,kDAAkD;AAClD,oDAA6C;AAC7C,4DAAiF;AACjF,mDAAmF;AACnF,0DAAmF;AACnF,wDAA6D;AAC7D,qDAAwI;AACxI,sFAAiG;AACjG,uHAAiH;AACjH,wEAA0E;AAC1E,kFAA8E;AAC9E,oDAAiD;AAEjD;;;;;;;;;GASG;AAEH,IAAa,oBAAoB,4BAAjC,MAAa,oBAAqB,SAAQ,qBAAW;IAArD;;QAgBI;;WAEG;QACO,oBAAe,GAAG,wEAAiC,CAAC,GAAG,EAAE,CAAC,eAAe,CAAC;QAIpF;;;WAGG;QACO,gBAAW,GAAG,CAAC,CAAC;QAC1B;;WAEG;QACO,qBAAgB,GAAa,EAAE,CAAC;QAE1C;;WAEG;QACgB,qBAAgB,GAAG,iCAAiC,CAAC;QACrD,qBAAgB,GAAG,qEAAqE,CAAC;QACzF,iBAAY,GAAG,qDAAqD,CAAC;QACrE,cAAS,GAAG,kDAAkD,CAAC;QA2TlF;;WAEG;QACO,WAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,2BAAiB,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC9E,gBAAW,GAAG,CAAC,CAAsB,EAAE,EAAE;YAC/C,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;gBACpB,IAAI,CAAC,MAAM,EAAE,CAAC;aACjB;QACL,CAAC,CAAC;QAEF;;WAEG;QACO,eAAU,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,2BAAiB,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QACvF,oBAAe,GAAG,CAAC,CAAsB,EAAE,EAAE;YACnD,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;gBACpB,IAAI,CAAC,UAAU,EAAE,CAAC;aACrB;QACL,CAAC,CAAC;QAEF;;WAEG;QACO,iBAAY,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,2BAAiB,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;QAC3F,sBAAiB,GAAG,CAAC,CAAsB,EAAE,EAAE;YACrD,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;gBACpB,IAAI,CAAC,YAAY,EAAE,CAAC;aACvB;QACL,CAAC,CAAC;QAEF;;WAEG;QACO,oBAAe,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,2BAAiB,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QACjG,yBAAoB,GAAG,CAAC,CAAsB,EAAE,EAAE;YACxD,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;gBACpB,IAAI,CAAC,eAAe,EAAE,CAAC;aAC1B;QACL,CAAC,CAAC;QAEF;;WAEG;QACO,0BAAqB,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,2BAAiB,CAAC,qBAAqB,CAAC,EAAE,CAAC,CAAC;QAC9G,+BAA0B,GAAG,CAAC,CAAsB,EAAE,EAAE;YAC9D,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;gBACpB,IAAI,CAAC,qBAAqB,EAAE,CAAC;aAChC;QACL,CAAC,CAAC;QAEF;;;WAGG;QACO,sBAAiB,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,wBAAc,CAAC,gBAAgB,CAAC,EAAE,CAAC,CAAC;QAClG,2BAAsB,GAAG,CAAC,CAAsB,EAAE,EAAE;YAC1D,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;gBACpB,IAAI,CAAC,iBAAiB,EAAE,CAAC;aAC5B;QACL,CAAC,CAAC;QAEF;;;WAGG;QACO,4BAAuB,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,cAAc,CAAC,yBAAe,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;QACrG,iCAA4B,GAAG,CAAC,CAAsB,EAAE,EAAE;YAChE,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;gBACpB,IAAI,CAAC,uBAAuB,EAAE,CAAC;aAClC;QACL,CAAC,CAAC;QAEF;;;WAGG;QACO,SAAI,GAAG,CAAC,GAAQ,EAAE,EAAE,CAAC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACrD,cAAS,GAAG,CAAC,CAAsB,EAAE,GAAQ,EAAE,EAAE;YACvD,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;gBACpB,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aAClB;QACL,CAAC,CAAC;QAEF;;;WAGG;QACO,uBAAkB,GAAG,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC;QAChG,4BAAuB,GAAG,CAAC,CAAsB,EAAE,GAAW,EAAE,EAAE;YACxE,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;gBACpB,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC;aAChC;QACL,CAAC,CAAC;IAKN,CAAC;IApYa,IAAI;QACV,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAES,KAAK,CAAC,MAAM;QAClB,IAAI,CAAC,EAAE,GAAG,sBAAoB,CAAC,EAAE,CAAC;QAClC,IAAI,CAAC,KAAK,CAAC,KAAK,GAAG,sBAAoB,CAAC,KAAK,CAAC;QAC9C,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,sBAAoB,CAAC,KAAK,CAAC;QAChD,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAC;QAE3B,IAAI,CAAC,eAAe,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,kBAAkB,EAAE,CAAC;QACjE,IAAI,CAAC,gBAAgB,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,EAAE,CAAC;QACvE,IAAI,CAAC,IAAI,GAAG,IAAI,aAAG,CAAC,MAAM,IAAI,CAAC,YAAY,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;QAC7E,IAAI,CAAC,MAAM,EAAE,CAAC;IAClB,CAAC;IAEkB,iBAAiB,CAAC,GAAY;QAC7C,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,CAAC;QAC7B,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;QAClD,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1B,KAAK,CAAC,CAAC,CAAiB,CAAC,KAAK,EAAE,CAAC;SACrC;IACL,CAAC;IAED;;OAEG;IACO,MAAM;QACZ,OAAO,6BAAK,SAAS,EAAC,cAAc;YAChC,6BAAK,SAAS,EAAC,sBAAsB;gBAChC,IAAI,CAAC,YAAY,EAAE;gBACpB,4BAAI,SAAS,EAAC,OAAO,GAAG;gBACxB,6BAAK,SAAS,EAAC,WAAW;oBACtB,6BAAK,SAAS,EAAC,KAAK,IACf,IAAI,CAAC,UAAU,EAAE,CAChB,CACJ;gBACN,6BAAK,SAAS,EAAC,WAAW;oBACtB,6BAAK,SAAS,EAAC,KAAK,IACf,IAAI,CAAC,sBAAsB,EAAE,CAC5B,CACJ;gBACN,6BAAK,SAAS,EAAC,WAAW;oBACtB,6BAAK,SAAS,EAAC,KAAK,IACf,IAAI,CAAC,cAAc,EAAE,CACpB,CACJ;gBACN,6BAAK,SAAS,EAAC,WAAW;oBACtB,6BAAK,SAAS,EAAC,KAAK,IACf,IAAI,CAAC,UAAU,EAAE,CAChB,CACJ;gBACN,6BAAK,SAAS,EAAC,WAAW;oBACtB,6BAAK,SAAS,EAAC,KAAK,IACf,IAAI,CAAC,aAAa,EAAE,CACnB,CACJ,CACJ;YACN,6BAAK,SAAS,EAAC,yBAAyB,IACnC,IAAI,CAAC,iBAAiB,EAAE,CACvB,CACJ,CAAC;IACX,CAAC;IAED;;;OAGG;IACO,YAAY;QAClB,OAAO,6BAAK,SAAS,EAAC,WAAW;YAC7B;gBAAK,IAAI,CAAC,eAAe;gBAAC,8BAAM,SAAS,EAAC,eAAe,IAAE,GAAG,GAAG,sBAAoB,CAAC,KAAK,CAAQ,CAAK,CACtG,CAAC;IACX,CAAC;IAED;;;OAGG;IACO,UAAU;QAChB,MAAM,iBAAiB,GAAG,cAAK,IAAI,CAAC,oBAAW,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QAE9D,MAAM,IAAI,GAAG,iBAAiB,IAAI,6BAAK,SAAS,EAAC,qBAAqB;YAClE,2BACI,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,IAAI,CAAC,MAAM,EACpB,SAAS,EAAE,IAAI,CAAC,WAAW,IAC1B,SAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAC9B,CACF,CAAC;QAEP,MAAM,QAAQ,GAAG,CAAC,iBAAiB,IAAI,6BAAK,SAAS,EAAC,qBAAqB;YACvE,2BACI,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,IAAI,CAAC,UAAU,EACxB,SAAS,EAAE,IAAI,CAAC,eAAe,IAC9B,SAAG,CAAC,iBAAiB,CAAC,WAAW,CAAC,CACnC,CACF,CAAC;QAEP,MAAM,UAAU,GAAG,CAAC,iBAAiB,IAAI,6BAAK,SAAS,EAAC,qBAAqB;YACzE,2BACI,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,IAAI,CAAC,YAAY,EAC1B,SAAS,EAAE,IAAI,CAAC,iBAAiB,IAChC,SAAG,CAAC,iBAAiB,CAAC,aAAa,CAAC,CACrC,CACF,CAAC;QAEP,MAAM,aAAa,GAAG,CAClB,2BACI,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,IAAI,CAAC,eAAe,EAC7B,SAAS,EAAE,IAAI,CAAC,oBAAoB,IACnC,SAAG,CAAC,iBAAiB,CAAC,gBAAgB,CAAC,CACxC,CACP,CAAC;QAEF,OAAO,6BAAK,SAAS,EAAC,YAAY;YAC9B,4BAAI,SAAS,EAAC,mBAAmB;gBAAC,2BAAG,SAAS,EAAE,IAAA,iBAAO,EAAC,eAAe,CAAC,GAAM;gBAAC,SAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAM;YACjH,IAAI;YACJ,QAAQ;YACR,UAAU;YACV,aAAa,CACZ,CAAC;IACX,CAAC;IAED;;OAEG;IACO,sBAAsB;QAC5B,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACpC,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACrC,MAAM,OAAO,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CACjE,6BAAK,SAAS,EAAC,qBAAqB,EAAC,GAAG,EAAE,KAAK;YAC3C,2BACI,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,aAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAC/C,SAAS,EAAE,CAAC,CAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,IAAI,aAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAC9E,IAAI,aAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAChC;YACJ,8BAAM,SAAS,EAAC,mBAAmB,IAC9B,IAAI,CACF,CACL,CACT,CAAC;QACF,wJAAwJ;QACxJ,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,GAAG,IAAI,CAAC,WAAW,IAAI,6BAAK,SAAS,EAAC,qBAAqB;YAChF,2BACI,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,IAAI,CAAC,qBAAqB,EACnC,SAAS,EAAE,IAAI,CAAC,0BAA0B,IACzC,SAAG,CAAC,iBAAiB,CAAC,SAAS,CAAC,CACjC,CACF,CAAC;QACP,OAAO,6BAAK,SAAS,EAAC,YAAY;YAC9B,4BAAI,SAAS,EAAC,mBAAmB;gBAC7B,2BAAG,SAAS,EAAE,IAAA,iBAAO,EAAC,SAAS,CAAC,GAAM;gBAAC,SAAG,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CACrE;YACJ,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,2BAAG,SAAS,EAAC,cAAc;gBACpD,SAAG,CAAC,iBAAiB,CAAC,6BAA6B,CAAC,GAAG,GAAG;gBAC3D,2BACI,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,IAAI,CAAC,YAAY,EAC1B,SAAS,EAAE,IAAI,CAAC,iBAAiB,IAChC,SAAG,CAAC,iBAAiB,CAAC,eAAe,CAAC,CACvC;gBACH,GAAG,GAAG,SAAG,CAAC,iBAAiB,CAAC,WAAW,CAAC,CACzC;YACH,IAAI,CACH,CAAC;IACX,CAAC;IAED;;;OAGG;IACO,cAAc;QACpB,OAAO,6BAAK,SAAS,EAAC,YAAY;YAC9B,4BAAI,SAAS,EAAC,mBAAmB;gBAC7B,2BAAG,SAAS,EAAE,IAAA,iBAAO,EAAC,eAAe,CAAC,GAAM;gBAC3C,SAAG,CAAC,iBAAiB,CAAC,UAAU,CAAC,CACjC;YACL,6BAAK,SAAS,EAAC,qBAAqB;gBAChC,2BACI,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,IAAI,CAAC,iBAAiB,EAC/B,SAAS,EAAE,IAAI,CAAC,sBAAsB,IACrC,SAAG,CAAC,iBAAiB,CAAC,eAAe,CAAC,CACvC,CACF;YACN,6BAAK,SAAS,EAAC,qBAAqB;gBAChC,2BACI,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,IAAI,CAAC,uBAAuB,EACrC,SAAS,EAAE,IAAI,CAAC,4BAA4B,IAC3C,SAAG,CAAC,iBAAiB,CAAC,yBAAyB,CAAC,CACjD,CACF,CACJ,CAAC;IACX,CAAC;IAED;;OAEG;IACO,UAAU;QAChB,OAAO,6BAAK,SAAS,EAAC,YAAY;YAC9B,4BAAI,SAAS,EAAC,mBAAmB;gBAC7B,2BAAG,SAAS,EAAE,IAAA,iBAAO,EAAC,UAAU,CAAC,GAAM;gBACtC,SAAG,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAC7B;YACL,6BAAK,SAAS,EAAC,qBAAqB;gBAChC,2BACI,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAC7D,SAAS,EAAE,CAAC,CAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAC5F,SAAG,CAAC,iBAAiB,CAAC,eAAe,CAAC,CACvC,CACF;YACN,6BAAK,SAAS,EAAC,qBAAqB;gBAChC,2BACI,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAC7D,SAAS,EAAE,CAAC,CAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,EAAE,IAAI,CAAC,gBAAgB,CAAC,IAC5F,SAAG,CAAC,QAAQ,CAAC,qCAAqC,EAAE,uBAAuB,EAAE,SAAS,CAAC,CACxF,CACF;YACN,6BAAK,SAAS,EAAC,qBAAqB;gBAChC,2BACI,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,YAAY,CAAC,EACzD,SAAS,EAAE,CAAC,CAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,CAAC,IACxF,SAAG,CAAC,QAAQ,CAAC,oCAAoC,EAAE,0BAA0B,CAAC,CAC/E,CACF;YACN,6BAAK,SAAS,EAAC,qBAAqB;gBAChC,2BACI,IAAI,EAAE,QAAQ,EACd,QAAQ,EAAE,CAAC,EACX,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,SAAS,CAAC,EACtD,SAAS,EAAE,CAAC,CAAsB,EAAE,EAAE,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IACrF,SAAG,CAAC,QAAQ,CAAC,iCAAiC,EAAE,uBAAuB,CAAC,CACzE,CACF,CACJ,CAAC;IACX,CAAC;IAED;;OAEG;IACO,aAAa;QACnB,OAAO,6BAAK,SAAS,EAAC,YAAY;YAC9B,6BAAK,SAAS,EAAC,qBAAqB;gBAChC,2BAAG,SAAS,EAAC,eAAe,IACvB,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,SAAG,CAAC,iBAAiB,CAAC,cAAc,EAAE,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAChG,CACF,CACJ,CAAC;IACX,CAAC;IAES,iBAAiB;QACvB,OAAO,oBAAC,kBAAkB,IAAC,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,GAAuB,CAAC;IAChG,CAAC;IAED;;;;OAIG;IACO,UAAU,CAAC,UAAoB;QACrC,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;YAC3B,MAAM,GAAG,GAAG,IAAI,aAAG,CAAC,SAAS,CAAC,CAAC;YAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;YACtD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,aAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;YACxE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;QACH,OAAO,KAAK,CAAC;IACjB,CAAC;IAgGS,UAAU,CAAC,CAAsB;;QACvC,OAAO,aAAG,CAAC,KAAK,CAAC,OAAO,MAAK,MAAA,iBAAO,CAAC,aAAa,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,GAAG,0CAAE,OAAO,CAAA,CAAC;IACnF,CAAC;CACJ,CAAA;AAjcG;;GAEG;AACa,uBAAE,GAAG,wBAAyB,CAAA;AAC9C;;GAEG;AACa,0BAAK,GAAG,SAAG,CAAC,iBAAiB,CAAC,SAAS,CAAE,CAAA;AAiCzD;IADC,IAAA,kBAAM,EAAC,wCAAiB,CAAC;;uDACsB;AAGhD;IADC,IAAA,kBAAM,EAAC,wBAAe,CAAC;8BACY,wBAAe;6DAAC;AAGpD;IADC,IAAA,kBAAM,EAAC,kCAAkB,CAAC;;0DACyB;AAGpD;IADC,IAAA,kBAAM,EAAC,uBAAa,CAAC;8BACY,uBAAa;2DAAC;AAGhD;IADC,IAAA,kBAAM,EAAC,8BAAa,CAAC;;2DAC0B;AAGhD;IADC,IAAA,kBAAM,EAAC,0BAAgB,CAAC;8BACY,0BAAgB;8DAAC;AAGtD;IADC,IAAA,kBAAM,EAAC,2BAAiB,CAAC;;+DAC8B;AAGxD;IADC,IAAA,yBAAa,GAAE;;;;gDAGf;AAjEQ,oBAAoB;IADhC,IAAA,sBAAU,GAAE;GACA,oBAAoB,CAmchC;AAncY,oDAAoB;AAycjC,SAAS,kBAAkB,CAAC,KAAuB;IAC/C,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,KAAK,CAAC,QAAQ,CACpD,KAAK,CAAC,iBAAiB,CAAC,GAAG,CAAC,yBAAyB,EAAE,aAAa,CAAC,CACxE,CAAC;IACF,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACjB,MAAM,YAAY,GAAG,KAAK,CAAC,iBAAiB,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE;YACtE,IAAI,MAAM,CAAC,cAAc,KAAK,yBAAyB,EAAE;gBACrD,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC;gBAClC,gBAAgB,CAAC,SAAS,CAAC,CAAC;aAC/B;QACL,CAAC,CAAC,CAAC;QACH,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,CAAC;IACxC,CAAC,EAAE,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAC9B,MAAM,YAAY,GAAG,CAAC,CAAsC,EAAE,EAAE;QAC5D,MAAM,QAAQ,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,MAAM,CAAC;QAC3D,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,yBAAyB,EAAE,QAAQ,CAAC,CAAC;IAC7E,CAAC,CAAC;IACF,OAAO,CACH,6BAAK,SAAS,EAAC,eAAe;QAC1B,+BACI,IAAI,EAAC,UAAU,EACf,SAAS,EAAC,aAAa,EACvB,EAAE,EAAC,eAAe,EAClB,QAAQ,EAAE,YAAY,EACtB,OAAO,EAAE,aAAa,KAAK,aAAa,IAAI,aAAa,KAAK,6BAA6B,GAC7F;QACF,+BAAO,OAAO,EAAC,eAAe,IACzB,SAAG,CAAC,iBAAiB,CAAC,8BAA8B,CAAC,CAClD,CACN,CACT,CAAC;AACN,CAAC"}
package/package.json CHANGED
@@ -1,11 +1,14 @@
1
1
  {
2
2
  "name": "@theia/getting-started",
3
- "version": "1.40.1",
3
+ "version": "1.42.0",
4
4
  "description": "Theia - GettingStarted Extension",
5
5
  "dependencies": {
6
- "@theia/core": "1.40.1",
7
- "@theia/keymaps": "1.40.1",
8
- "@theia/workspace": "1.40.1"
6
+ "@theia/core": "1.42.0",
7
+ "@theia/editor": "1.42.0",
8
+ "@theia/filesystem": "1.42.0",
9
+ "@theia/keymaps": "1.42.0",
10
+ "@theia/preview": "1.42.0",
11
+ "@theia/workspace": "1.42.0"
9
12
  },
10
13
  "publishConfig": {
11
14
  "access": "public"
@@ -41,10 +44,10 @@
41
44
  "watch": "theiaext watch"
42
45
  },
43
46
  "devDependencies": {
44
- "@theia/ext-scripts": "1.40.1"
47
+ "@theia/ext-scripts": "1.42.0"
45
48
  },
46
49
  "nyc": {
47
50
  "extends": "../../configs/nyc.json"
48
51
  },
49
- "gitHead": "92c1db6be117d2606c0ed4de6ea6e51cf8e9fbc8"
52
+ "gitHead": "caf9429694cfefd1881c5559a82611b8860c5885"
50
53
  }
@@ -15,10 +15,13 @@
15
15
  // *****************************************************************************
16
16
 
17
17
  import { injectable, inject } from '@theia/core/shared/inversify';
18
- import { CommandRegistry, MenuModelRegistry } from '@theia/core/lib/common';
19
- import { CommonMenus, AbstractViewContribution, FrontendApplicationContribution, FrontendApplication } from '@theia/core/lib/browser';
18
+ import { ArrayUtils, CommandRegistry, MenuModelRegistry } from '@theia/core/lib/common';
19
+ import { CommonCommands, CommonMenus, AbstractViewContribution, FrontendApplicationContribution, FrontendApplication, PreferenceService } from '@theia/core/lib/browser';
20
+ import { EditorManager } from '@theia/editor/lib/browser/editor-manager';
20
21
  import { GettingStartedWidget } from './getting-started-widget';
22
+ import { FileService } from '@theia/filesystem/lib/browser/file-service';
21
23
  import { FrontendApplicationStateService } from '@theia/core/lib/browser/frontend-application-state';
24
+ import { PreviewContribution } from '@theia/preview/lib/browser/preview-contribution';
22
25
  import { WorkspaceService } from '@theia/workspace/lib/browser';
23
26
 
24
27
  /**
@@ -32,6 +35,21 @@ export const GettingStartedCommand = {
32
35
  @injectable()
33
36
  export class GettingStartedContribution extends AbstractViewContribution<GettingStartedWidget> implements FrontendApplicationContribution {
34
37
 
38
+ @inject(CommandRegistry)
39
+ protected readonly commandRegistry: CommandRegistry;
40
+
41
+ @inject(EditorManager)
42
+ protected readonly editorManager: EditorManager;
43
+
44
+ @inject(FileService)
45
+ protected readonly fileService: FileService;
46
+
47
+ @inject(PreferenceService)
48
+ protected readonly preferenceService: PreferenceService;
49
+
50
+ @inject(PreviewContribution)
51
+ protected readonly previewContribution: PreviewContribution;
52
+
35
53
  @inject(FrontendApplicationStateService)
36
54
  protected readonly stateService: FrontendApplicationStateService;
37
55
 
@@ -49,10 +67,46 @@ export class GettingStartedContribution extends AbstractViewContribution<Getting
49
67
  }
50
68
 
51
69
  async onStart(app: FrontendApplication): Promise<void> {
52
- if (!this.workspaceService.opened) {
53
- this.stateService.reachedState('ready').then(
54
- () => this.openView({ reveal: true, activate: true })
55
- );
70
+ this.stateService.reachedState('ready').then(async () => {
71
+ if (this.editorManager.all.length === 0) {
72
+ await this.preferenceService.ready;
73
+ const startupEditor = this.preferenceService.get('workbench.startupEditor');
74
+ switch (startupEditor) {
75
+ case 'welcomePage':
76
+ this.openView({ reveal: true, activate: true });
77
+ break;
78
+ case 'welcomePageInEmptyWorkbench':
79
+ if (!this.workspaceService.opened) {
80
+ this.openView({ reveal: true, activate: true });
81
+ }
82
+ break;
83
+ case 'newUntitledFile':
84
+ this.commandRegistry.executeCommand(CommonCommands.NEW_UNTITLED_TEXT_FILE.id);
85
+ break;
86
+ case 'readme':
87
+ await this.openReadme();
88
+ break;
89
+ }
90
+ }
91
+ });
92
+ }
93
+
94
+ protected async openReadme(): Promise<void> {
95
+ const roots = await this.workspaceService.roots;
96
+ const readmes = await Promise.all(roots.map(async folder => {
97
+ const folderStat = await this.fileService.resolve(folder.resource);
98
+ const fileArr = folderStat?.children?.sort((a, b) => a.name.localeCompare(b.name)) || [];
99
+ const filePath = fileArr.find(file => file.name.toLowerCase() === 'readme.md') || fileArr.find(file => file.name.toLowerCase().startsWith('readme'));
100
+ return filePath?.resource;
101
+ }));
102
+ const validReadmes = ArrayUtils.coalesce(readmes);
103
+ if (validReadmes.length) {
104
+ for (const readme of validReadmes) {
105
+ await this.previewContribution.open(readme);
106
+ }
107
+ } else {
108
+ // If no readme is found, show the welcome page.
109
+ this.openView({ reveal: true, activate: true });
56
110
  }
57
111
  }
58
112
 
@@ -18,7 +18,7 @@ import { GettingStartedContribution } from './getting-started-contribution';
18
18
  import { ContainerModule, interfaces } from '@theia/core/shared/inversify';
19
19
  import { GettingStartedWidget } from './getting-started-widget';
20
20
  import { WidgetFactory, FrontendApplicationContribution, bindViewContribution } from '@theia/core/lib/browser';
21
-
21
+ import { bindGettingStartedPreferences } from './getting-started-preferences';
22
22
  import '../../src/browser/style/index.css';
23
23
 
24
24
  export default new ContainerModule((bind: interfaces.Bind) => {
@@ -29,4 +29,5 @@ export default new ContainerModule((bind: interfaces.Bind) => {
29
29
  id: GettingStartedWidget.ID,
30
30
  createWidget: () => context.container.get<GettingStartedWidget>(GettingStartedWidget),
31
31
  })).inSingletonScope();
32
+ bindGettingStartedPreferences(bind);
32
33
  });
@@ -0,0 +1,69 @@
1
+ // *****************************************************************************
2
+ // Copyright (C) 2023 Ericsson 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 { interfaces } from '@theia/core/shared/inversify';
18
+ import {
19
+ createPreferenceProxy,
20
+ PreferenceProxy,
21
+ PreferenceService,
22
+ PreferenceSchema,
23
+ PreferenceContribution
24
+ } from '@theia/core/lib/browser/preferences';
25
+ import { FrontendApplicationConfigProvider } from '@theia/core/lib/browser/frontend-application-config-provider';
26
+ import { nls } from '@theia/core/lib/common/nls';
27
+
28
+ export const GettingStartedPreferenceSchema: PreferenceSchema = {
29
+ 'type': 'object',
30
+ properties: {
31
+ 'workbench.startupEditor': {
32
+ type: 'string',
33
+ enum: ['none', 'welcomePage', 'readme', 'newUntitledFile', 'welcomePageInEmptyWorkbench'],
34
+ enumDescriptions: [
35
+ nls.localizeByDefault('Start without an editor.'),
36
+ nls.localize('theia/getting-started/startup-editor/welcomePage', 'Open the Welcome page, with content to aid in getting started with {0} and extensions.',
37
+ FrontendApplicationConfigProvider.get().applicationName),
38
+ // eslint-disable-next-line max-len
39
+ nls.localizeByDefault("Open the README when opening a folder that contains one, fallback to 'welcomePage' otherwise. Note: This is only observed as a global configuration, it will be ignored if set in a workspace or folder configuration."),
40
+ nls.localizeByDefault('Open a new untitled text file (only applies when opening an empty window).'),
41
+ nls.localizeByDefault('Open the Welcome page when opening an empty workbench.'),
42
+ ],
43
+ default: 'welcomePage',
44
+ description: nls.localizeByDefault('Controls which editor is shown at startup, if none are restored from the previous session.')
45
+ },
46
+ }
47
+ };
48
+
49
+ export interface GettingStartedConfiguration {
50
+ 'workbench.startupEditor': string;
51
+ }
52
+
53
+ export const GettingStartedPreferenceContribution = Symbol('GettingStartedPreferenceContribution');
54
+ export const GettingStartedPreferences = Symbol('GettingStartedPreferences');
55
+ export type GettingStartedPreferences = PreferenceProxy<GettingStartedConfiguration>;
56
+
57
+ export function createGettingStartedPreferences(preferences: PreferenceService, schema: PreferenceSchema = GettingStartedPreferenceSchema): GettingStartedPreferences {
58
+ return createPreferenceProxy(preferences, schema);
59
+ }
60
+
61
+ export function bindGettingStartedPreferences(bind: interfaces.Bind): void {
62
+ bind(GettingStartedPreferences).toDynamicValue(ctx => {
63
+ const preferences = ctx.container.get<PreferenceService>(PreferenceService);
64
+ const contribution = ctx.container.get<PreferenceContribution>(GettingStartedPreferenceContribution);
65
+ return createGettingStartedPreferences(preferences, contribution.schema);
66
+ }).inSingletonScope();
67
+ bind(GettingStartedPreferenceContribution).toConstantValue({ schema: GettingStartedPreferenceSchema });
68
+ bind(PreferenceContribution).toService(GettingStartedPreferenceContribution);
69
+ }
@@ -20,7 +20,7 @@ import { injectable, inject, postConstruct } from '@theia/core/shared/inversify'
20
20
  import { CommandRegistry, isOSX, environment, Path } from '@theia/core/lib/common';
21
21
  import { WorkspaceCommands, WorkspaceService } from '@theia/workspace/lib/browser';
22
22
  import { KeymapsCommands } from '@theia/keymaps/lib/browser';
23
- import { Message, ReactWidget, CommonCommands, LabelProvider, Key, KeyCode, codicon } from '@theia/core/lib/browser';
23
+ import { Message, ReactWidget, CommonCommands, LabelProvider, Key, KeyCode, codicon, PreferenceService } from '@theia/core/lib/browser';
24
24
  import { ApplicationInfo, ApplicationServer } from '@theia/core/lib/common/application-protocol';
25
25
  import { FrontendApplicationConfigProvider } from '@theia/core/lib/browser/frontend-application-config-provider';
26
26
  import { EnvVariablesServer } from '@theia/core/lib/common/env-variables';
@@ -47,7 +47,7 @@ export class GettingStartedWidget extends ReactWidget {
47
47
  /**
48
48
  * The widget `label` which is used for display purposes.
49
49
  */
50
- static readonly LABEL = nls.localizeByDefault('Get Started');
50
+ static readonly LABEL = nls.localizeByDefault('Welcome');
51
51
 
52
52
  /**
53
53
  * The `ApplicationInfo` for the application if available.
@@ -97,6 +97,9 @@ export class GettingStartedWidget extends ReactWidget {
97
97
  @inject(WorkspaceService)
98
98
  protected readonly workspaceService: WorkspaceService;
99
99
 
100
+ @inject(PreferenceService)
101
+ protected readonly preferenceService: PreferenceService;
102
+
100
103
  @postConstruct()
101
104
  protected init(): void {
102
105
  this.doInit();
@@ -127,33 +130,38 @@ export class GettingStartedWidget extends ReactWidget {
127
130
  */
128
131
  protected render(): React.ReactNode {
129
132
  return <div className='gs-container'>
130
- {this.renderHeader()}
131
- <hr className='gs-hr' />
132
- <div className='flex-grid'>
133
- <div className='col'>
134
- {this.renderOpen()}
133
+ <div className='gs-content-container'>
134
+ {this.renderHeader()}
135
+ <hr className='gs-hr' />
136
+ <div className='flex-grid'>
137
+ <div className='col'>
138
+ {this.renderOpen()}
139
+ </div>
135
140
  </div>
136
- </div>
137
- <div className='flex-grid'>
138
- <div className='col'>
139
- {this.renderRecentWorkspaces()}
141
+ <div className='flex-grid'>
142
+ <div className='col'>
143
+ {this.renderRecentWorkspaces()}
144
+ </div>
140
145
  </div>
141
- </div>
142
- <div className='flex-grid'>
143
- <div className='col'>
144
- {this.renderSettings()}
146
+ <div className='flex-grid'>
147
+ <div className='col'>
148
+ {this.renderSettings()}
149
+ </div>
145
150
  </div>
146
- </div>
147
- <div className='flex-grid'>
148
- <div className='col'>
149
- {this.renderHelp()}
151
+ <div className='flex-grid'>
152
+ <div className='col'>
153
+ {this.renderHelp()}
154
+ </div>
150
155
  </div>
151
- </div>
152
- <div className='flex-grid'>
153
- <div className='col'>
154
- {this.renderVersion()}
156
+ <div className='flex-grid'>
157
+ <div className='col'>
158
+ {this.renderVersion()}
159
+ </div>
155
160
  </div>
156
161
  </div>
162
+ <div className='gs-preference-container'>
163
+ {this.renderPreferences()}
164
+ </div>
157
165
  </div>;
158
166
  }
159
167
 
@@ -262,8 +270,8 @@ export class GettingStartedWidget extends ReactWidget {
262
270
  <a
263
271
  role={'button'}
264
272
  tabIndex={0}
265
- onClick={this.doOpenWorkspace}
266
- onKeyDown={this.doOpenWorkspaceEnter}>
273
+ onClick={this.doOpenFolder}
274
+ onKeyDown={this.doOpenFolderEnter}>
267
275
  {nls.localizeByDefault('open a folder')}
268
276
  </a>
269
277
  {' ' + nls.localizeByDefault('to start.')}
@@ -364,6 +372,10 @@ export class GettingStartedWidget extends ReactWidget {
364
372
  </div>;
365
373
  }
366
374
 
375
+ protected renderPreferences(): React.ReactNode {
376
+ return <WelcomePreferences preferenceService={this.preferenceService}></WelcomePreferences>;
377
+ }
378
+
367
379
  /**
368
380
  * Build the list of workspace paths.
369
381
  * @param workspaces {string[]} the list of workspaces.
@@ -478,3 +490,40 @@ export class GettingStartedWidget extends ReactWidget {
478
490
  return Key.ENTER.keyCode === KeyCode.createKeyCode(e.nativeEvent).key?.keyCode;
479
491
  }
480
492
  }
493
+
494
+ export interface PreferencesProps {
495
+ preferenceService: PreferenceService;
496
+ }
497
+
498
+ function WelcomePreferences(props: PreferencesProps): JSX.Element {
499
+ const [startupEditor, setStartupEditor] = React.useState<string>(
500
+ props.preferenceService.get('workbench.startupEditor', 'welcomePage')
501
+ );
502
+ React.useEffect(() => {
503
+ const prefListener = props.preferenceService.onPreferenceChanged(change => {
504
+ if (change.preferenceName === 'workbench.startupEditor') {
505
+ const prefValue = change.newValue;
506
+ setStartupEditor(prefValue);
507
+ }
508
+ });
509
+ return () => prefListener.dispose();
510
+ }, [props.preferenceService]);
511
+ const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {
512
+ const newValue = e.target.checked ? 'welcomePage' : 'none';
513
+ props.preferenceService.updateValue('workbench.startupEditor', newValue);
514
+ };
515
+ return (
516
+ <div className='gs-preference'>
517
+ <input
518
+ type="checkbox"
519
+ className="theia-input"
520
+ id="startupEditor"
521
+ onChange={handleChange}
522
+ checked={startupEditor === 'welcomePage' || startupEditor === 'welcomePageInEmptyWorkbench'}
523
+ />
524
+ <label htmlFor="startupEditor">
525
+ {nls.localizeByDefault('Show welcome page on startup')}
526
+ </label>
527
+ </div>
528
+ );
529
+ }
@@ -39,10 +39,17 @@ body {
39
39
  }
40
40
 
41
41
  .gs-container {
42
+ display: flex;
43
+ flex-direction: column;
44
+ justify-content: space-between;
45
+ height: 100%;
46
+ }
47
+
48
+ .gs-content-container {
42
49
  padding: 20px;
43
50
  }
44
51
 
45
- .gs-container a {
52
+ .gs-content-container a {
46
53
  cursor: pointer;
47
54
  }
48
55
 
@@ -89,3 +96,14 @@ body {
89
96
  text-transform: capitalize;
90
97
  font-weight: 400;
91
98
  }
99
+
100
+ .gs-preference-container {
101
+ display: flex;
102
+ justify-content: center;
103
+ }
104
+
105
+ .gs-preference {
106
+ margin-bottom: 20px;
107
+ display: flex;
108
+ align-items: center;
109
+ }