/* GDK reports GDK_ISO_Left_Tab for SHIFT-TAB */
event.SetDirection( (gdk_event->keyval == GDK_Tab) );
/* CTRL-TAB changes the (parent) window, i.e. switch notebook page */
+ event.SetWindowChange( (gdk_event->state & GDK_CONTROL_MASK) );
event.SetCurrentFocus( win );
if (!page->m_client->GetEventHandler()->ProcessEvent( event ))
{
if (!nb_page) return FALSE;
/* GTK sets GtkNotebook.cur_page to NULL before sending
- the switvh page event */
+ the switch page event */
m_lastSelection = GetSelection();
nb_page->m_client->Destroy();
{
wxGtkNotebookPage* nb_page = GetNotebookPage(page);
- if (!nb_page) return FALSE;
+ wxCHECK_MSG( nb_page, FALSE, _T("wxNotebook::RemovePage: invalid page") );
+ gtk_widget_ref( nb_page->m_client->m_widget );
+ gtk_widget_unrealize( nb_page->m_client->m_widget );
+ gtk_widget_unparent( nb_page->m_client->m_widget );
+
gtk_notebook_remove_page( GTK_NOTEBOOK(m_widget), page );
m_pages.DeleteObject( nb_page );