# US 9,438,697 B2 · User interface content state synchronization across devices

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 9,438,697 B2
- Document ID: US9438697B2
- Status: Granted
- Kind: B2
- Application number: 13/957,338
- Filed: 2013-08-01
- Published: 2013-11-28
- Granted: 2016-09-06
- Earliest claimed: 2011-08-01
- Assignees: Quickbiz Holdings Limited, Apia
- Applicants: Quickbiz Holdings Limited
- Inventors: Albert Teng; Jack Yuan; Xiao Bin; Richard Li
- Web page: https://patentgrep.com/patent/US9438697B2

## CPC

- H04L 67/1095: Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
- G06F 3/03: Arrangements for converting the position or the displacement of a member into a coded form
- G06F 3/04817: using icons (graphical or visual programming using iconic symbols G06F8/34)
- G06F 3/1423: {controlling a plurality of local displays, e.g. CRT and flat panel display}
- G09G 2354/00: Aspects of interface with display user
- G09G 2370/042: for monitor identification
- G09G 2370/16: Use of wireless transmission of display information
- G09G 2370/22: Detection of presence or absence of input display information or of connection or disconnection of a corresponding information source
- H04L 67/04: specially adapted for terminals or networks with limited capabilities; specially adapted for terminal portability
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G09G: ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION (arrangements for transferring data between digital computers and displays G06F3/14; static indicating arrangements comprising an association of a number of separate sources or light control cells G09F9/00; static indicating arrangements comprising integral associations of a number of light sources H01J, H01K, H10H, H05B33/12; scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission, details thereof H04N1/00)

## Abstract

A computer-implemented method is provided that synchronizes the user interface state of content of a host application on a host device with a client application on a client device. By synchronizing the user interface state across the devices, the client application on the client device displays the user interface of content of the host application. This allows a user of the devices to leverage a larger display screen of the client device to improve the user's experience when viewing content originally displayed on the host device.

## Claims

### Claim 1

A computer-implemented for synchronizing a user interface (UI) state of content of a host application on a host device with a corresponding client application on a client device, the method executed by the host device and comprising:
receiving an event at the host device to synchronize the UI state of content of the host application;
transmitting a request to the client application of the client device to synchronize the UI state of content of the host application responsive to receiving the event;
determining content data of the UI state of the content displayed by the host application; and
transmitting directly to the client device the content data corresponding to the UI state of the content of the host application, wherein the client application is configured to display a UI state of content of the client application that corresponds to the UI state of the content of the host application based on the received data and is configured to process user interactions with the UI state of content of the client application without any processing by the host application of the host device;
receiving a request from the client application to update the UI state of content of the host application based on an event at the client device, the request including content data associated with the event; and
generating an updated UI state of content of the host application based on the content data included in the request.

### Claim 2 (depends on 1)

The computer-implemented method of claim 1, wherein the UI state of content of the client application includes a reconfigured layout of the UI state of content displayed by the host application that is optimized for display on the client device.

### Claim 3 (depends on 1)

The computer-implemented method of claim 1, wherein receiving the event comprises one of receiving a request from the user to synchronize the UI state of content of the host application or generating an event at the host device to synchronize the UI state of content of the host application.

### Claim 4 (depends on 1)

The computer-implemented method of claim 1, further comprising:
pairing the host application with at least one of a plurality of client applications on the client device.

### Claim 5 (depends on 4)

The computer-implemented method of claim 4, wherein pairing the host application comprises:
determining for the host application on the host device, at least an application name for the host application;
updating a list of host applications including UI state synchronization capability on the host device with the name of the host application;
transmitting a request to the client device to identify a client application that corresponds to the host application on the host device;
receiving an indication from the client device whether a client application that corresponds to the host application is installed on the client device; and
pairing the host application and the client application responsive to the indication indicating that the client application corresponding to the host application exists on the client device.

### Claim 6 (depends on 1)

The computer-implemented method of claim 1, wherein the host device and client device comprises any combination of the following pairs of devices: a smart phone, a tablet computer, a desktop computer, television display including a set-top box type device, a laptop computer, a personal data assistant computer, electronic paper display readers, a bi-stable display device, and a global positioning system (GPS) device.

### Claim 7 (depends on 1)

The computer-implemented method of claim 1, wherein the host application is connected to the remote server and the client application obtains content from the remote server via the host application on the host device.

### Claim 8 (depends on 1)

The computer-implemented method of claim 1, wherein the client application includes at least a subset of functionality of the host application.

### Claim 9 (depends on 1)

The computer-implemented method of claim 1 further comprising:
establishing a connection with a communication channel;
identifying client devices connected to the communication channel;
displaying a list of the client devices to the user;
receiving a selection of one or more of the client devices from the list;
displaying a confirmation on the host device to associate the host device with the one or more of the client devices based on the selection;
associating the host device with the one or more of the client devices responsive to receiving the confirmation on the host device from the user; and
connecting the host device with at least one of the client devices.

### Claim 10

A computer program product comprising a non-statutory computer-readable storage medium for synchronizing a user interface (UI) state of content of a host application on a host device with a corresponding client application on a client device, the computer program product comprising executable code, the code when executed by a computer processor of the client device performs steps comprising:
receiving, at the client application, a request from the host application of the host device to synchronize the UI state of content of the host application responsive to an event at the host device;
receiving content data of the UI state of content displayed on the host application responsive to transmitting a confirmation of the request;
displaying, on the client device, a UI state of content of the client application that corresponds to the UI state of content displayed on the host application based on the received data;
receiving an interaction with the UI state of content of the client application on the client device;
processing the interaction with the UI state of content of the client application on the client device without any processing by the host device;
generating an updated UI state of content of the client application based on the processed interaction;
transmitting a request to the host application to update the UI state of content of the host application with the updated UI state of content of the client application based on a user interaction with the updated UI state of content of the client application, the request including content data of the updated UI state of content of the client application.

### Claim 11 (depends on 10)

The computer program product of claim 10, wherein the host device and client device communicate with each other through a wireless communication channel.

### Claim 12 (depends on 10)

The computer program product of claim 10, wherein the client application on the client device is representative of an instance of the host application on the host device.

### Claim 13 (depends on 10)

The computer program product of claim 10, wherein the host device and client device comprises any combination of the following pairs of devices: a smart phone, a tablet computer, a desktop computer, a laptop computer, television display including a set-top box type device, a personal data assistant computer, electronic paper display readers, a bi-stable display device, and a global positioning system (GPS) device.

### Claim 14 (depends on 10)

The computer program product of claim 10, wherein the code when executed by the computer processor of the client device further performs steps comprising:
executing the client application;
transmitting a confirmation of the execution of the client application.

### Claim 15 (depends on 10)

The computer program product of claim 10, wherein processing the interactions comprises at least one of rendering email content on the client device based on the interaction, rendering an image based on the interaction, decoding HTML content based on the interaction, and decoding video content based on the interaction.

### Claim 16

A computer-implemented for synchronizing a user interface (UI) state of content of a host application on a host device with a corresponding client application on a client device, the method executed by the host device and comprising:
receiving a request from the client device to synchronize the UI state of content of the host application;
determining content data of the UI state of the content displayed by the host application;
transmitting directly to the client device the data corresponding to the UI state of the content of the host application, wherein the client application is configured to display a UI state of content of the client application that corresponds to the UI state of the content of the host application based on the received data and is configured to process user interactions with the UI state of content of the client application without any processing by the host device;
receiving a request from the client application to update the UI state of content of the host application based on an event at the client device, the request including content data associated with the event; and
generating an updated UI state of content of the host application based on the content data included in the request.

### Claim 17 (depends on 16)

The computer-implemented method of claim 16, further comprising:
executing the host application responsive to receiving the request from the client device.

### Claim 18

A computer program product comprising a non-statutory computer-readable storage medium for synchronizing a user interface (UI) state of content of a host application on a host device with a corresponding client application on a client device, the computer program product comprising executable code, the code when executed by a computer processor of the client device performs steps comprising:
receiving, at the client application, a request from a user at the client device to synchronize the UI state of content of the host application on the host device;
transmitting a request to the host device to synchronize the UI state of content of the host application responsive to receiving the request from the user;
receiving content data of the UI state of content displayed on the host application responsive to transmitting the request;
displaying, on the client device, a UI state of content of the client application that corresponds to the UI state of content displayed on the host application based on the received data;
receiving an interaction with the UI state of content of the client application on the client device;
processing the interaction with the UI state of content of the client application on the client device without any processing by the host device;
updating the UI state of content of the client application on the client device based on the processed interaction; and
transmitting a request to the host application to synchronize the UI state of content of the host application with the updated UI state of content of the client application based on a user interaction with the updated UI state of content of the client application, the request including content data of the updated UI state of content of the client application.

### Claim 19

A computer-implemented for synchronizing a user interface (UI) state of content of a host application on a host device with a corresponding client application on a client device, the method executed by the host device and comprising:
receiving a phone related event at a host application on the host device;
transmitting a request to the client device to synchronize the UI state of content of the host application responsive to receiving the phone related event;
determining content data of the UI state of the content displayed by the host application, the content data including a notification of the phone related event at the host device; and
transmitting directly to the client device the content data corresponding to the UI state of the content of the host application, wherein the client application is configured to display a UI state of content of the client application that corresponds to the UI state of the content of the host application based on the received data, the UI state of content of the client application including supplemental information associated with the phone related event.

### Claim 20 (depends on 19)

The computer-implemented method of claim 19, wherein the phone related event comprises an incoming call at the host device.

### Claim 21 (depends on 20)

The computer-implemented method of claim 20, wherein the supplemental information includes a text message associated with the caller of the incoming call.
