diff --git a/src/gtk/listbox.cpp b/src/gtk/listbox.cpp index 783a4396c2..672e6c0b9a 100644 --- a/src/gtk/listbox.cpp +++ b/src/gtk/listbox.cpp @@ -222,9 +222,9 @@ gtk_listbox_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_event, wxLis ret = listbox->GetEventHandler()->ProcessEvent( new_event ); } - if ((gdk_event->keyval == GDK_Return) && listbox->HasFlag(wxLB_SINGLE) && (!ret)) + if ((gdk_event->keyval == GDK_Return) && (!ret)) { - // eat return in single mode + // eat return in all modes ret = TRUE; } @@ -409,6 +409,8 @@ bool wxListBox::Create( wxWindow *parent, wxWindowID id, wxListBox::~wxListBox() { + m_hasVMT = FALSE; + Clear(); } diff --git a/src/gtk1/listbox.cpp b/src/gtk1/listbox.cpp index 783a4396c2..672e6c0b9a 100644 --- a/src/gtk1/listbox.cpp +++ b/src/gtk1/listbox.cpp @@ -222,9 +222,9 @@ gtk_listbox_key_press_callback( GtkWidget *widget, GdkEventKey *gdk_event, wxLis ret = listbox->GetEventHandler()->ProcessEvent( new_event ); } - if ((gdk_event->keyval == GDK_Return) && listbox->HasFlag(wxLB_SINGLE) && (!ret)) + if ((gdk_event->keyval == GDK_Return) && (!ret)) { - // eat return in single mode + // eat return in all modes ret = TRUE; } @@ -409,6 +409,8 @@ bool wxListBox::Create( wxWindow *parent, wxWindowID id, wxListBox::~wxListBox() { + m_hasVMT = FALSE; + Clear(); }