1
+ import { inject , injectable , postConstruct } from 'inversify' ;
2
+ import * as React from 'react' ;
3
+ import { remote } from 'electron' ;
4
+ import {
5
+ BoardsService ,
6
+ Port ,
7
+ SketchesService ,
8
+ ExecutableService ,
9
+ Sketch ,
10
+ } from '../common/protocol' ;
1
11
import { Mutex } from 'async-mutex' ;
2
12
import {
3
13
MAIN_MENU_BAR ,
@@ -40,16 +50,10 @@ import { OutputContribution } from '@theia/output/lib/browser/output-contributio
40
50
import { ScmContribution } from '@theia/scm/lib/browser/scm-contribution' ;
41
51
import { SearchInWorkspaceFrontendContribution } from '@theia/search-in-workspace/lib/browser/search-in-workspace-frontend-contribution' ;
42
52
import { TerminalMenus } from '@theia/terminal/lib/browser/terminal-frontend-contribution' ;
43
- import { inject , injectable , postConstruct } from 'inversify' ;
44
- import * as React from 'react' ;
45
- import { remote } from 'electron' ;
46
- import {
47
- BoardsService ,
48
- Port ,
49
- SketchesService ,
50
- ExecutableService ,
51
- Sketch ,
52
- } from '../common/protocol' ;
53
+ import { HostedPluginSupport } from '@theia/plugin-ext/lib/hosted/browser/hosted-plugin' ;
54
+ import { FileService } from '@theia/filesystem/lib/browser/file-service' ;
55
+ import { FileChangeType } from '@theia/filesystem/lib/browser' ;
56
+ import { FrontendApplicationStateService } from '@theia/core/lib/browser/frontend-application-state' ;
53
57
import { ConfigService } from '../common/protocol/config-service' ;
54
58
import { ArduinoCommands } from './arduino-commands' ;
55
59
import { BoardsConfig } from './boards/boards-config' ;
@@ -60,13 +64,9 @@ import { EditorMode } from './editor-mode';
60
64
import { ArduinoMenus } from './menu/arduino-menus' ;
61
65
import { MonitorViewContribution } from './serial/monitor/monitor-view-contribution' ;
62
66
import { ArduinoToolbar } from './toolbar/arduino-toolbar' ;
63
- import { HostedPluginSupport } from '@theia/plugin-ext/lib/hosted/browser/hosted-plugin' ;
64
- import { FileService } from '@theia/filesystem/lib/browser/file-service' ;
65
67
import { ArduinoPreferences } from './arduino-preferences' ;
66
68
import { SketchesServiceClientImpl } from '../common/protocol/sketches-service-client-impl' ;
67
69
import { SaveAsSketch } from './contributions/save-as-sketch' ;
68
- import { FileChangeType } from '@theia/filesystem/lib/browser' ;
69
- import { FrontendApplicationStateService } from '@theia/core/lib/browser/frontend-application-state' ;
70
70
import { SketchbookWidgetContribution } from './widgets/sketchbook/sketchbook-widget-contribution' ;
71
71
72
72
const INIT_AVR_PACKAGES = 'initializedAvrPackages' ;
@@ -345,6 +345,9 @@ export class ArduinoFrontendContribution
345
345
this . fileService . fsPath ( new URI ( clangdUri ) ) ,
346
346
this . fileService . fsPath ( new URI ( lsUri ) ) ,
347
347
] ) ;
348
+
349
+ const config = await this . configService . getConfiguration ( ) ;
350
+
348
351
this . languageServerFqbn = await Promise . race ( [
349
352
new Promise < undefined > ( ( _ , reject ) =>
350
353
setTimeout (
@@ -356,7 +359,7 @@ export class ArduinoFrontendContribution
356
359
'arduino.languageserver.start' ,
357
360
{
358
361
lsPath,
359
- cliDaemonAddr : ' localhost:50051' ,
362
+ cliDaemonAddr : ` localhost:${ config . daemon . port } ` ,
360
363
clangdPath,
361
364
log : currentSketchPath ? currentSketchPath : log ,
362
365
cliDaemonInstance : '1' ,
0 commit comments