case WXK_TAB:
if ( !(m_windowStyle & wxTE_PROCESS_TAB))
{
- if (Navigate(!event.ShiftDown(), event.ControlDown()))
- return;
+ int flags = 0;
+ if (!event.ShiftDown())
+ flags |= wxNavigationKeyEvent::IsForward ;
+ if (event.ControlDown())
+ flags |= wxNavigationKeyEvent::WinChange ;
+ Navigate(flags);
+ return;
+ }
+ else
+ {
+ // This is necessary (don't know why) or the tab will not
+ // be inserted.
+ WriteText(wxT("\t"));
}
break;
}