no real changes, just left over code cleanup from attempts to fix the bug of the patch 1774701

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_8_BRANCH@49626 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin
2007-11-04 17:03:13 +00:00
parent aba999a319
commit 7921598f7f

View File

@@ -1122,26 +1122,24 @@ gtk_window_key_press_callback( GtkWidget *widget,
// win is a control: tab can be propagated up // win is a control: tab can be propagated up
if ( !ret && if ( !ret &&
((gdk_event->keyval == GDK_Tab) || (gdk_event->keyval == GDK_ISO_Left_Tab)) && (gdk_event->keyval == GDK_Tab || gdk_event->keyval == GDK_ISO_Left_Tab)
// VZ: testing for wxTE_PROCESS_TAB shouldn't be done here - the control may
// have this style, yet choose not to process this particular TAB in which
// case TAB must still work as a navigational character
// JS: enabling again to make consistent with other platforms
// (with wxTE_PROCESS_TAB you have to call Navigate to get default
// navigation behaviour)
#if wxUSE_TEXTCTRL #if wxUSE_TEXTCTRL
(! (win->HasFlag(wxTE_PROCESS_TAB) && win->IsKindOf(CLASSINFO(wxTextCtrl)) )) && && !(win->HasFlag(wxTE_PROCESS_TAB) && wxDynamicCast(win, wxTextCtrl))
#endif #endif
win->GetParent() && (win->GetParent()->HasFlag( wxTAB_TRAVERSAL)) ) )
{ {
wxNavigationKeyEvent new_event; wxWindow * const parent = win->GetParent();
new_event.SetEventObject( win->GetParent() ); if ( parent && parent->HasFlag(wxTAB_TRAVERSAL) )
// GDK reports GDK_ISO_Left_Tab for SHIFT-TAB {
new_event.SetDirection( (gdk_event->keyval == GDK_Tab) ); wxNavigationKeyEvent new_event;
// CTRL-TAB changes the (parent) window, i.e. switch notebook page new_event.SetEventObject( parent );
new_event.SetWindowChange( (gdk_event->state & GDK_CONTROL_MASK) ); // GDK reports GDK_ISO_Left_Tab for SHIFT-TAB
new_event.SetCurrentFocus( win ); new_event.SetDirection( (gdk_event->keyval == GDK_Tab) );
ret = win->GetParent()->GetEventHandler()->ProcessEvent( new_event ); // CTRL-TAB changes the (parent) window, i.e. switch notebook page
new_event.SetWindowChange( (gdk_event->state & GDK_CONTROL_MASK) );
new_event.SetCurrentFocus( win );
ret = parent->GetEventHandler()->ProcessEvent( new_event );
}
} }
return ret; return ret;