-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
support presentation.reveal and presentation.focus in task config #6814
Conversation
@elaihau for some reason the ECA won't validate the email, I cannot restart it on my end. |
yea I cannot do it from my side either. I changed the email back to the ericsson email address (which I temporarily don't have the password for), recreated the pull request, and it still failed. Also looks like ECA in this pr is looking at #6812 , although it has been closed. |
8fad530
to
944a538
Compare
0933055
to
efd6cbd
Compare
efd6cbd
to
43df2b1
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
logic-wise it looks good now, it would be good if someone does double testing
Thank you Anton ! |
@lmcbout do you mind testing the functionality of the pull request? |
Testing with theia/packages/task/test-resources According to the section "How to test" above Test 3.5:
Should the terminal get the focus here ? |
The terminal is focused, just simply not revealed due to
Can you confirm the behavior of your test case in VS Code? |
When running the test 3.5 with VSCode, the terminal opens when the task returns |
You are right @lmcbout . I checked the code in the debugger and found vscode checks the exit code of the task as well. I will fix it . Thank you ! |
43df2b1
to
209dfd9
Compare
@lmcbout the latest patch takes the exitCode into consideration as well |
- show the terminal if presentation.reveal = "always", - do not show the terminal if presentation.reveal = "never", - when presentation.reveal = "silent", show the terminal only if errors are found from the task output by the parser - when users start a task that is already active, put focus on the terminal if presentation.focus = true, or reveal the terminal if presentation.reveal = "always" Signed-off-by: Liang Huang <liang.huang@ericsson.com>
209dfd9
to
0fd6942
Compare
Tested the exit code: works fine as long as the task takes time before exiting.
Even if "focus=true", the focus will not be set to the terminal , it died before the terminal is registered. Everything else seems to work fine |
Thank you for your time on testing ! You mentioned |
It might be the due to #2961. |
The file JacquesTestjj does not exist, the file is JacquesTest which is:
You need to make the file "executable" . Since this issue is tracked in another PR, I will approved this one since everything else is working as expected |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Works fine , except when the process is too fast . Already reported in #2961
Support tasks presentation 'reveal' and 'focus' received from plugins This expands the functionality introduced in pull request eclipse-theia#6814, so tasks provided via plugins can configure presentation options. Signed-off-by: Alvaro Sanchez-Leon <alvaro.sanchez-leon@ericsson.com>
Support tasks presentation options received from plugins This expands the functionality introduced in pull request eclipse-theia#6814 The following presentation options are now available for use by plugins: presentationOptions.reveal presentationOptions.focus presentationOptions.echo presentationOptions.showReuseMessage presentationOptions.panel presentationOptions.clear Signed-off-by: Alvaro Sanchez-Leon <alvaro.sanchez-leon@ericsson.com>
Support tasks presentation options received from plugins This expands the functionality introduced in pull request eclipse-theia#6814 The following presentation options are now available for use by plugins: presentationOptions.reveal presentationOptions.focus presentationOptions.echo presentationOptions.showReuseMessage presentationOptions.panel presentationOptions.clear Signed-off-by: Alvaro Sanchez-Leon <alvaro.sanchez-leon@ericsson.com>
Support tasks presentation options received from plugins This expands the functionality introduced in pull request eclipse-theia#6814 The following presentation options are now available for use by plugins: presentationOptions.reveal presentationOptions.focus presentationOptions.echo presentationOptions.showReuseMessage presentationOptions.panel presentationOptions.clear Signed-off-by: Alvaro Sanchez-Leon <alvaro.sanchez-leon@ericsson.com>
Support tasks presentation options received from plugins This expands the functionality introduced in pull request eclipse-theia#6814 The following presentation options are now available for use by plugins: presentationOptions.reveal presentationOptions.focus presentationOptions.echo presentationOptions.showReuseMessage presentationOptions.panel presentationOptions.clear Signed-off-by: Alvaro Sanchez-Leon <alvaro.sanchez-leon@ericsson.com>
Support tasks presentation options received from plugins This expands the functionality introduced in pull request eclipse-theia#6814 The following presentation options are now available for use by plugins: presentationOptions.reveal presentationOptions.focus presentationOptions.echo presentationOptions.showReuseMessage presentationOptions.panel presentationOptions.clear Signed-off-by: Alvaro Sanchez-Leon <alvaro.sanchez-leon@ericsson.com>
Support tasks presentation options received from plugins This expands the functionality introduced in pull request eclipse-theia#6814 The following presentation options are now available for use by plugins: presentationOptions.reveal presentationOptions.focus presentationOptions.echo presentationOptions.showReuseMessage presentationOptions.panel presentationOptions.clear Signed-off-by: Alvaro Sanchez-Leon <alvaro.sanchez-leon@ericsson.com>
Support tasks presentation options received from plugins This expands the functionality introduced in pull request #6814 The following presentation options are now available for use by plugins: presentationOptions.reveal presentationOptions.focus presentationOptions.echo presentationOptions.showReuseMessage presentationOptions.panel presentationOptions.clear Signed-off-by: Alvaro Sanchez-Leon <alvaro.sanchez-leon@ericsson.com>
Support tasks presentation options received from plugins This expands the functionality introduced in pull request eclipse-theia#6814 The following presentation options are now available for use by plugins: presentationOptions.reveal presentationOptions.focus presentationOptions.echo presentationOptions.showReuseMessage presentationOptions.panel presentationOptions.clear Signed-off-by: Alvaro Sanchez-Leon <alvaro.sanchez-leon@ericsson.com>
show the terminal if presentation.reveal = "always",
do not show the terminal if presentation.reveal = "never",
when presentation.reveal = "silent", show the terminal only if errors are found from the task output by the parser
when users start a task that is already active, put focus on the terminal if presentation.focus = true, or reveal the terminal if presentation.reveal = "always"
Signed-off-by: Liang Huang liang.huang@ericsson.com
How to test
3.1 adding "presentation": { "reveal": "always", "focus": false } to task config shouldn't change the behavior of Theia
3.2 having "presentation": { "reveal": "never", "focus": false } in task config should leave the terminal for the task not-focused
3.3 adding "presentation": { "reveal": "never", "focus": false } in a long running task, start the long running task, and start it one more time - the terminal should not be activated throughout all steps
3.4 adding "presentation": { "reveal": "never", "focus": true }, or "presentation": { "reveal": "always", "focus": false } in a long running task, and try the rest of 3.3 - the terminal should have the focus when presentation.focus === true, while it should just be revealed and not have the focus if presentation.focus === false.
3.5 adding "presentation": { "reveal": "silent", "focus": false } in a task, run the task, if the task has no problem matcher defined, or finishes without having errors (warnings and infos are not considered errors), the terminal should not get focus
3.6 Replicate 3.5 with a task whose problem matcher finds errors from the task output - the terminal should get focus immediately after the first error is found.
Review checklist