Multiline edit control posts WM_CLOSE to its parent window when Escape key is
pressed inside it for some reason. This is unwanted as it totally bypasses our
logic for only closing the dialog when Escape is pressed if there is a
Cancel-like button in it, so suppress this behaviour by not letting the edit
control to get Escape at all.
Closes #12501.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@68351
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
}
}
+ // Default window procedure of multiline edit controls posts WM_CLOSE to
+ // the parent window when it gets Escape key press for some reason, prevent
+ // it from doing this as this resulted in dialog boxes being closed on
+ // Escape even when they shouldn't be (we do handle Escape ourselves
+ // correctly in the situations when it should close them).
+ if ( event.GetKeyCode() == WXK_ESCAPE && IsMultiLine() )
+ return;
+
// no, we didn't process it
event.Skip();
}