23a19c5818
## Summary of the Pull Request Since the days immemorial of the Terminal, the TermControl has auto-focused itself when it finalizes its layout. This has led to the problem that `wt ; sp ; sp ; sp...` ends up focusing one of these panes at random. This PR fixes this issue by getting rid of the auto-focusing. Panes now manually get focused when created. We manually focus the active pane when a commandline is dispatched. since we're internally tracking "active" separate from "focused", this ends up working as you'd hope. ## References ## PR Checklist * [x] Closes #6586 * [x] I work here * [ ] Tests added/passed * [n/a] Requires documentation to be updated ## Detailed Description of the Pull Request / Additional comments I also had to turn the cursor off by default. Most `TermControl`s would never get the `LostFocus` event, so their cursors would get left `On`, and that's not right. ## Validation Steps Performed I've run the following things a bunch of times to make sure they work: * `wtd sp ; sp ; sp` * `wtd sp ; sp ; sp ; fp -t 0` * `newTab` * `splitPane` * use the command palette to do the above as well Where the result used to be random (cases 1 & 2), the result is exactly what you'd expect now. It doesn't work at all for ``` wtd sp ; sp ; sp ; mf left ``` Presumably because we can't `move-focus` directionally during startup. However, that doesn't work _today_ either, so it's not making it worse. Just highlights that single scenario doesn't work right. |
||
---|---|---|
.. | ||
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 |