Thank you for the pointers. I did reviewed those files you referenced, but I still don't see where that Ctrl-TAB may be handled.
I was hoping that I could find a workaround by using EVT_CHAR_HOOK, but unfortunately TAB is not registered by that handler either (Ctrl does appear in the handler though), which makes it more than an inconvenience for me.
Here is the list of all the places that appear to handle WXK_TAB that may be relevant to this issue:
- src/aui/auibook.cpp: void wxAuiTabCtrl::OnChar(wxKeyEvent& event)
this is what is expected to handle Ctrl-Tab. Not being hit on OSX
- src/common/wincmn.cpp: bool wxWindowBase::HandleAsNavigationKey(const wxKeyEvent& event)
this is what is supposed to generate EVT_NAVIGATION_KEY. Not generated on OSX
- src/osx/carbon/app.cpp: bool wxApp::MacSendCharEvent( wxWindow* focus , long keymessage , long modifiers , long when , wxChar uniChar )
has handling of WXK_TAB, but inside #if wxOSX_USE_CARBON and I'm using cocoa
The last fragment looks like the code that would jump between controls on Ctrl-Tab (which is what I see on OSX), but I don't understand why it would execute if it's behind wxOSX_USE_CARBON check.
I'll try to put some debugging there to figure out what may be going on, but any pointers on where to look for this Ctrl-Tab handling would be appreciated. Thank you.
Paul.