Adaptive predictive text generation and the reactive keyboard | Synapse