Skip to content

Commit 7ad767b

Browse files
committed
Allow Ctrl + Esc in-game as well
1 parent b5b944a commit 7ad767b

File tree

3 files changed

+11
-11
lines changed

3 files changed

+11
-11
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ Some can be changed in the key config dialog in the settings tab.
5757
| T | Chat |
5858
| / | Command |
5959
| Esc | Pause menu/abort/exit (pauses only singleplayer game) |
60-
| Ctrl + Esc | Exit directly to main menu when within GUI |
60+
| Ctrl + Esc | Exit directly to main menu from anywhere, bypassing pause menu |
6161
| + | Increase view range |
6262
| - | Decrease view range |
6363
| K | Enable/disable fly mode (needs fly privilege) |

src/client/inputhandler.cpp

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -148,6 +148,10 @@ bool MyEventReceiver::OnEvent(const SEvent &event)
148148
}
149149
fullscreen_is_down = event.KeyInput.PressedDown;
150150
return true;
151+
} else if (keyCode == EscapeKey &&
152+
event.KeyInput.PressedDown && event.KeyInput.Control) {
153+
g_gamecallback->disconnect();
154+
return true;
151155
}
152156
}
153157

@@ -166,6 +170,7 @@ bool MyEventReceiver::OnEvent(const SEvent &event)
166170
// Remember whether each key is down or up
167171
if (event.EventType == irr::EET_KEY_INPUT_EVENT) {
168172
KeyPress keyCode(event.KeyInput);
173+
169174
if (setKeyDown(keyCode, event.KeyInput.PressedDown))
170175
return true;
171176
} else if (g_touchcontrols && event.EventType == irr::EET_TOUCH_INPUT_EVENT) {

src/gui/guiFormSpecMenu.cpp

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -4025,16 +4025,11 @@ bool GUIFormSpecMenu::OnEvent(const SEvent& event)
40254025
{
40264026
if (event.EventType==EET_KEY_INPUT_EVENT) {
40274027
KeyPress kp(event.KeyInput);
4028-
if (event.KeyInput.PressedDown) {
4029-
if (kp == EscapeKey && event.KeyInput.Control) {
4030-
m_text_dst->gotText(L"MenuQuit");
4031-
g_gamecallback->disconnect();
4032-
return true;
4033-
} else if (kp == EscapeKey ||
4034-
(m_client != nullptr && kp == getKeySetting("keymap_inventory"))) {
4035-
tryClose();
4036-
return true;
4037-
}
4028+
if (event.KeyInput.PressedDown && (
4029+
(kp == EscapeKey) ||
4030+
((m_client != NULL) && (kp == getKeySetting("keymap_inventory"))))) {
4031+
tryClose();
4032+
return true;
40384033
}
40394034

40404035
if (m_client != NULL && event.KeyInput.PressedDown &&

0 commit comments

Comments
 (0)