liamg / darktile

:waning_crescent_moon: Darktile is a GPU rendered terminal emulator designed for tiling window managers.
MIT License
3.04k stars 113 forks source link

Correct buffer switching #266

Closed rrrooommmaaa closed 3 years ago

rrrooommmaaa commented 5 years ago

Despite having not yet been reported by testers, buffer switching is currently done in an unsafe manner. Current code attepts to resize the buffer according to the terminal's dimensions, but it won't work in most cases -- buffer.ResizeView() should be called directly (instead of calling terminal.SetSize()). Also, scroll position should obviously be adjusted.

To Reproduce So far, no steps to reproduce incorrect behaviour. Buffer switching is done by (un)setting ?47 and ?1047 DEC modes

Expected behavior Find out what precautions xterm does when switching buffers and implement that in aminal.

Environment (please complete the following information):

liamg commented 3 years ago

Closed due to complete rewrite as part of bringing the project back to life, please create a new issue if still relevant. Thank you!