Skip to content
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

Integrated terminal should handle mouse scrolling in curses-style interfaces #32552

Closed
MattSturgeon opened this issue Aug 15, 2017 · 5 comments
Closed
Assignees
Labels
bug Issue identified by VS Code Team member as probable bug *duplicate Issue identified as a duplicate of another issue(s) terminal General terminal issues that don't fall under another label
Milestone

Comments

@MattSturgeon
Copy link

MattSturgeon commented Aug 15, 2017

Summary

Scrolling within the integrated terminal doesn't scroll curses interfaces such as less, vim, git log, etc.

System setup

  • VSCode Version: Version 1.15.0 8b95971
  • OS Version: Arch Linux
  • Shell: ZSH (oh-my-zsh)

Steps to Reproduce:

  1. Open the integrated terminal (Ctrl+`)
  2. Open a curses style pager interface (e.g. less, git log, git diff, vim)
  3. Use the mouse scrollwheel to try and scroll the pager
  4. Nothing happens, using keyboard commands to scroll works fine (j, k, PgUp, PgDown, arrow keys, etc)

Compare with expected behaviour:

  1. Open a seperate terminal (e.g. gnome-terminal or tilix)
  2. Repeat step 2 & 3 above
  3. Works as expected; pager scrolls

Reproduces without extensions: Yes

@vscodebot vscodebot bot added the terminal General terminal issues that don't fall under another label label Aug 15, 2017
@Tyriar
Copy link
Member

Tyriar commented Aug 17, 2017

This should be fixed in the next version. Note that this only applies to applications that launch the alt buffer however, so it does not apply to git log .

Upstream issue: xtermjs/xterm.js#802

@Tyriar Tyriar added this to the August 2017 milestone Aug 17, 2017
@MattSturgeon
Copy link
Author

Sounds like the upstream issue might be a different one to this. It appears to be about the alternative buffer being rendered twice after a scroll.

This is about passing scroll events to pager style programs, such as less and git log.

@Tyriar
Copy link
Member

Tyriar commented Aug 17, 2017

The reason scroll isn't making it to the terminal app is because the scrollbar is grabbing the event and not passing it to the terminal. When there is no scrollback it gets sent to the terminal correctly.

@Tyriar Tyriar closed this as completed in 84c7d30 Aug 19, 2017
@Tyriar
Copy link
Member

Tyriar commented Sep 1, 2017

It works in tmux fine now but not vim yet.

@Tyriar Tyriar reopened this Sep 1, 2017
@Tyriar Tyriar modified the milestones: Backlog, August 2017 Sep 1, 2017
@Tyriar Tyriar added the bug Issue identified by VS Code Team member as probable bug label Sep 1, 2017
@Tyriar
Copy link
Member

Tyriar commented Jun 21, 2018

This has been working for a few versions now 👍

@Tyriar Tyriar closed this as completed Jun 21, 2018
@Tyriar Tyriar added the *duplicate Issue identified as a duplicate of another issue(s) label Jun 21, 2018
@vscodebot vscodebot bot locked and limited conversation to collaborators Aug 5, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
bug Issue identified by VS Code Team member as probable bug *duplicate Issue identified as a duplicate of another issue(s) terminal General terminal issues that don't fall under another label
Projects
None yet
Development

No branches or pull requests

3 participants