xbmc/xbmc — pull request #1194 by Memphiz (2012-07-21 21:43:10+00:00)
Title: Refacor of our GUI Keyboard for allowing native onscreen keyboards

This splits our GUIDialogKeyboard.cpp approach into some classes for allowing the implementation of native onscreen keyboards (mostly interesting for touch devices).

Therefore:

- add guilib/GUIKeyboard.cpp/.h - this is the baseclass each onscreen keyboard has to implement
- move the GUIDialog/Keyboard out of dialogs/GUIDialogKeyboard.cpp/.h to dialogs/GUIDialogKeyboardGeneric.cpp/.h
- move the rest (all the static ShowAndGetInput methods) to guilib/GUIKeyboardFactory.cpp/.h
- make all keyboard users use the CGUIKeyboardFactory class for accessing keyboard functions
- add implementation for native onscreen keyboard for ios

Well i know its not bisectable - but i tried hard and didn't come up with a solution because of the trickyness :).

I have tested it on osx, linux, windows, ios and atv2. Behaviour is same like before (except ios which now has a fancy native on screen keyboard :D).

@jmarshallnz its you again i guess (sounds familiar ha? ;) ). If you remember you proposed something like this some months ago. I hope i've hit your taste...