Поведение WRT обещают, когда vscode.window.showErrorMessage скрывается - PullRequest
0 голосов
/ 18 марта 2019

Метод vscode.window.showErrorMessage(msg, b1, b2 …) генерирует кнопки для b1, b2… с заголовками значений b1, b2 ... и возвращает обещание, для которого возвращаемое значение является заголовком выбранной кнопки.

Это был бы отличный способ запросить выбор пользователя, если бы там оставалось окно сообщения. К сожалению это не так. После истечения времени ожидания оно исчезает, и я не могу найти документацию по семантике этого с точки зрения разрешения обещания.

В идеале был бы какой-то способ указать результат по умолчанию.

Возможно, тайм-аут заставляет обещание разрешить значение undefined; если это так, я могу интерпретировать возвращаемое значение undefined как означающее «действие по умолчанию».

Итак, вот вопрос: каково поведение команды VSCode в отношении ожидающего обещания, когда сообщение скрыто?

Существует еще одна подпись vscode.window.showErrorMessage(msg, options, b1, b2 …), в которой опции включают modal?: boolean, но нет информации о том, предотвращает ли модальность тайм-аут. Эксперимент показывает, что modal: true создает обычный модальный диалог Windows. В дополнение к кнопкам с заголовками, которые я поставил, на нем была кнопка Отмена, которая, как я полагаю, соответствует кнопке закрытия X немодальных уведомлений.

...