xbmc/xbmc — pull request #2101 by ulion (2013-01-22 07:36:01+00:00)
Title: python interface now can use native keyboard (ios currently) if possible.

I'm glad to see native keyboard feature in Frodo currently, it comes from https://github.com/xbmc/xbmc/pull/1194, but the Keyboard in python interface still wasn't benefit from the feature.
This little commit, just enable use native keyboard feature in python interface if possible.
since the python addon is running in standalone thread other than the main xbmc thread, there is a little adjust need to be set to let the ios keyboard works, which include:
1. in the input callback in the keyboard factory, use async SendGUIMessage instead of direct call win->OnMessage() or windowsmanager->SendMessage().
2. addon instance running without an autopool for object-c by default, then an autopool is added in the ioskeyboard main function.
3. in ApplicationMessenger, the SendGUIMessage method take default window id param and then send 0 to windowsmanager->SendMessage(msg, winid), but the win manager does not handle the winid 0 condition, since SendGUIMessage in the project is not used so many times, I checked and fixed it to redirect to windowsmanager->SendMessage(msg) if winid==0