IP Library Granted Patent US 10,599,742
Granted Patent B2
US 10,599,742 · App. 13/960,541 · Granted Mar 24, 2020

Sharing and consuming web content across multiple devices

Inventors: William Brandon George (Pleasant Grove, UT); Kevin Smith (Lehi, UT)
Assignee: Adobe Inc.
G06F16/958G06F9/4451G06F9/4856G06F16/00G06F16/178H04L67/02H04L67/1095H04L67/14
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,599,742
App. No.
13/960,541
Granted
Mar 24, 2020
Kind
B2
Abstract

Techniques are disclosed for sharing and consuming web content across multiple computing devices. Each device registers with an account on a cloud-based service using a unique identifier. When one of the registered devices requests a web page, a set of rules is processed by the cloud-based service to determine whether the page content should be shared with other registered devices. If the rules are satisfied, the cloud-based service requests and receives the content from a content provider in various formats that are compatible with each of the registered devices. Once all assets associated with the content are received by the cloud-based service, the content is shared by pushing the content out to each registered device in the compatible format. In some cases, the scroll position is adjusted automatically so that the user may resume reading at the same point where she left off with another registered device.

Claims (61)

1. A computer-implemented data processing method comprising:

receiving, at a cloud-based service, from a first device registered with the cloud-based service, a first content request to provide digital content in a first format that is associated with the first device;

in response to receiving the first content request, producing, at the cloud-based service, a second content request to provide the digital content in a second format that is associated with a second device that is registered with the cloud-based service;

sending the first and second content requests from the cloud-based service to a content provider, such that receipt of the first content request at the cloud-based service results in multiple content requests for the digital content being sent from the cloud-based service to the content provider;

receiving, at the cloud-based service, from the content provider, a first version of the digital content formatted in the first format and a second version of the digital content formatted in the second format;

in response to applying a set of one or more predefined rules to the first content request, determining that (a) the first version of the digital content should be transmitted from the cloud-based service to the first device automatically, and (b) the second version of the digital content should not be transmitted from the cloud-based service to the second device automatically, but instead should be queued at the cloud-based service;

in response to receiving the first version of the digital content from the content provider, sending the first version of the digital content from the cloud-based service to the first device;

in response to receiving, at the cloud-based service, a request to send the second version of the digital content to the second device, sending the second version of the digital content from the cloud-based service to the second device;

receiving, from the first device, a plurality of current scroll positions within the first version of the digital content, each of the current scroll positions including a segment of text forming the digital content;

computing an updated scroll position within the second version of the digital content by matching (a) a segment of text associated with a most recent of the plurality of current scroll positions with (b) a portion of text in the second version of the digital content; and

sending the updated scroll position to the second device.

2. The method of claim 1 , further comprising compressing the first version of the digital content prior to sending the first version of the digital content to the first device.

3. The method of claim 1 , further comprising sending, from the cloud-based service to the second device, a list of content items received from the content provider.

4. The method of claim 1 , wherein the first format is different than the second format.

5. The method of claim 1 , further comprising propagating metadata associated with the digital content from the first device to the second device.

6. The method of claim 1 , wherein the set of one or more predefined rules further includes at least one of:

a domain or web site associated with the digital content; and

a layout associated with the digital content.

7. The method of claim 1 , further comprising compressing the first and second versions of the digital content before sending the first and second versions of the digital content to the first and second devices, respectively.

8. The method of claim 1 , further comprising sending, to the second device, a list of content items received from the content provider, wherein the list is sorted based on how recently the listed content items were received from the content provider.

9. The method of claim 1 , further comprising:

sending, to the second device, a list of content items received from the content provider; and

deleting a stale content item from the list based on an age of the stale content item.

10. A data processing system, comprising:

a storage; and

a processor operatively coupled to the storage and configured to:

receive, at a cloud-based service, from a first device registered with the cloud-based service, a first content request to provide digital content in a first format that is associated with the first device;

in response to receiving the first content request, produce, at the cloud-based service, a second content request to provide the digital content in a second format that is associated with a second device that is registered with the cloud-based service;

send the first and second content requests from the cloud-based service to a content provider, such that receipt of the first content request at the cloud-based service results in multiple content requests for the digital content being sent from the cloud-based service to the content provider;

receive, at the cloud-based service, from the content provider, a first version of the digital content formatted in the first format and a second version of the digital content formatted in the second format;

in response to applying a set of one or more predefined rules to the first content request, determine that (a) the first version of the digital content should be transmitted from the cloud-based service to the first device automatically, and (b) the second version of the digital content should not be transmitted from the cloud-based service to the second device automatically, but instead should be queued at the cloud-based service;

in response to receiving the first version of the digital content from the content provider, send the first version of the digital content from the cloud-based service to the first device;

in response to receiving, at the cloud-based service, a request to send the second version of the digital content to the second device, send the second version of the digital content from the cloud-based service to the second device;

receive, from the first device, a plurality of current scroll positions within the first version of the digital content, each of the current scroll positions including a segment of text forming the digital content;

compute an updated scroll position within the second version of the digital content by matching (a) a segment of text associated with a most recent of the plurality of current scroll positions with (b) a portion of text in the second version of the digital content; and

send the updated scroll position to the second device.

11. The system of claim 10 , wherein the processor is further configured to compress the first version of the digital content prior to sending the first version of the digital content to the first device.

12. The system of claim 10 , wherein the processor is further configured to send, from the cloud-based service to the second device, a list of content items received from the content provider.

13. The system of claim 10 , wherein the first format is different than the second format.

14. The system of claim 10 , wherein the processor is further configured to propagate metadata associated with the digital content from the first device to the second device.

15. The system of claim 10 wherein the set of one or more predefined rules further includes at least one of:

a domain or web site associated with the digital content; and

a layout associated with the digital content.

16. A non-transitory computer-readable medium having instructions encoded thereon that when executed by a processor cause the processor to:

receive, at a cloud-based service, from a first device registered with the cloud-based service, a first content request to provide digital content in a first format that is associated with the first device;

in response to receiving the first content request, produce, at the cloud-based service, a second content request to provide the digital content in a second format that is associated with a second device that is registered with the cloud-based service;

send the first and second content requests from the cloud-based service to a content provider, such that receipt of the first content request at the cloud-based service results in multiple content requests for the digital content being sent from the cloud-based service to the content provider;

receive, at the cloud-based service, from the content provider, a first version of the digital content formatted in the first format and a second version of the digital content formatted in the second format;

in response to applying a set of one or more predefined rules to the first content request, determine that (a) the first version of the digital content should be transmitted from the cloud-based service to the first device automatically, and (b) the second version of the digital content should not be transmitted from the cloud-based service to the second device automatically, but instead should be queued at the cloud-based service;

in response to receiving the first version of the digital content from the content provider, send the first version of the digital content from the cloud-based service to the first device;

in response to receiving, at the cloud-based service, a request to send the second version of the digital content to the second device, send the second version of the digital content from the cloud-based service to the second device;

receive, from the first device, a plurality of current scroll positions within the first version of the digital content, each of the current scroll positions including a segment of text forming the digital content;

compute an updated scroll position within the second version of the digital content by matching (a) a segment of text associated with a most recent of the plurality of current scroll positions with (b) a portion of text in the second version of the digital content; and

send the updated scroll position to the second device.

17. The non-transitory computer-readable medium of claim 16 , further comprising instructions that when executed by the processor cause the processor to compress the first version of the digital content prior to sending the first version of the digital content to the first device.

18. The non-transitory computer-readable medium of claim 16 , further comprising instructions that when executed by the processor cause the processor to propagate metadata associated with the digital content from the first device to the second device.

19. The non-transitory computer-readable medium of claim 16 , further comprising instructions that when executed by the processor cause the processor to send, to the second device, a list of content items received from the content provider.

20. The non-transitory computer-readable medium of claim 16 , further comprising instructions that when executed by the processor cause the processor to send, to the second device, a list of content items received from the content provider, wherein the list is sorted based on how recently the listed content items were received from the content provider.

21. The non-transitory computer-readable medium of claim 16 , further comprising instructions that when executed by the processor cause the processor to:

send, to the second device, a list of content items received from the content provider; and

delete a stale content item from the list based on an age of the stale content item.

Assignments (2)
CHANGE OF NAME Recorded Nov 30, 2018
From: ADOBE SYSTEMS INCORPORATED
To: ADOBE INC.
Reel/Frame 047688/0530 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 7, 2013
From: GEORGE, WILLIAM BRANDON; SMITH, KEVIN
To: ADOBE SYSTEMS INCORPORATED
Reel/Frame 030959/0522 →
Continuity (1)
Related Publication 20150046832A1 · Feb 12, 2015