terminal/src/types
Carlos Zamora 638c6d0291
Ensure automation peer is created regardless of terminal initialization (#10971)
## Summary of the Pull Request
The bug was that Narrator would still read the content of the old tab/pane although a new tab/pane was introduced. This is caused by the automation peer not being created when XAML requests it. Normally, we would prevent the automation peer from being created if the terminal was not fully initialized.

This change allows the automation peer to be created regardless of the terminal being fully initialized by...
- `TermControl`: `_InitializeTerminal` updates the padding (dependent on the `SwapChainPanel`) upon full initialization
- `ControlCore`: initialize the `_renderer` in the ctor so that we can attach the UIA Engine before `ControlCore::Initialize()` is called (dependent on `SwapChainPanel` loading)

As a bonus, this also fixes a locking issue where logging would attempt to get the text range's text and lock twice. The locking fix is very similar to #10937.

## PR Checklist
Closes [MSFT 33353327](https://microsoft.visualstudio.com/OS/_workitems/edit/33353327)

## Validation Steps Performed
- New pane from key binding is announced by Narrator
- New tab from key binding is announced by Narrator
2021-08-18 21:26:43 +00:00
..
inc Add support for XTPUSHSGR / XTPOPSGR (#1978) 2021-02-17 18:31:52 -08:00
lib Add support for XTPUSHSGR / XTPOPSGR (#1978) 2021-02-17 18:31:52 -08:00
ut_types Add support for paste filtering and bracketed paste mode (#9034) 2021-02-08 13:11:01 +00:00
CodepointWidthDetector.cpp Fully regenerate CodepointWidthDetector from Unicode 13.0 (#8035) 2020-10-27 17:36:28 +00:00
colorTable.cpp Separate runtime TerminalSettings from profile-TerminalSettings (#8602) 2021-02-08 22:01:40 +00:00
convert.cpp Move CharToKeyEvents (and friends) into InteractivityBase (#9106) 2021-02-10 17:10:56 -08:00
dirs Switch to v5 UUIDs as profile GUIDs for the default profiles (#913) 2019-05-21 13:29:16 -07:00
Environment.cpp Fix environment block creation (#7401) 2020-08-25 18:16:48 +00:00
FocusEvent.cpp Initial release of the Windows Terminal source code 2019-05-02 15:29:04 -07:00
GlyphWidth.cpp Add GH issue IDs to all the suppress/disables that I left behind as they were a bit too challenging to solve with this giant PR 2019-09-05 11:14:43 -07:00
IBaseData.h Expose Text Attributes to UI Automation (#10336) 2021-07-09 23:21:35 +00:00
IControlAccessibilityInfo.h hook up UIA tree to WPF control (#4548) 2020-02-24 23:17:55 +00:00
IInputEvent.cpp Make loop in IInputEvent more consistent and modern (#4959) 2020-03-17 10:52:33 -07:00
IInputEventStreams.cpp Improve debugging experience of key events (#2872) 2019-09-24 13:50:53 -07:00
IUiaData.h Properly represent block selections in UIA (#4991) 2020-03-18 21:03:51 +00:00
IUiaEventDispatcher.h Attach UiaRenderer and Fire Selection Changed Events (#2989) 2019-12-11 13:52:49 -08:00
IUiaTraceable.h Add more object ID tracing for Accessibility (#5215) 2020-04-03 20:06:47 +00:00
KeyEvent.cpp Fix SA for Visual Studio 16.8 (#8551) 2020-12-11 05:04:30 +00:00
MenuEvent.cpp Initial release of the Windows Terminal source code 2019-05-02 15:29:04 -07:00
ModifierKeyState.cpp Fix a bunch of spelling errors across the project (#4295) 2020-02-10 20:40:01 +00:00
MouseEvent.cpp Initial release of the Windows Terminal source code 2019-05-02 15:29:04 -07:00
precomp.cpp Initial release of the Windows Terminal source code 2019-05-02 15:29:04 -07:00
precomp.h Change backslashes in include statements to forward slashes (#8205) 2020-11-25 21:02:10 +00:00
ScreenInfoUiaProviderBase.cpp Replace basic_string_view<T> with span<const T> (#6921) 2020-07-15 16:40:42 +00:00
ScreenInfoUiaProviderBase.h Cache the size viewport structure inside TextBuffer (#6841) 2020-07-09 11:18:25 +00:00
sgrStack.cpp Add support for XTPUSHSGR / XTPOPSGR (#1978) 2021-02-17 18:31:52 -08:00
sources.inc Add support for XTPUSHSGR / XTPOPSGR (#1978) 2021-02-17 18:31:52 -08:00
TermControlUiaProvider.cpp Properly represent block selections in UIA (#4991) 2020-03-18 21:03:51 +00:00
TermControlUiaProvider.hpp hook up UIA tree to WPF control (#4548) 2020-02-24 23:17:55 +00:00
TermControlUiaTextRange.cpp Fix UIA ScrollIntoView at EndExclusive (#7868) 2020-10-09 20:27:13 +00:00
TermControlUiaTextRange.hpp Change backslashes in include statements to forward slashes (#8205) 2020-11-25 21:02:10 +00:00
ThemeUtils.cpp Use standard 1px window borders on NC Island Window (#3394) 2019-11-04 15:45:40 -08:00
UiaTextRangeBase.cpp Ensure automation peer is created regardless of terminal initialization (#10971) 2021-08-18 21:26:43 +00:00
UiaTextRangeBase.hpp Prevent deadlock in UIA Move API (#10937) 2021-08-13 17:56:34 +00:00
UiaTracing.cpp Expose Text Attributes to UI Automation (#10336) 2021-07-09 23:21:35 +00:00
UiaTracing.h Expose Text Attributes to UI Automation (#10336) 2021-07-09 23:21:35 +00:00
unicode_width_overrides.xml Fully regenerate CodepointWidthDetector from Unicode 13.0 (#8035) 2020-10-27 17:36:28 +00:00
Utf16Parser.cpp C26447,C26440 - is noexcept but can throw or doesn't throw but not noexcept 2019-08-29 15:23:07 -07:00
utils.cpp Add support for paste filtering and bracketed paste mode (#9034) 2021-02-08 13:11:01 +00:00
viewport.cpp Correct horizontal coordinates in viewport overflow test (#8456) 2020-12-03 21:53:16 +00:00
WindowBufferSizeEvent.cpp Initial release of the Windows Terminal source code 2019-05-02 15:29:04 -07:00