diff --git a/src/vs/workbench/parts/terminal/electron-browser/terminalInstance.ts b/src/vs/workbench/parts/terminal/electron-browser/terminalInstance.ts index fce5b64c0614ce042598a76cb66570f01805cacd..ef4dcd3fe85cdee1c5e61743f0ffc0be7e6ecd91 100644 --- a/src/vs/workbench/parts/terminal/electron-browser/terminalInstance.ts +++ b/src/vs/workbench/parts/terminal/electron-browser/terminalInstance.ts @@ -153,6 +153,10 @@ export class TerminalInstance { } } + public dispatchEvent(event: Event) { + this.terminal.element.dispatchEvent(event); + } + public dispose(): void { this.parentDomElement.removeChild(this.wrapperElement); this.wrapperElement = null; diff --git a/src/vs/workbench/parts/terminal/electron-browser/terminalPanel.ts b/src/vs/workbench/parts/terminal/electron-browser/terminalPanel.ts index dc37da76957480b6a44c819dbdf36c05578dbaa2..33dc0eb0a28b5902ea1495bf0e299b6c7e9ecfc6 100644 --- a/src/vs/workbench/parts/terminal/electron-browser/terminalPanel.ts +++ b/src/vs/workbench/parts/terminal/electron-browser/terminalPanel.ts @@ -5,6 +5,7 @@ import lifecycle = require('vs/base/common/lifecycle'); import platform = require('vs/base/common/platform'); +import DOM = require('vs/base/browser/dom'); import {TPromise} from 'vs/base/common/winjs.base'; import {Builder, Dimension} from 'vs/base/browser/builder'; import {IConfigurationService} from 'vs/platform/configuration/common/configuration'; @@ -47,6 +48,9 @@ export class TerminalPanel extends Panel { this.themeStyleElement = document.createElement('style'); this.parentDomElement.appendChild(this.themeStyleElement); this.configurationHelper = new TerminalConfigHelper(platform.platform, this.configurationService, this.parentDomElement); + this.toDispose.push(DOM.addDisposableListener(this.parentDomElement, 'wheel', (event: WheelEvent) => { + this.terminalInstance.dispatchEvent(new WheelEvent(event.type, event)); + })); return this.createTerminal(); }