1. A method comprising: receiving a string from an application at a first computing device; generating a first plurality of string predictions based on the received string by the first computing device, wherein each string prediction comprises a string and a confidence value and each string comprises a phrase that has been previously entered in response to the received string; providing one or more of the strings of the first plurality of string predictions according to the associated confidence values by the first computing device; receiving an indication of selection of one of the provided one or more strings by the first computing device; and in response to the indication of selection, providing the selected string as an input to the application by the first computing device.
1. A method comprising: receiving a string from an application at a first computing device; generating a first plurality of string predictions based on the received string by the first computing device, wherein each string prediction comprises a string and a confidence value and each string comprises a phrase that has been previously entered in response to the received string; providing one or more of the strings of the first plurality of string predictions according to the associated confidence values by the first computing device; receiving an indication of selection of one of the provided one or more strings by the first computing device; and in response to the indication of selection, providing the selected string as an input to the application by the first computing device. 2. The method of claim 1 , wherein the first plurality of strings predictions is generated before a character is received from a user of the first computing device.