Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
xxadev
vscode
提交
2a997534
V
vscode
项目概览
xxadev
/
vscode
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
V
vscode
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
2a997534
编写于
6月 16, 2018
作者:
D
Daniel Imms
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Rename onData to onInput
上级
166f41a2
变更
6
隐藏空白更改
内联
并排
Showing
6 changed file
with
22 addition
and
22 deletion
+22
-22
src/vs/vscode.proposed.d.ts
src/vs/vscode.proposed.d.ts
+1
-1
src/vs/workbench/api/electron-browser/mainThreadTerminalService.ts
...rkbench/api/electron-browser/mainThreadTerminalService.ts
+6
-6
src/vs/workbench/api/node/extHost.protocol.ts
src/vs/workbench/api/node/extHost.protocol.ts
+2
-2
src/vs/workbench/api/node/extHostTerminalService.ts
src/vs/workbench/api/node/extHostTerminalService.ts
+9
-9
src/vs/workbench/parts/terminal/common/terminal.ts
src/vs/workbench/parts/terminal/common/terminal.ts
+2
-2
src/vs/workbench/parts/terminal/electron-browser/terminalInstance.ts
...bench/parts/terminal/electron-browser/terminalInstance.ts
+2
-2
未找到文件。
src/vs/vscode.proposed.d.ts
浏览文件 @
2a997534
...
...
@@ -409,7 +409,7 @@ declare module 'vscode' {
* [Terminal.sendText](#Terminal.sendText). Keystrokes are converted into their
* corresponding VT sequence representation.
*/
on
Data
:
Event
<
string
>
;
// in
on
Input
:
Event
<
string
>
;
// in
// Fires when the panel area is resized, this DOES NOT fire when `dimensions` is set
/**
...
...
src/vs/workbench/api/electron-browser/mainThreadTerminalService.ts
浏览文件 @
2a997534
...
...
@@ -17,7 +17,7 @@ export class MainThreadTerminalService implements MainThreadTerminalServiceShape
private
_toDispose
:
IDisposable
[]
=
[];
private
_terminalProcesses
:
{
[
id
:
number
]:
ITerminalProcessExtHostProxy
}
=
{};
private
_dataListeners
:
{
[
id
:
number
]:
IDisposable
}
=
{};
private
_renderer
Data
Listeners
:
{
[
id
:
number
]:
IDisposable
}
=
{};
private
_renderer
Input
Listeners
:
{
[
id
:
number
]:
IDisposable
}
=
{};
constructor
(
extHostContext
:
IExtHostContext
,
...
...
@@ -109,11 +109,11 @@ export class MainThreadTerminalService implements MainThreadTerminalServiceShape
}
}
public
$terminalRendererRegisterOn
Data
Listener
(
terminalId
:
number
):
void
{
public
$terminalRendererRegisterOn
Input
Listener
(
terminalId
:
number
):
void
{
const
terminalInstance
=
this
.
terminalService
.
getInstanceFromId
(
terminalId
);
if
(
terminalInstance
)
{
this
.
_renderer
DataListeners
[
terminalId
]
=
terminalInstance
.
onRendererData
(
data
=>
this
.
_onTerminalRendererData
(
terminalId
,
data
));
terminalInstance
.
onDisposed
(()
=>
delete
this
.
_
data
Listeners
[
terminalId
]);
this
.
_renderer
InputListeners
[
terminalId
]
=
terminalInstance
.
onRendererInput
(
data
=>
this
.
_onTerminalRendererInput
(
terminalId
,
data
));
terminalInstance
.
onDisposed
(()
=>
delete
this
.
_
rendererInput
Listeners
[
terminalId
]);
}
}
...
...
@@ -136,8 +136,8 @@ export class MainThreadTerminalService implements MainThreadTerminalServiceShape
this
.
_proxy
.
$acceptTerminalProcessData
(
terminalId
,
data
);
}
private
_onTerminalRenderer
Data
(
terminalId
:
number
,
data
:
string
):
void
{
this
.
_proxy
.
$acceptTerminalRenderer
Data
(
terminalId
,
data
);
private
_onTerminalRenderer
Input
(
terminalId
:
number
,
data
:
string
):
void
{
this
.
_proxy
.
$acceptTerminalRenderer
Input
(
terminalId
,
data
);
}
private
_onTerminalDisposed
(
terminalInstance
:
ITerminalInstance
):
void
{
...
...
src/vs/workbench/api/node/extHost.protocol.ts
浏览文件 @
2a997534
...
...
@@ -342,7 +342,7 @@ export interface MainThreadTerminalServiceShape extends IDisposable {
$terminalRendererSetName
(
terminalId
:
number
,
name
:
string
):
void
;
$terminalRendererSetDimensions
(
terminalId
:
number
,
dimensions
:
ITerminalDimensions
):
void
;
$terminalRendererWrite
(
terminalId
:
number
,
text
:
string
):
void
;
$terminalRendererRegisterOn
Data
Listener
(
terminalId
:
number
):
void
;
$terminalRendererRegisterOn
Input
Listener
(
terminalId
:
number
):
void
;
}
export
interface
TransferQuickPickItems
extends
IQuickPickItem
{
...
...
@@ -844,7 +844,7 @@ export interface ExtHostTerminalServiceShape {
$acceptTerminalOpened
(
id
:
number
,
name
:
string
):
void
;
$acceptTerminalProcessId
(
id
:
number
,
processId
:
number
):
void
;
$acceptTerminalProcessData
(
id
:
number
,
data
:
string
):
void
;
$acceptTerminalRenderer
Data
(
id
:
number
,
data
:
string
):
void
;
$acceptTerminalRenderer
Input
(
id
:
number
,
data
:
string
):
void
;
$acceptTerminalRendererDimensions
(
id
:
number
,
cols
:
number
,
rows
:
number
):
void
;
$createProcess
(
id
:
number
,
shellLaunchConfig
:
ShellLaunchConfigDto
,
cols
:
number
,
rows
:
number
):
void
;
$acceptProcessInput
(
id
:
number
,
data
:
string
):
void
;
...
...
src/vs/workbench/api/node/extHostTerminalService.ts
浏览文件 @
2a997534
...
...
@@ -138,16 +138,16 @@ export class ExtHostTerminalRenderer extends BaseExtHostTerminal implements vsco
this
.
_queueApiRequest
(
this
.
_proxy
.
$terminalRendererSetName
,
[
this
.
_name
]);
}
private
readonly
_on
Data
:
Emitter
<
string
>
=
new
Emitter
<
string
>
();
public
get
on
Data
():
Event
<
string
>
{
private
readonly
_on
Input
:
Emitter
<
string
>
=
new
Emitter
<
string
>
();
public
get
on
Input
():
Event
<
string
>
{
this
.
_checkDisposed
();
this
.
_queueApiRequest
(
this
.
_proxy
.
$terminalRendererRegisterOn
Data
Listener
,
[
this
.
_id
]);
this
.
_queueApiRequest
(
this
.
_proxy
.
$terminalRendererRegisterOn
Input
Listener
,
[
this
.
_id
]);
// TODO: This is not firing on renderers as ExtHostTerminalService doesn't track them currently
console
.
log
(
'
TerminalRenderer.on
Data
id:
'
,
this
.
_id
);
console
.
log
(
'
TerminalRenderer.on
Input
id:
'
,
this
.
_id
);
// TODO: This needs to fire for keystrokes and sendText only for renderers
// Tell the main side to start sending data if it's not already
// this._proxy.$terminalRendererRegisterOnDataListener(this._id);
return
this
.
_on
Data
&&
this
.
_onData
.
event
;
return
this
.
_on
Input
&&
this
.
_onInput
.
event
;
}
private
_dimensions
:
vscode
.
TerminalDimensions
|
undefined
;
...
...
@@ -190,8 +190,8 @@ export class ExtHostTerminalRenderer extends BaseExtHostTerminal implements vsco
this
.
_queueApiRequest
(
this
.
_proxy
.
$terminalRendererWrite
,
[
data
]);
}
public
_fireOn
Data
(
data
:
string
):
void
{
this
.
_on
Data
.
fire
(
data
);
public
_fireOn
Input
(
data
:
string
):
void
{
this
.
_on
Input
.
fire
(
data
);
}
public
_setMaximumDimensions
(
cols
:
number
,
rows
:
number
):
void
{
...
...
@@ -260,13 +260,13 @@ export class ExtHostTerminalService implements ExtHostTerminalServiceShape {
renderer
.
_setMaximumDimensions
(
cols
,
rows
);
}
public
$acceptTerminalRenderer
Data
(
id
:
number
,
data
:
string
):
void
{
public
$acceptTerminalRenderer
Input
(
id
:
number
,
data
:
string
):
void
{
const
index
=
this
.
_getTerminalRendererIndexById
(
id
);
if
(
index
===
null
)
{
return
;
}
const
renderer
=
this
.
_terminalRenderers
[
index
];
renderer
.
_fireOn
Data
(
data
);
renderer
.
_fireOn
Input
(
data
);
}
public
$acceptTerminalClosed
(
id
:
number
):
void
{
...
...
src/vs/workbench/parts/terminal/common/terminal.ts
浏览文件 @
2a997534
...
...
@@ -491,11 +491,11 @@ export interface ITerminalInstance {
onData
(
listener
:
(
data
:
string
)
=>
void
):
IDisposable
;
/**
* Attach a listener to the "renderer"
data
event, this event fires for terminal renderers on
* Attach a listener to the "renderer"
input
event, this event fires for terminal renderers on
* keystrokes and when the Terminal.sendText extension API is used.
* @param listener The listener function.
*/
onRenderer
Data
(
listener
:
(
data
:
string
)
=>
void
):
IDisposable
;
onRenderer
Input
(
listener
:
(
data
:
string
)
=>
void
):
IDisposable
;
/**
* Attach a listener to listen for new lines added to this terminal instance.
...
...
src/vs/workbench/parts/terminal/electron-browser/terminalInstance.ts
浏览文件 @
2a997534
...
...
@@ -813,9 +813,9 @@ export class TerminalInstance implements ITerminalInstance {
return
this
.
_processManager
.
onProcessData
(
data
=>
listener
(
data
));
}
public
onRenderer
Data
(
listener
:
(
data
:
string
)
=>
void
):
lifecycle
.
IDisposable
{
public
onRenderer
Input
(
listener
:
(
data
:
string
)
=>
void
):
lifecycle
.
IDisposable
{
if
(
this
.
_processManager
)
{
throw
new
Error
(
'
onRenderer
Data
attempted to be used on a regular terminal
'
);
throw
new
Error
(
'
onRenderer
INput
attempted to be used on a regular terminal
'
);
}
// For terminal renderers onData fires on keystrokes and when sendText is called.
// TODO: Handle sendText case
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录