Change order for processing links in mouse events #2640
Closed
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.
As discussed on Discord, there's some funkiness when holding
super
and hovering over links while a mouse is captured.Here's a gif showing this issue:
I was able to track this to here, which results in us never escaping this block and therefore
mouseRefreshLinks
never runs. Through discussion on discord, the "current best" solution was changing the processing order around to always process links even if events are captured (at least until mouse logic is rewritten). This PR includes that change and some documentation around why that was moved with my understanding, please let me know if that is flawed. Here's the functionality now:As part of this discovery, I was able to also get debugging working within VSCode. Here's a gif of that:
If that is useful, I can create a separate PR with those changes. For now, I'll link the instructions here.
Debug
.vscode/
directory with the following files:extensions.json
:tasks.json
:launch.json
:extensions.json
. Either search for them or install them from the extensions view and filter byrecommended
xcrun -f lldb-dap
. You can set this in your path or set the path to the binary in VSCode preferences.