Visual studio code 如何将命令添加到VS Code explorer标题栏或命令调色板中,该标题栏或命令调色板仅在我的webview处于焦点状态时才处于活动状态?
我正在编写一个使用VS代码的扩展。My extension还注册了一个更新webview内容的Visual studio code 如何将命令添加到VS Code explorer标题栏或命令调色板中,该标题栏或命令调色板仅在我的webview处于焦点状态时才处于活动状态?,visual-studio-code,vscode-extensions,Visual Studio Code,Vscode Extensions,我正在编写一个使用VS代码的扩展。My extension还注册了一个更新webview内容的刷新预览命令。我怎样才能做到: refresh preview命令仅在“我的网络视图”处于焦点时显示在命令选项板中 刷新预览命令显示在webview的编辑器标题栏中 首先,创建一个自定义视图,跟踪您的网络视图何时聚焦。当聚焦webview时,使用VS Code的setContext命令创建此上下文关键点轨迹: constmywebview=。。。; //当聚焦其中一个Web视图时,制作上下文关键点轨迹
刷新预览
命令。我怎样才能做到:
命令仅在“我的网络视图”处于焦点时显示在命令选项板中refresh preview
命令显示在webview的编辑器标题栏中刷新预览
setContext
命令创建此上下文关键点轨迹:
constmywebview=。。。;
//当聚焦其中一个Web视图时,制作上下文关键点轨迹
myWebview.onDidChangeViewState(({webviewPanel})=>{
vscode.commands.executeCommand('setContext',
“myWebviewFocused”,
webviewPanel.active);
});
然后在扩展名的when
子句中使用上下文键
对于id为myExtension.refreshPreview的命令,要确保该命令仅在聚焦webview时显示在命令选项板中,请使用以下功能:
{
“贡献”:{
“菜单”:{
“命令调色板”:[
{
“命令”:“myExtension.refreshPreview”,
“何时”:“myWebviewFocused”,
}
]
}
}
}
要将命令(可能带有图标)添加到webview的编辑器标题栏,请使用编辑器/title
贡献点:
{
“贡献”:{
“菜单”:{
“编辑/标题”:[
{
“命令”:“myExtension.refreshPreview”,
“何时”:“myWebviewFocused”,
}
]
}
}
}
查看一个更高级的例子