fix: clamp mouse position into the terminal dimension #116
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.
When determining the Mouse Offset, it can happen that the resulting position is outside of the terminal. E.g. if a mouse is used to select text and moved outside the terminal, the reported position may be outside the terminal. Currently in these case it can happen that the text selection has e.g. a negative x position.
As it doest not make sense, that the TextSelection contains a position outside the terminal, this PR ensures that this can no longer happen. Therefore additional checks are added to getMouseOffset which clamps the position into the terminal area.