6936ee15fe
When switching to the alt buffer, the starting cursor position, style, and visibility is meant to be inherited from the main buffer. Similarly, when returning to the main buffer, any changes made to those attributes should be copied back (with the exception of the cursor position, which is restored to its original state). This PR makes sure we handle that cursor state correctly. At some point I'd like to move the cursor state out of the `SCREEN_INFORMATION` class, which would make this inheritance problem a non-issue. For now, though, I've just made it copy the state from the main buffer when creating the alt buffer, and copy it back when returning to the main buffer. ## Validation Steps Performed I've added some unit tests to verify the cursor state is inherited correctly when switching to the alt buffer and back again. I also had to make a small change to one of the existing alt buffer test that relied on the initial cursor position being at 0;0, which is no longer the case. I've verified that the test case in issue #3545 is now working correctly. I've also confirmed that this fixes a problem in the _notcurses_ demo, where the cursor was showing when it should have been hidden. Closes #3545 |
||
---|---|---|
.. | ||
api-ms-win-core-synch-l1-2-0 | ||
buffer | ||
cascadia | ||
dep | ||
host | ||
inc | ||
interactivity | ||
internal | ||
propsheet | ||
propslib | ||
renderer | ||
server | ||
staging | ||
terminal | ||
testlist | ||
til | ||
tools | ||
tsf | ||
types | ||
winconpty | ||
common.build.post.props | ||
common.build.pre.props | ||
common.build.tests.props | ||
common.pgo.compile.props | ||
common.pgo.runtime.props | ||
ConsolePerf.regions.xml | ||
ConsolePerf.wprp | ||
cppwinrt.build.post.props | ||
cppwinrt.build.pre.props | ||
dirs | ||
features.xml | ||
project.inc | ||
project.unittest.inc | ||
StaticAnalysis.ruleset | ||
Terminal.wprp | ||
unit.tests.x64.runsettings | ||
unit.tests.x86.runsettings | ||
wap-common.build.post.props | ||
wap-common.build.pre.props |