Patent application number | Description | Published |
20090083028 | AUTOMATIC CORRECTION OF USER INPUT BASED ON DICTIONARY - Methods, systems, and apparatus, including computer program products, in which input keystroke data can be interpreted by a current mapping and a determination can be made whether the current mapping is valid based upon the characters identified by the mapping and the keystroke data. Invalid mappings can be corrected based upon alternative mapping of the keystroke data. | 03-26-2009 |
20120239834 | AUTOMATIC CORRECTION OF USER INPUT USING TRANSLITERATION - Methods, systems, and apparatus, including computer program products, in which input keystroke data can be interpreted using a current mapping and a determination can be made whether the current mapping is valid based upon the characters identified by the mapping and the keystroke data. Invalid mappings can be corrected by identifying a transliteration of the characters in an alternative language. | 09-20-2012 |
20120290286 | Automatic Correction of User Input Based on Dictionary - Methods, systems, and apparatus, including computer program products, in which input keystroke data can be interpreted using a current mapping and a determination can be made whether the current mapping is valid based upon the characters identified by the mapping and the keystroke data. Invalid mappings can be corrected by identifying a transliteration of the characters in an alternative language. | 11-15-2012 |
Patent application number | Description | Published |
20120198078 | ADAPTIVE NETWORK COMMUNICATION TECHNIQUES - Adaptive network communication techniques are described. In one or more implementations, a determination is made by a client device that a request, which is to be communicated to a content provider via a network, is for content that is accessible via the content provider upon authentication of credentials transmitted to the content provider from the client device. Responsive to the determination, an initial communication is formed by the client device for receipt by the content provider that includes the credentials without waiting for the content provider to request the credentials from the client device. | 08-02-2012 |
20130007371 | Browser Storage Management - Browser storage management techniques are described. In one or more implementations, inputs are received at a computing device that specify maximum aggregate sizes of application and database caches, respectively, of browser storage to be used to locally store data at the computing device. For example, the inputs may be provided using a policy, by an administrator of the computing device, and so on. The maximum aggregate sizes are set of application and database caches, respectively, of browser storage at the computing device to the sizes specified by the inputs. | 01-03-2013 |
20130227272 | Dynamic Selection of Security Protocol - Techniques described herein enable a client to store information indicating whether various hosts (e.g., servers, web domains) support a preferred security protocol, such as a False Start-modified TLS or SSL protocol. The client may then use this information to dynamically determine whether to use the preferred protocol when connecting to a particular host. When the client attempts a handshake to establish a secure connection with a host for the first time, the client does so using the preferred protocol. If the handshake fails, the client locally stores domain or other identifying information for the host so that the client may employ a non-preferred protocol in subsequent connection attempts. Thus, a client may avoid performance degradation caused by attempting a preferred-protocol connection with a host that does not support the preferred protocol. Stored information may include a time stamp enable periodic checks for host capability updates. | 08-29-2013 |
20130227388 | Persistent Storage of Profile Data for Script Compilation - A client application, such as an HTTP client, stores script profile data associated with JavaScript compilation as metadata in a cache, such as an HTTP indexed cache, for a given entry. Accessing the indexed data can be performed much faster without incurring additional disk input/output operations, thus facilitating compilation activities. In addition, an identifier such as the script URL can be used to efficiently enable compilation across websites that commonly utilize the same JavaScript. | 08-29-2013 |
20140013001 | PARALLEL PROBING FOR EFFICIENT PROXY SELECTION IN NETWORKED ENVIRONMENTS - In one or more embodiments, clients in various networks can proactively probe multiple proxies that are returned to the client. Clients can sort the proxies based on various parameters, such as connection time parameters as well as other parameters, and utilize the fastest or one of the fastest proxies available, or select a proxy based on other parameters that indicate the proxy is reliable. In this manner, slow or unreliable proxies can be avoided. | 01-09-2014 |
20140297818 | Parallel and Dynamic Interface Selection - Various embodiments enable parallel querying of multiple network interfaces for communication configuration information. Returned communication configuration information can be used by a client device to enable communication with another computing device. In some embodiments, multiple responses to the parallel queries are received. Alternately or additionally, a response from a network interface can be determined through expiration of a user-configured timeout and/or a protocol configured timeout. Selection of a network interface from the multiple responses can be based, at least in part, on prioritizing the responding network interfaces using an adaptive selection algorithm. | 10-02-2014 |
20140297903 | Reliable Socket Transfer - Various embodiments initialize a communication link associated with data transfer to a connected state between participants in the communication link. In some cases, the communication link is paired with a first Input/Output (I/O) completion port effective to enable the data transfer. Some embodiments disassociate the communication link with the first I/O completion port and re-initialize the communication link while retaining the connected state. Alternately or additionally, the communication link is paired with at least a second I/O completion port. In some cases, the second I/O completion port utilizes an I/O model that differs from an I/O model associated with the first I/O completion port. Alternately or additionally, the communication link can be reconfigured to follow a IO model that does not utilize an IO completion port at all. | 10-02-2014 |
20140298073 | On-Demand Scalable Timer Wheel - Various embodiments enable on-demand scaling of a timer wheel. Some embodiments dynamically start and stop a timer wheel based, at least in part, on whether the timer wheel has any associated active timers. In some cases, the timer wheel is suspended when all associated active timers have been serviced. Alternately or additionally, the timer wheel is re-activated upon associating one or more active timers in need of service to the timer wheel. Various embodiments enable addition and removal of timer(s) to the timer wheel and/or various time slots associated with the timer wheel without using a global lock associated with the timer wheel. | 10-02-2014 |