-
Notifications
You must be signed in to change notification settings - Fork 35.7k
Closed
Labels
editor-hoverEditor mouse hoverEditor mouse hoverfeature-requestRequest for new features or functionalityRequest for new features or functionalityinsiders-releasedPatch has been released in VS Code InsidersPatch has been released in VS Code Insidersverification-neededVerification of issue is requestedVerification of issue is requestedverifiedVerification succeededVerification succeeded
Milestone
Description
When having multiple hover providers, it would be good to render results as soon as possible and not block on waiting for all hover providers. Sample:
package.json:
{
"name": "137714",
"publisher": "alex",
"version": "0.0.1",
"engines": {
"vscode": "^1.22.0"
},
"activationEvents": ["*"],
"main": "main.js"
}main.js:
//@ts-check
const vscode = require("vscode");
/**
*
* @param {string} message
* @param {number} timeout
*/
function createProvider(message, timeout) {
return (
/**
* @param {import('vscode').TextDocument} document
* @param {import('vscode').Position} position
*/
function provideHover(document, position) {
return new Promise((resolve, reject) => {
setTimeout(() => {
resolve(new vscode.Hover(new vscode.MarkdownString(message)));
}, timeout);
});
}
);
}
/**
* @param {string} message
* @param {number} timeout
*/
function registerProvider(message, timeout) {
const provideHover = createProvider(message, timeout);
vscode.languages.registerHoverProvider({ language: 'typescript', }, { provideHover });
}
exports.activate = function (ctx) {
registerProvider('Slow provider', 5000);
registerProvider('Fast provider', 1000);
registerProvider('Very fast provider', 0);
};Eskibear
Metadata
Metadata
Assignees
Labels
editor-hoverEditor mouse hoverEditor mouse hoverfeature-requestRequest for new features or functionalityRequest for new features or functionalityinsiders-releasedPatch has been released in VS Code InsidersPatch has been released in VS Code Insidersverification-neededVerification of issue is requestedVerification of issue is requestedverifiedVerification succeededVerification succeeded