fix quick-open: multi-step input (#8777) #11055
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What it does
Fixes #8777 multiStep quick input flows that call createInputBox
Previously, when invoking show() a quick input box would be initially created by calling update({visible: true}) in super(), which in turn would invoke $createOrUpdate in quick-open-main and create an InputBox and corresponding session. After the session is created, show() then calls $showInputBox (An api method introduced by Theia, which is not supported by the VS Code API) which creates another InputBox, destroying the previously created session and returning no value to the caller. This leaves an orpaned InputBox on screen.
To correct this, we simply enable show to invoke $createOrUpdate which handles the quick input flow correctly, and set the proper value when received from the quick-open-main.
How to test
Review checklist
Reminder for reviewers