Interactive Search Results
A method includes receiving search results containing one or more result objects from a search engine, displaying displayed search results in a graphical user interface based on the one or more results objects, receiving a selection of the resize element by a user via a user interface of the user device and modifying the modifiable search result based on the selection of the resize element. Each result object contains data and instructions to render a respective displayed search result. The displayed search results include a modifiable search result displayable in a collapsed viewing mode and an expanded viewing mode. The modifiable search result indicates a third-party application and includes a resize element displayed in relation to the modifiable search result. The resize element is a graphical user interface element that when selected, causes modification of the modifiable search result.
1 . A method comprising:
receiving, by a processing device of a user device, search results containing one or more result objects from a search engine, each result object containing data and instructions to render a respective displayed search result;
displaying, by the processing device, displayed search results in a graphical user interface based on the one or more result objects, the displayed search results including a modifiable search result displayable in a collapsed viewing mode and an expanded viewing mode, the modifiable search result indicating a third-party application and including a resize element displayed in relation to the modifiable search result, the resize element being a graphical user interface element that when selected, causes modification of the modifiable search result;
receiving, by the processing device, a selection of the resize element by a user via a user interface of the user device; and
modifying, by the processing device, the modifiable search result based on the selection of the resize element.
2 . The method of claim 1 , wherein:
displaying the displayed search result comprises rendering and presenting the modifiable search result in the collapsed viewing mode; and
modifying the modifiable search result comprises rendering and presenting the search result in the expanded viewing mode in response to the user selection.
3 . The method of claim 2 , further comprising requesting real-time data from a third party resource associated with the third-party application based on reference data included in the result object used to render the modifiable search result in response to the selection of the resize element.
4 . The method of claim 3 , wherein modifying the modifiable search result comprises:
rendering the modifiable search result in the expanded viewing mode;
binding the real time data to the modifiable search result; and
presenting the modifiable search result with the real-time data.
5 . The method of claim 2 , wherein when the modifiable search result is in the expanded viewing mode, the modifiable search result comprising one or more input elements that receive user input.
6 . The method of claim 5 , further comprising:
receiving, by the processing device, user input in the one or more input elements via the user interface of the user device, each input element respectively receiving a value associated with a parameter type;
obtaining, by the processing device, an access mechanism based on the values input into the one or more input elements, the access mechanism being configured to access a state of the third-party application that depends on the values input into the one or more input elements; and
accessing, by the processing device, the state of the third-party application using the access mechanism.
7 . The method of claim 6 , wherein obtaining the access mechanism comprises:
retrieving a template for generating the access mechanism from the result object; and
generating the access mechanism based on the template and the values input into the one or more input elements.
8 . The method of claim 6 , wherein obtaining the access mechanism comprises:
transmitting a request for the access mechanism to the search engine, the request including the values input into the one or more input elements; and
receiving the access mechanism from the search engine.
9 . The method of claim 1 , wherein the result object comprises a first layout portion that defines a collapsed viewing mode representation of the search result, a second layout portion that defines an expanded viewing mode representation of the search result, and a flag indicating whether to render the search result according to the first layout portion and the second layout portion.
10 . The method of claim 9 , wherein displaying the search result is based on the flag.
11 . A user device comprising:
a user interface device;
a network interface device;
a processing device in communication with the user interface device and the network interface device; and
a non-transitory storage device in communication with the processing device, the storage device storing computer readable instructions that when executed by the processing device cause the processing device to:
receive search results containing one or more result objects from a search engine, each result object containing data and instructions to render a displayed search result;
display, by the processing device, the displayed search results in a graphical user interface displayed based on the one or more result objects, the displayed search results including a modifiable search result displayable in a collapsed viewing mode and an expanded viewing mode, the modifiable search result indicating a third-party application and including a resize element displayed in relation to the modifiable search result, the resize element being a graphical user interface element that when selected, causes modification of the modifiable search result;
receive a user selection of the resize element via the user interface device; and
modify the modifiable search result based on the selection of the resize element,
12 . The user device of claim 11 , wherein:
displaying the displayed search result comprises rendering and presenting the modifiable search result in the collapsed viewing mode; and
modifying the modifiable search result comprises rendering and presenting the search result in the expanded viewing mode in response to the user selection.
13 . The user device of claim 12 , wherein the computer readable instructions, when executed, further cause the processing device to transmit a request for real-time data to a third-party resource associated with the third-party application based on reference data included in the result object used to render the modifiable search result in response to the selection of the resize element.
14 . The user device of claim 13 , wherein modifying the modifiable search result comprises:
rendering the modifiable search result in the expanded viewing mode;
binding the real time data to the modifiable search result; and
presenting the modifiable search result with the real-time data.
15 . The user device of claim 12 , wherein when the modifiable search result is in the expanded viewing mode, the modifiable search result comprises one or more input elements that receive user input.
16 . The user device of claim 15 , wherein the computer readable instructions when executed, further cause the processing device to:
receiving user input in the one or more input elements via the user interface of the user device, each input element respectively receiving a value associated with a parameter type;
obtaining an access mechanism based on the values input into the one or more input elements, the access mechanism being configured to access a state of the third-party application that depends on the values input into the one or more input elements; and
accessing the state of the third-party application using the access mechanism.
17 . The user device of claim 16 , wherein obtaining the access mechanism comprises:
retrieving a template for generating the access mechanism from the result object;
generating the access mechanism based on the template and the values input into the one or more input elements.
18 . The user device of claim 16 , wherein obtaining the access mechanism comprises:
transmitting a request for the access mechanism to the search engine, the request including the values input into the one or more input elements; and
receiving the access mechanism from the search engine.
19 . The user device of claim 11 , wherein the result object comprises a first layout portion that defines a collapsed viewing mode representation of the search result, a second layout portion that defines an expanded viewing mode representation of the search result, and a flag indicating whether to render the search result according to the first layout portion and the second layout portion.
20 . The user device of claim 19 , wherein displaying the search result is based on the flag.