Skip to content

Conversation

@joouha
Copy link
Contributor

@joouha joouha commented Apr 27, 2022

Hi Jonathan,

Currently if a zero-width escape sequence in a Screen changes, but the Char at the same position does not change, the new ZWE is not sent to the output. I think the expected behaviour is that all changes to ZWEs should be sent to the output.

I've read the warning about this being performance-critical code, and obviously checking for differences in ZWEs in addition to differences in the data buffer will take longer. However, by avoiding unnecessary calls to move_cursor if the cursor is already in the correct position, we can save a bit of time to make up for this.

My testing shows that this implementation is not significantly slower than the current implementation (and can be faster in some scenarios) - but I'd appreciate if someone could test it independently.

Let me know what you think,
Josiah

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant