Add a new panel for all OpenShift commands#2879
Add a new panel for all OpenShift commands#2879datho7561 merged 1 commit intoredhat-developer:mainfrom
Conversation
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## main #2879 +/- ##
==========================================
+ Coverage 35.41% 36.56% +1.14%
==========================================
Files 64 54 -10
Lines 4238 3758 -480
Branches 836 736 -100
==========================================
- Hits 1501 1374 -127
+ Misses 2737 2384 -353
☔ View full report in Codecov by Sentry. |
0e0a433 to
592e9ff
Compare
4795bb2 to
d6c4ce0
Compare
|
|
|
I just realized that, after this change, it will be very difficult to write automated tests for anything that uses the terminal. We are testing using Selenium, which can scrape data off the HTML DOM. The library I am using to render the terminal output uses WebGL for performance reasons, so the terminal text is not in a DOM node, it's a rendered image. The two ways I can think of to test the terminal output:
I'll try the second version and see if I get anywhere edit: it should be feasible to use the second strategy, I had some code that did that as a part of this PR, but I removed it. |
|
|
c95f6f9 to
6437cc4
Compare
6437cc4 to
3fe6b56
Compare
msivasubramaniaan
left a comment
There was a problem hiding this comment.
The below error on npm install
ERR! find VSfind VS msvs_version not set from command line or npm config?
After resolved the above error and opened the extension, I was trying to run the Start Dev command, then the extension was stuck and I couldn't able to perform anything further on the extension.
ddeab40 to
e54b2a6
Compare
|
|
e54b2a6 to
9f2157e
Compare
9f2157e to
01c574e
Compare
Good catch! Should be fixed |
01c574e to
e9973d1
Compare
|
@JessicaJHee @rgrunber let me know if you think it's good. I'll have to address the merge conflict before we can merge the PR. |
e9973d1 to
77dad6f
Compare
77dad6f to
fa1e8c4
Compare
It's a webview, since we need to use either a treeview or webview for all panels. It wraps xtermjs, the same library VS Code uses for its terminal. It exposes an API for interacting with the terminal multiplexer, as well as with the individual running processes. For example, we can run `odo dev` and update the UI (like we were doing before this PR). What's missing: - [ ] copy/paste - [ ] Tests (pending on redhat-developer/vscode-extension-tester#855) - [ ] reordering the tabs (I think we should gauge interest and save this for a future PR) - [ ] tab bar scrolling (supposedly the Material UI component comes with this built it, but it wasn't working when I tested it) Signed-off-by: David Thompson <davthomp@redhat.com>
fa1e8c4 to
10c0bdc
Compare

It's a webview, since we need to use either a treeview or webview for all panels. It wraps xtermjs, the same library VS Code uses for its terminal. It exposes an API for interacting with the terminal multiplexer, as well as with the individual running processes. For example, we can run
odo devand update the UI to show the state of the deployment created by odo (like we were doing before this PR).What's missing and can probably saved for a future PR:
Ctrl+Shift+C/Ctrl+Shift+V(using the context menu to copy and paste works)Known bugs:
odo dev), and switch back to the first tab, the font size and family changes on that tab. All subsequent tab creation/switching doesn't seem to cause this issue.Closes #2819
Signed-off-by: David Thompson davthomp@redhat.com