#include "wx/math.h"
#include <ctype.h>
+// FIXME: Due to a hack we use GtkCombo in here, which is deprecated since gtk2.3.0
+#include <gtk/gtkversion.h>
+#if defined(GTK_DISABLE_DEPRECATED) && GTK_CHECK_VERSION(2,3,0)
+#undef GTK_DISABLE_DEPRECATED
+#endif
+
#include "wx/gtk/private.h"
#include <gdk/gdkprivate.h>
#include <gdk/gdkkeysyms.h>
(void)DoSendFocusEvents(win);
- ret = TRUE;
+ ret = true;
}
// Disable default focus handling for custom windows
// since the default GTK+ handler issues a repaint
if (win->m_wxwindow)
- g_signal_stop_emission_by_name (widget, "focus_in_event");
+ return ret;
- return ret;
+ return false;
}
}
(void)win->GetEventHandler()->ProcessEvent( event );
- ret = TRUE;
+ ret = true;
}
// Disable default focus handling for custom windows
// since the default GTK+ handler issues a repaint
if (win->m_wxwindow)
- g_signal_stop_emission_by_name (widget, "focus_out_event");
+ return ret;
- return ret;
+ return false;
}
}
if (m_focusWidget == NULL)
m_focusWidget = m_widget;
- g_signal_connect (m_focusWidget, "focus_in_event",
+ if (m_wxwindow)
+ {
+ g_signal_connect (m_focusWidget, "focus_in_event",
G_CALLBACK (gtk_window_focus_in_callback), this);
- g_signal_connect (m_focusWidget, "focus_out_event",
- G_CALLBACK (gtk_window_focus_out_callback), this);
+ g_signal_connect (m_focusWidget, "focus_out_event",
+ G_CALLBACK (gtk_window_focus_out_callback), this);
+ }
+ else
+ {
+ g_signal_connect_after (m_focusWidget, "focus_in_event",
+ G_CALLBACK (gtk_window_focus_in_callback), this);
+ g_signal_connect_after (m_focusWidget, "focus_out_event",
+ G_CALLBACK (gtk_window_focus_out_callback), this);
+ }
}
// connect to the various key and mouse handlers