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

Data loss when resizing #325

Closed
blink1073 opened this issue Oct 25, 2016 · 11 comments
Closed

Data loss when resizing #325

blink1073 opened this issue Oct 25, 2016 · 11 comments
Labels
type/bug Something is misbehaving

Comments

@blink1073
Copy link
Contributor

Resizing should preserve the existing text.

Details

  • Browser and browser version:
  • OS version: OSX 10.11
  • xterm.js version: 269540b

Steps to reproduce

  1. Run the demo
  2. Reduce the column count
  3. Increase the column count and the original data is not restored.

Iterm2 handles this by reflowing the rows when you decrease the width.

screen shot 2016-10-25 at 2 22 25 pm

screen shot 2016-10-25 at 2 22 43 pm

vs.

screen shot 2016-10-25 at 2 23 48 pm

screen shot 2016-10-25 at 2 24 01 pm

screen shot 2016-10-25 at 2 24 11 pm

@parisk
Copy link
Contributor

parisk commented Oct 26, 2016

Thanks for reporting @blink1073. Will take a deeper look on this.

@parisk parisk added the type/bug Something is misbehaving label Oct 26, 2016
@Tyriar
Copy link
Member

Tyriar commented Oct 26, 2016

I've been closing most of these in favor of #103 but they're technically different issues I guess. Let's use this to track not retaining characters off screen (Related request to support wrapping #166) and #103 to track only the prompt.

@ebertmi
Copy link

ebertmi commented Oct 26, 2016

I've experienced the same errors as I am using xterm.js without a "real" process (I am using https://github.com/skulpt/skulpt). I am just piping in my stdin and stdout streams.

imsnif added a commit to imsnif/xterm.js that referenced this issue Nov 30, 2016
imsnif added a commit to imsnif/xterm.js that referenced this issue Nov 30, 2016
imsnif added a commit to imsnif/xterm.js that referenced this issue Dec 1, 2016
imsnif added a commit to imsnif/xterm.js that referenced this issue Dec 1, 2016
imsnif added a commit to imsnif/xterm.js that referenced this issue Dec 1, 2016
imsnif added a commit to imsnif/xterm.js that referenced this issue Dec 7, 2016
@imsnif imsnif mentioned this issue Dec 12, 2016
@Tyriar
Copy link
Member

Tyriar commented Jan 10, 2017

I believe fixing this may fix some of the escape sequence tests. I think the reason t0021-CUB.in is failing for example is because the cursor position is reset to 0 after a line is wrapped but it should be cols.

@ppot
Copy link

ppot commented Jan 31, 2017

@Tyriar Any input on when this resizing issue will be resolve?

@Tyriar
Copy link
Member

Tyriar commented Feb 1, 2017

@imsnif was handling this one. Still a WIP, see #404

@ppot
Copy link

ppot commented Feb 1, 2017

Got it! Looking at it right now.

@imsnif
Copy link

imsnif commented Feb 1, 2017

Still working on it! :)
I don't yet have an ETA, but am close to finishing a prototype (this is a very big change). Hoping to have more information on the weekend, but I don't want to make any promises.

@ppot
Copy link

ppot commented Feb 2, 2017

@imsnif Any input on what you still need to do?

@imsnif
Copy link

imsnif commented Feb 2, 2017

@ppot - in short: right now in my prototype resize, refresh and write are working with the external line index. There are some kinks I need to work out with them (including some performance issues) and then make sure all the other parts of the code work as well (eraseRight, etc.)

Then pull from upstream (I'm a little behind), write tests, clean everything up and we're good. Once I get the prototype to work (shouldn't be long now, I hope) I'll have a much clearer ETA of when the rest will be done.

@blink1073
Copy link
Contributor Author

Fixed by #616, thanks @LucianBuzzo!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type/bug Something is misbehaving
Projects
None yet
Development

No branches or pull requests

6 participants