mirror of
https://github.com/arduino/arduino-ide.git
synced 2025-07-25 20:26:38 +00:00
Fixed the output channel registry for extensions.
See: eclipse-theia/theia#8122 Signed-off-by: Akos Kitta <kittaakos@typefox.io>
This commit is contained in:
parent
cb24571eeb
commit
ec8df37c2d
@ -124,6 +124,7 @@ import { LibraryServiceProvider } from './library/library-service-provider';
|
|||||||
import { IncludeLibrary } from './contributions/include-library';
|
import { IncludeLibrary } from './contributions/include-library';
|
||||||
import { OutputChannelManager as TheiaOutputChannelManager } from '@theia/output/lib/common/output-channel';
|
import { OutputChannelManager as TheiaOutputChannelManager } from '@theia/output/lib/common/output-channel';
|
||||||
import { OutputChannelManager } from './theia/output/output-channel';
|
import { OutputChannelManager } from './theia/output/output-channel';
|
||||||
|
import { OutputChannelRegistryMainImpl as TheiaOutputChannelRegistryMainImpl, OutputChannelRegistryMainImpl } from './theia/plugin-ext/output-channel-registry-main';
|
||||||
|
|
||||||
const ElementQueries = require('css-element-queries/src/ElementQueries');
|
const ElementQueries = require('css-element-queries/src/ElementQueries');
|
||||||
|
|
||||||
@ -314,6 +315,8 @@ export default new ContainerModule((bind, unbind, isBound, rebind) => {
|
|||||||
rebind(TheiaOutputWidget).toService(OutputWidget);
|
rebind(TheiaOutputWidget).toService(OutputWidget);
|
||||||
bind(OutputChannelManager).toSelf().inSingletonScope();
|
bind(OutputChannelManager).toSelf().inSingletonScope();
|
||||||
rebind(TheiaOutputChannelManager).toService(OutputChannelManager);
|
rebind(TheiaOutputChannelManager).toService(OutputChannelManager);
|
||||||
|
bind(OutputChannelRegistryMainImpl).toSelf().inTransientScope();
|
||||||
|
rebind(TheiaOutputChannelRegistryMainImpl).toService(OutputChannelRegistryMainImpl);
|
||||||
|
|
||||||
// Show a disconnected status bar, when the daemon is not available
|
// Show a disconnected status bar, when the daemon is not available
|
||||||
bind(ApplicationConnectionStatusContribution).toSelf().inSingletonScope();
|
bind(ApplicationConnectionStatusContribution).toSelf().inSingletonScope();
|
||||||
|
@ -0,0 +1,38 @@
|
|||||||
|
import { injectable, inject } from 'inversify';
|
||||||
|
import { CommandService } from '@theia/core/lib/common/command';
|
||||||
|
import { OutputCommands } from '@theia/output/lib/browser/output-commands';
|
||||||
|
import { PluginInfo } from '@theia/plugin-ext/lib/common/plugin-api-rpc';
|
||||||
|
import { OutputChannelRegistryMainImpl as TheiaOutputChannelRegistryMainImpl } from '@theia/plugin-ext/lib/main/browser/output-channel-registry-main';
|
||||||
|
|
||||||
|
@injectable()
|
||||||
|
export class OutputChannelRegistryMainImpl extends TheiaOutputChannelRegistryMainImpl {
|
||||||
|
|
||||||
|
@inject(CommandService)
|
||||||
|
protected readonly commandService: CommandService;
|
||||||
|
|
||||||
|
$append(name: string, text: string, pluginInfo: PluginInfo): PromiseLike<void> {
|
||||||
|
this.commandService.executeCommand(OutputCommands.APPEND.id, { name, text });
|
||||||
|
return Promise.resolve();
|
||||||
|
}
|
||||||
|
|
||||||
|
$clear(name: string): PromiseLike<void> {
|
||||||
|
this.commandService.executeCommand(OutputCommands.CLEAR.id, { name });
|
||||||
|
return Promise.resolve();
|
||||||
|
}
|
||||||
|
|
||||||
|
$dispose(name: string): PromiseLike<void> {
|
||||||
|
this.commandService.executeCommand(OutputCommands.DISPOSE.id, { name });
|
||||||
|
return Promise.resolve();
|
||||||
|
}
|
||||||
|
|
||||||
|
async $reveal(name: string, preserveFocus: boolean): Promise<void> {
|
||||||
|
const options = { preserveFocus };
|
||||||
|
this.commandService.executeCommand(OutputCommands.SHOW.id, { name, options });
|
||||||
|
}
|
||||||
|
|
||||||
|
$close(name: string): PromiseLike<void> {
|
||||||
|
this.commandService.executeCommand(OutputCommands.HIDE.id, { name });
|
||||||
|
return Promise.resolve();
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user