Patent ID: 8639684

Claim:
A method, comprising: storing, by a processor of a client device, previously received search queries associated with a user of the client device; receiving, by a processor of the client device and from the user, one or more characters of a search query; presenting, by a processor of the client device and based on receiving the one or more characters of the search query, a listing of available search contexts to the user; receiving, by a processor of the client device, a selection of a search context included in the listing of available search contexts; identifying, by a processor of the client device and based on the search context, a plurality of the previously received search queries that include the one or more characters of the search query; spell-checking, by a processor of the client device, the one or more characters of the search query; determining, by a processor of the client device, one or more modifications to the one or more characters of the search query based on spell-checking the one or more characters of the search query; before search results for the search query are presented for display, presenting, by a processor of the client device and to the user, query refinement options that include the plurality of the previously received search queries and the one or more modifications to the one or more characters of the search query, the one or more modifications to the one or more characters being presented in a section separately from the plurality of the previously received search queries, and the plurality of the previously received search queries being different from the one or more characters of the search query; receiving, by a processor of the client device, at least one additional character of the search query; identifying, by a processor of the client device, a particular query, of the plurality of the previously received search queries, that does not include the at least one additional character of the search query; removing, by a processor of the client device, the particular query from the presented query refinement options, the particular query being removed prior to the search results for the search query being presented for display.