summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/guiKeyChangeMenu.cpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/guiKeyChangeMenu.cpp b/src/guiKeyChangeMenu.cpp
index 008ac8c5d..261592394 100644
--- a/src/guiKeyChangeMenu.cpp
+++ b/src/guiKeyChangeMenu.cpp
@@ -269,8 +269,7 @@ bool GUIKeyChangeMenu::resetMenu()
bool GUIKeyChangeMenu::OnEvent(const SEvent& event)
{
if (event.EventType == EET_KEY_INPUT_EVENT && activeKey >= 0
- && event.KeyInput.PressedDown)
- {
+ && event.KeyInput.PressedDown) {
bool prefer_character = shift_down;
KeyPress kp(event.KeyInput, prefer_character);
@@ -328,9 +327,12 @@ bool GUIKeyChangeMenu::OnEvent(const SEvent& event)
return true;
}
}
- }
- if (event.EventType == EET_GUI_EVENT)
- {
+ } else if (event.EventType == EET_KEY_INPUT_EVENT && activeKey < 0
+ && event.KeyInput.PressedDown
+ && event.KeyInput.Key == irr::KEY_ESCAPE) {
+ quitMenu();
+ return true;
+ } else if (event.EventType == EET_GUI_EVENT) {
if (event.GUIEvent.EventType == gui::EGET_ELEMENT_FOCUS_LOST
&& isVisible())
{