Add a second way of detecting whether DefTerm is available (#15040)

This will become meaningful soon.
This commit is contained in:
Dustin L. Howett
2023-03-24 17:21:50 -05:00
committed by GitHub
parent f20cd3a9d3
commit c4d029829a

View File

@@ -1082,7 +1082,21 @@ bool CascadiaSettings::IsDefaultTerminalAvailable() noexcept
DWORDLONG dwlConditionMask = 0;
VER_SET_CONDITION(dwlConditionMask, VER_BUILDNUMBER, VER_GREATER_EQUAL);
return VerifyVersionInfoW(&osver, VER_BUILDNUMBER, dwlConditionMask) != FALSE;
if (VerifyVersionInfoW(&osver, VER_BUILDNUMBER, dwlConditionMask) != FALSE)
{
return true;
}
static bool isOtherwiseAvailable = [] {
wil::unique_hkey key;
const auto lResult = RegOpenKeyExW(HKEY_LOCAL_MACHINE,
L"SOFTWARE\\Microsoft\\SystemSettings\\SettingId\\SystemSettings_Developer_Mode_Setting_DefaultTerminalApp",
0,
KEY_READ,
&key);
return static_cast<bool>(key) && ERROR_SUCCESS == lResult;
}();
return isOtherwiseAvailable;
}
bool CascadiaSettings::IsDefaultTerminalSet() noexcept