-
Notifications
You must be signed in to change notification settings - Fork 8.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add support for the Presentation State reports (#14998)
This PR introduces two new sequences, `DECRQPSR` and `DECRSPS`, which provide a way for applications to query and restore the presentation state reports. This includes the tab stop report (`DECTABSR`) and the cursor information report (`DECCIR`). One part of the cursor information report contains the character set designations and mapped G-sets. But we weren't tracking that data in a way that could easily be reported, so I needed to do some refactoring in the `TerminalOutput` class to make that accessible. Other than that, the rest was fairly straightforward. It was just a matter of packaging up all the information into the correct format for the returned `DCS` string, and in the case of the restore operations, parsing the incoming data and applying the new state. ## Validation Steps Performed Thanks to @al20878, we were able to test these operations on a real VT525, and I've manually verified that our implementation matches that behavior. I've also added some unit tests covering both reports. Closes #14984
- Loading branch information
Showing
13 changed files
with
661 additions
and
24 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.