diff --git a/src/cascadia/TerminalControl/TermControl.cpp b/src/cascadia/TerminalControl/TermControl.cpp index e1ea1d7a031..c19a2f82f74 100644 --- a/src/cascadia/TerminalControl/TermControl.cpp +++ b/src/cascadia/TerminalControl/TermControl.cpp @@ -542,7 +542,13 @@ namespace winrt::Microsoft::Terminal::Control::implementation // (https://docs.microsoft.com/en-us/windows/uwp/design/accessibility/custom-automation-peers) if (const auto& interactivityAutoPeer = _interactivity.OnCreateAutomationPeer()) { - _automationPeer = winrt::make(this, interactivityAutoPeer); + auto margins{ SwapChainPanel().Margin() }; + + Core::Padding padding{ margins.Left, + margins.Top, + margins.Right, + margins.Bottom }; + _automationPeer = winrt::make(this, padding, interactivityAutoPeer); return _automationPeer; } } diff --git a/src/cascadia/TerminalControl/TermControlAutomationPeer.cpp b/src/cascadia/TerminalControl/TermControlAutomationPeer.cpp index 7300644769d..3cfae1cceba 100644 --- a/src/cascadia/TerminalControl/TermControlAutomationPeer.cpp +++ b/src/cascadia/TerminalControl/TermControlAutomationPeer.cpp @@ -31,13 +31,14 @@ namespace XamlAutomation namespace winrt::Microsoft::Terminal::Control::implementation { TermControlAutomationPeer::TermControlAutomationPeer(TermControl* owner, + const Core::Padding padding, Control::InteractivityAutomationPeer impl) : TermControlAutomationPeerT(*owner), // pass owner to FrameworkElementAutomationPeer _termControl{ owner }, _contentAutomationPeer{ impl } { UpdateControlBounds(); - + SetControlPadding(padding); // Listen for UIA signalling events from the implementation. We need to // be the one to actually raise these automation events, so they go // through the UI tree correctly. diff --git a/src/cascadia/TerminalControl/TermControlAutomationPeer.h b/src/cascadia/TerminalControl/TermControlAutomationPeer.h index 0b81ebafec5..e5a2cc7ff84 100644 --- a/src/cascadia/TerminalControl/TermControlAutomationPeer.h +++ b/src/cascadia/TerminalControl/TermControlAutomationPeer.h @@ -43,6 +43,7 @@ namespace winrt::Microsoft::Terminal::Control::implementation { public: TermControlAutomationPeer(Microsoft::Terminal::Control::implementation::TermControl* owner, + const Core::Padding padding, Control::InteractivityAutomationPeer implementation); void UpdateControlBounds();