Skip to content

Commit 18f2ff6

Browse files
author
Akos Kitta
committed
Replaced the splash screen with a preload.
Added a bare minimum example. Closes #193 Closes #324 Closes #327 Closes #717 Closes #851 Signed-off-by: Akos Kitta <[email protected]>
1 parent 54db9bb commit 18f2ff6

File tree

15 files changed

+155
-432
lines changed

15 files changed

+155
-432
lines changed

Diff for: .vscode/launch.json

-1
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
"--no-app-auto-install",
2121
"--plugins=local-dir:../plugins",
2222
"--hosted-plugin-inspect=9339",
23-
"--nosplash",
2423
"--content-trace",
2524
"--open-devtools"
2625
],

Diff for: arduino-ide-extension/src/electron-browser/theia/core/electron-window-module.ts

-9
Original file line numberDiff line numberDiff line change
@@ -6,10 +6,6 @@ import {
66
ElectronMainWindowServiceExt,
77
electronMainWindowServiceExtPath,
88
} from '../../../electron-common/electron-main-window-service-ext';
9-
import {
10-
SplashService,
11-
splashServicePath,
12-
} from '../../../electron-common/splash-service';
139
import { ElectronWindowService } from './electron-window-service';
1410

1511
export default new ContainerModule((bind, unbind, isBound, rebind) => {
@@ -24,9 +20,4 @@ export default new ContainerModule((bind, unbind, isBound, rebind) => {
2420
)
2521
)
2622
.inSingletonScope();
27-
bind(SplashService)
28-
.toDynamicValue(({ container }) =>
29-
ElectronIpcConnectionProvider.createProxy(container, splashServicePath)
30-
)
31-
.inSingletonScope();
3223
});

Diff for: arduino-ide-extension/src/electron-browser/theia/core/electron-window-service.ts

+9-17
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,15 @@
1-
import {
2-
inject,
3-
injectable,
4-
postConstruct,
5-
} from '@theia/core/shared/inversify';
61
import * as remote from '@theia/core/electron-shared/@electron/remote';
7-
import { FrontendApplicationStateService } from '@theia/core/lib/browser/frontend-application-state';
82
import {
93
ConnectionStatus,
104
ConnectionStatusService,
115
} from '@theia/core/lib/browser/connection-status-service';
12-
import { ElectronWindowService as TheiaElectronWindowService } from '@theia/core/lib/electron-browser/window/electron-window-service';
13-
import { SplashService } from '../../../electron-common/splash-service';
146
import { nls } from '@theia/core/lib/common';
7+
import { ElectronWindowService as TheiaElectronWindowService } from '@theia/core/lib/electron-browser/window/electron-window-service';
8+
import {
9+
inject,
10+
injectable,
11+
postConstruct,
12+
} from '@theia/core/shared/inversify';
1513
import { WindowServiceExt } from '../../../browser/theia/core/window-service-ext';
1614
import { ElectronMainWindowServiceExt } from '../../../electron-common/electron-main-window-service-ext';
1715

@@ -23,20 +21,14 @@ export class ElectronWindowService
2321
@inject(ConnectionStatusService)
2422
private readonly connectionStatusService: ConnectionStatusService;
2523

26-
@inject(SplashService)
27-
private readonly splashService: SplashService;
28-
29-
@inject(FrontendApplicationStateService)
30-
private readonly appStateService: FrontendApplicationStateService;
31-
3224
@inject(ElectronMainWindowServiceExt)
3325
private readonly mainWindowServiceExt: ElectronMainWindowServiceExt;
3426

3527
@postConstruct()
3628
protected override init(): void {
37-
this.appStateService
38-
.reachedAnyState('initialized_layout')
39-
.then(() => this.splashService.requestClose());
29+
// NOOP
30+
// Does not listen on Theia's `window.zoomLevel` changes.
31+
// TODO: IDE2 must switch to the Theia preferences and drop the custom one.
4032
}
4133

4234
protected shouldUnload(): boolean {

Diff for: arduino-ide-extension/src/electron-common/splash-service.ts

-5
This file was deleted.

Diff for: arduino-ide-extension/src/electron-main/arduino-electron-main-module.ts

-16
Original file line numberDiff line numberDiff line change
@@ -16,13 +16,8 @@ import {
1616
ElectronMainWindowServiceExt,
1717
electronMainWindowServiceExtPath,
1818
} from '../electron-common/electron-main-window-service-ext';
19-
import {
20-
SplashService,
21-
splashServicePath,
22-
} from '../electron-common/splash-service';
2319
import { ElectronMainWindowServiceExtImpl } from './electron-main-window-service-ext-impl';
2420
import { IDEUpdaterImpl } from './ide-updater/ide-updater-impl';
25-
import { SplashServiceImpl } from './splash/splash-service-impl';
2621
import { ElectronMainApplication } from './theia/electron-main-application';
2722
import { ElectronMainWindowServiceImpl } from './theia/electron-main-window-service';
2823
import { TheiaElectronWindow } from './theia/theia-electron-window';
@@ -34,17 +29,6 @@ export default new ContainerModule((bind, unbind, isBound, rebind) => {
3429
bind(ElectronMainWindowServiceImpl).toSelf().inSingletonScope();
3530
rebind(ElectronMainWindowService).toService(ElectronMainWindowServiceImpl);
3631

37-
bind(SplashServiceImpl).toSelf().inSingletonScope();
38-
bind(SplashService).toService(SplashServiceImpl);
39-
bind(ElectronConnectionHandler)
40-
.toDynamicValue(
41-
(context) =>
42-
new JsonRpcConnectionHandler(splashServicePath, () =>
43-
context.container.get(SplashService)
44-
)
45-
)
46-
.inSingletonScope();
47-
4832
// IDE updater bindings
4933
bind(IDEUpdaterImpl).toSelf().inSingletonScope();
5034
bind(IDEUpdater).toService(IDEUpdaterImpl);

Diff for: arduino-ide-extension/src/electron-main/splash/splash-screen.ts

-158
This file was deleted.

Diff for: arduino-ide-extension/src/electron-main/splash/splash-service-impl.ts

-20
This file was deleted.

Diff for: arduino-ide-extension/src/electron-main/splash/static/splash.html

-25
This file was deleted.
Binary file not shown.

0 commit comments

Comments
 (0)