X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/ff6b424a2e66adde9357ed87eb3a9b9448173806..cd72551c2b6cbf67a4a5caf0ba00ba64e41183b2:/src/x11/app.cpp?ds=sidebyside diff --git a/src/x11/app.cpp b/src/x11/app.cpp index fe76481c95..91b39edbb7 100644 --- a/src/x11/app.cpp +++ b/src/x11/app.cpp @@ -518,6 +518,7 @@ void wxApp::ProcessXEvent(WXEvent* _event) win->GetEventHandler()->ProcessEvent( sizeEvent ); } + break; } #if !wxUSE_NANOX case PropertyNotify: @@ -646,23 +647,32 @@ void wxApp::ProcessXEvent(WXEvent* _event) tlw = tlw->GetParent(); if (tlw && !tlw->IsEnabled()) return; - + if (event->type == ButtonPress) { if ((win != wxWindow::FindFocus()) && win->AcceptsFocus()) { // This might actually be done in wxWindow::SetFocus() - // and not here. + // and not here. TODO. g_prevFocus = wxWindow::FindFocus(); g_nextFocus = win; win->SetFocus(); } } - + +#if !wxUSE_NANOX + if (event->type == LeaveNotify || event->type == EnterNotify) + { + // Throw out NotifyGrab and NotifyUngrab + if (event->xcrossing.mode != NotifyNormal) + return; + } +#endif wxMouseEvent wxevent; wxTranslateMouseEvent(wxevent, win, window, event); win->GetEventHandler()->ProcessEvent( wxevent ); + return; } case FocusIn: