-
Notifications
You must be signed in to change notification settings - Fork 29.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
Adopt terminal link provider API #90336
Conversation
src/vs/workbench/contrib/terminal/browser/terminalLinkHandler.ts
Outdated
Show resolved
Hide resolved
3e468a9
to
623c8af
Compare
I reverted the old changes and pushed a new solution that doesn't modify |
Merged in so xterm is on latest: b4c19fd |
…into linkProvider
I updated the branch and fixed the issues with widget hovering so that it works reliably. |
@jmbockhorst thanks and sorry about the delay, I was busy in the week I would try to merge (debt week) due to launching settings sync. Hopefully I'll finish this iteration's work early or get to it early April. I haven't forgotten 😃 |
I merged from master and did my best to fix the conflicts but I'm seeing the activation not happen when cmd+clicking (tested on mac). See the activate logs in the gif below, the first one worked but the other 3 didn't: The reason was because I also notice the link seems to get disposed when you click it, or just the rendering part of it anyway. We definitely want to keep the underline when clicked. |
It could be related to this new feature if this wasn't happening before: vscode/src/vs/workbench/contrib/terminal/browser/terminalLinkHandler.ts Lines 254 to 275 in 433380c
|
Also can't seem to repro this in xterm.js' demo so not sure what's going on. |
Ah I figured it out, |
Created xtermjs/xterm.js#2836 |
Are there still problems with link activation in the other renderers? |
@jmbockhorst just webgl, will update vscode's xterm with the fix to xtermjs/xterm.js#2836 soon |
Diff: xtermjs/xterm.js@e05bf87...aecfb57 Contains webgl fix for #90336
Ok that seems to have fixed it 🎉 |
Currently when a cell is trimmed due to a wide char wrapping isn't covered
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.
CI passed, merging. Thanks a lot for all the work here @jmbockhorst, this is much better than it was for web links, just need to close the functionality gap and we should be good to switch this over.
Thank you for all of the help and guidance along the way! |
This adopts the new xterm.js link provider API and uses VS Code's shared link detection system. Added a new setting
terminal.integrated.experimentalLinkProvider
to control this behavior. Closes #90298.Also, it was very complicated figuring out what was 0-based or 1-based and what to use where, so hopefully that can be cleared up with xtermjs/xterm.js#2706.