From 92ea7701213be1570801362cb6fca8e4f16e983f Mon Sep 17 00:00:00 2001 From: krzys-h Date: Wed, 18 Mar 2015 21:10:47 +0100 Subject: [PATCH] Better fix for numerical enter (issue #427) Should now work everywhere, not only in the editor. --- src/app/app.cpp | 5 +++++ src/ui/edit.cpp | 2 +- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/src/app/app.cpp b/src/app/app.cpp index a5d17431..8b0e9150 100644 --- a/src/app/app.cpp +++ b/src/app/app.cpp @@ -1044,6 +1044,9 @@ Event CApplication::ProcessSystemEvent() event.key.key = m_private->currentEvent.key.keysym.sym; event.key.unicode = m_private->currentEvent.key.keysym.unicode; event.kmodState = m_private->currentEvent.key.keysym.mod; + + if(event.key.key == KEY(KP_ENTER)) + event.key.key = KEY(RETURN); } else if ( (m_private->currentEvent.type == SDL_MOUSEBUTTONDOWN) || (m_private->currentEvent.type == SDL_MOUSEBUTTONUP) ) @@ -1213,6 +1216,8 @@ Event CApplication::CreateVirtualEvent(const Event& sourceEvent) virtualEvent.type = EVENT_NULL; } + m_input->EventProcess(virtualEvent); + return virtualEvent; } diff --git a/src/ui/edit.cpp b/src/ui/edit.cpp index 59ddef9b..6ac60a34 100644 --- a/src/ui/edit.cpp +++ b/src/ui/edit.cpp @@ -450,7 +450,7 @@ bool CEdit::EventProcess(const Event &event) return true; } - if ( !bControl && ( event.key.key == KEY(RETURN) || event.key.key == KEY(KP_ENTER) ) ) + if ( event.key.key == KEY(RETURN) && !bControl ) { Insert('\n'); SendModifEvent();