Remove the hardcoded F12 hotkey for screenshots on Windows.

Fixes #17559
This commit is contained in:
Henrik Rydgård
2026-02-11 14:30:37 +01:00
parent dd4a4d34c8
commit 8270fca734
2 changed files with 8 additions and 10 deletions
+8 -9
View File
@@ -65,7 +65,7 @@ namespace MainWindow {
LRESULT CALLBACK AboutDlgProc(HWND, UINT, WPARAM, LPARAM); LRESULT CALLBACK AboutDlgProc(HWND, UINT, WPARAM, LPARAM);
void SetIngameMenuItemStates(HMENU menu, const GlobalUIState state) { void SetIngameMenuItemStates(HMENU menu, const GlobalUIState state) {
bool menuEnableBool = state == UISTATE_INGAME || state == UISTATE_EXCEPTION; const bool menuEnableBool = state == UISTATE_INGAME || state == UISTATE_EXCEPTION;
bool loadStateEnableBool = menuEnableBool; bool loadStateEnableBool = menuEnableBool;
bool saveStateEnableBool = menuEnableBool; bool saveStateEnableBool = menuEnableBool;
@@ -124,10 +124,10 @@ namespace MainWindow {
return nullptr; return nullptr;
} }
static void EmptySubMenu(HMENU menu) { static void ClearSubMenu(HMENU menu) {
int c = GetMenuItemCount(menu); const int count = GetMenuItemCount(menu);
for (int i = 0; i < c; ++i) { for (int i = count - 1; i >= 0; --i) {
RemoveMenu(menu, 0, MF_BYPOSITION); RemoveMenu(menu, i, MF_BYPOSITION);
} }
} }
@@ -135,11 +135,10 @@ namespace MainWindow {
MENUITEMINFO menuInfo{ sizeof(menuInfo), MIIM_STRING }; MENUITEMINFO menuInfo{ sizeof(menuInfo), MIIM_STRING };
std::string retVal; std::string retVal;
if (GetMenuItemInfo(menu, menuID, MF_BYCOMMAND, &menuInfo) != FALSE) { if (GetMenuItemInfo(menu, menuID, MF_BYCOMMAND, &menuInfo) != FALSE) {
wchar_t *buffer = new wchar_t[++menuInfo.cch]; std::vector<wchar_t> buffer(menuInfo.cch + 1);
menuInfo.dwTypeData = buffer; menuInfo.dwTypeData = buffer.data();
GetMenuItemInfo(menu, menuID, MF_BYCOMMAND, &menuInfo); GetMenuItemInfo(menu, menuID, MF_BYCOMMAND, &menuInfo);
retVal = ConvertWStringToUTF8(menuInfo.dwTypeData); // note, this is buffer. retVal = ConvertWStringToUTF8(menuInfo.dwTypeData); // note, this is buffer.
delete[] buffer;
} }
return retVal; return retVal;
@@ -241,7 +240,7 @@ namespace MainWindow {
TranslateMenuItem(menu, ID_DEBUG_LOADSYMFILE); TranslateMenuItem(menu, ID_DEBUG_LOADSYMFILE);
TranslateMenuItem(menu, ID_DEBUG_SAVESYMFILE); TranslateMenuItem(menu, ID_DEBUG_SAVESYMFILE);
TranslateMenuItem(menu, ID_DEBUG_RESETSYMBOLTABLE); TranslateMenuItem(menu, ID_DEBUG_RESETSYMBOLTABLE);
TranslateMenuItem(menu, ID_DEBUG_TAKESCREENSHOT, g_Config.bSystemControls ? L"\tF12" : L""); TranslateMenuItem(menu, ID_DEBUG_TAKESCREENSHOT); // TODO: Automatically show the bound key.
TranslateMenuItem(menu, ID_DEBUG_SAVEFRAMEDUMP); TranslateMenuItem(menu, ID_DEBUG_SAVEFRAMEDUMP);
TranslateMenuItem(menu, ID_DEBUG_SHOWDEBUGSTATISTICS); TranslateMenuItem(menu, ID_DEBUG_SHOWDEBUGSTATISTICS);
TranslateMenuItem(menu, ID_DEBUG_RESTARTGRAPHICS); TranslateMenuItem(menu, ID_DEBUG_RESTARTGRAPHICS);
-1
View File
@@ -69,7 +69,6 @@ BEGIN
VK_F2, ID_FILE_QUICKSAVESTATE_HC, VIRTKEY, NOINVERT VK_F2, ID_FILE_QUICKSAVESTATE_HC, VIRTKEY, NOINVERT
VK_F4, ID_FILE_QUICKLOADSTATE_HC, VIRTKEY, NOINVERT VK_F4, ID_FILE_QUICKLOADSTATE_HC, VIRTKEY, NOINVERT
"1", ID_OPTIONS_RESOLUTIONDUMMY, VIRTKEY, CONTROL, NOINVERT "1", ID_OPTIONS_RESOLUTIONDUMMY, VIRTKEY, CONTROL, NOINVERT
VK_F12, ID_DEBUG_TAKESCREENSHOT, VIRTKEY, NOINVERT
VK_RETURN, ID_OPTIONS_FULLSCREEN, ALT, VIRTKEY, NOINVERT VK_RETURN, ID_OPTIONS_FULLSCREEN, ALT, VIRTKEY, NOINVERT
VK_F11, ID_OPTIONS_FULLSCREEN, VIRTKEY, NOINVERT VK_F11, ID_OPTIONS_FULLSCREEN, VIRTKEY, NOINVERT
END END