diff --git a/src/cascadia/TerminalApp/TerminalPage.cpp b/src/cascadia/TerminalApp/TerminalPage.cpp index 30fcab0cc5b..05ed799d3cf 100644 --- a/src/cascadia/TerminalApp/TerminalPage.cpp +++ b/src/cascadia/TerminalApp/TerminalPage.cpp @@ -2431,10 +2431,7 @@ namespace winrt::TerminalApp::implementation TermControl term{ settings.DefaultSettings(), settings.UnfocusedSettings(), connection }; // GH#12515: ConPTY assumes it's hidden at the start. If we're not, let it know now. - if (_visible) - { - term.WindowVisibilityChanged(_visible); - } + term.WindowVisibilityChanged(_visible); if (_hostingHwnd.has_value()) { diff --git a/src/cascadia/TerminalConnection/ConptyConnection.cpp b/src/cascadia/TerminalConnection/ConptyConnection.cpp index 3a5996b763a..caf2d8e9016 100644 --- a/src/cascadia/TerminalConnection/ConptyConnection.cpp +++ b/src/cascadia/TerminalConnection/ConptyConnection.cpp @@ -311,18 +311,13 @@ namespace winrt::Microsoft::Terminal::TerminalConnection::implementation THROW_IF_FAILED(_CreatePseudoConsoleAndPipes(dimensions, flags, &_inPipe, &_outPipe, &_hPC)); + // GH#12515: The conpty assumes it's hidden at the start. If we're visible, let it know now. + THROW_IF_FAILED(ConptyShowHidePseudoConsole(_hPC.get(), _initialVisibility)); if (_initialParentHwnd != 0) { THROW_IF_FAILED(ConptyReparentPseudoConsole(_hPC.get(), reinterpret_cast(_initialParentHwnd))); } - // GH#12515: The conpty assumes it's hidden at the start. If we're visible, let it know now. - if (_initialVisibility) - { - THROW_IF_FAILED(ConptyShowHidePseudoConsole(_hPC.get(), _initialVisibility)); - } - // THROW_IF_FAILED(ConptyShowHidePseudoConsole(_hPC.get(), _initialVisibility)); - THROW_IF_FAILED(_LaunchAttachedClient()); } // But if it was an inbound handoff... attempt to synchronize the size of it with what our connection diff --git a/src/cascadia/TerminalConnection/ConptyConnection.h b/src/cascadia/TerminalConnection/ConptyConnection.h index 5e20b11d4bc..d2bfe4736da 100644 --- a/src/cascadia/TerminalConnection/ConptyConnection.h +++ b/src/cascadia/TerminalConnection/ConptyConnection.h @@ -73,7 +73,7 @@ namespace winrt::Microsoft::Terminal::TerminalConnection::implementation hstring _commandline{}; hstring _startingDirectory{}; hstring _startingTitle{}; - bool _initialVisibility{ true }; + bool _initialVisibility{ false }; Windows::Foundation::Collections::ValueSet _environment{ nullptr }; guid _guid{}; // A unique session identifier for connected client hstring _clientName{}; // The name of the process hosted by this ConPTY connection (as of launch).