Change TextInput to inherit from FocusBehavior and letting it handle all the keyboard binding/releasing.
Ensure that clicking outside a focused widget will remove focus from the widget.
Fix kivycatalog to use focused TextInput method.
Rename focus behavior _win var to prevent name clash with TextInput.
 Make text input focusable by default, even on mobile.
When readonly, don't focus when not on desktop.
Add keyboard_mode to focus behavior.
use allow_copy.
Update textinput keyboard_mode to indicate we also inherit it from focusbehavior.
Remove keyboard_mode from TextInput.
Only unfocus when clicking outside focusable if keyboard mode is not multi.
Add property for unfocusing when clicking outside widget.
Use multi and systemandmulti for unfocus_on_touch default.
Remove circular setting of focus/unfocus. With tab focus cycling, don't select disabled focusable.
Update graphics and ensure win already exists when setting focus directly instead of with touch.
Update focus/unfocus by touch to use on_touch_down and unfocus from window callback instead of binding to each focusable.
Fix focus behavior to return False when focused with touch.
Move input_type to FocusBehavior from TextInput.
Describe mutli user focusing.
Rename _processed_touches to ignored_touch and use it in textinput's bubble/selectors.