IP Library Granted Patent US 11,741,300
Granted Patent B2
US 11,741,300 · App. 15/802,458 · Granted Aug 29, 2023

Embedded spreadsheet data implementation and synchronization

Inventors: Gabriel Silk (San Francisco, CA); Andrew Udell (San Francisco, CA); Arjun Mahadevan (San Francisco, CA)
Assignee: DROPBOX, INC.
G06F40/18G06F16/23G06F16/27G06F16/93
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 11,741,300
App. No.
15/802,458
Granted
Aug 29, 2023
Kind
B2
Abstract

A collaborative content management system allows for the mutual-synchronization of content within a spreadsheet and within a document in which a set of spreadsheet cells are embedded. When a user modifies the embedded set of cells, the spreadsheet is updated to reflect the modification. A set of tasks, for instance each associated with descriptive text and one or more interactive elements, can be incorporated into a set of spreadsheet cells such that a user can interact with the tasks. A data value from a spreadsheet cell can be embedded into a document such that when the spreadsheet is updated and the data value changes, the corresponding embedded data value within the document can be changed. Spreadsheets can also include comments that can be navigated using a movable interface element that changes position within the spreadsheet based on a location of a set of cells corresponding to a comment.

Claims (37)

1. A method comprising:

receiving, by a collaborative content management system from a first device, a request to embed a first data value included within a first cell of a spreadsheet in a first file at a position within a second file different from the first file, wherein the first file and the second file are collaborative content items accessible by the first device and a second device and stored by the collaborative content management system at respective storage locations of a remote storage system, the respective storage locations identified by respective content paths within a content directory;

responsive to receiving the request, embedding, by the collaborative content management system, a pointer to the first data value without including a structure of the first cell in the second file, the pointer embedded at the position within the second file identifying the spreadsheet and the first cell, the pointer instructing that when an edit is made in the first file that modifies the first data value, the second file be updated to incorporate the first data value;

causing display, by the collaborative content management system, of the second file within an interface of a device display of the first device such that the first data value is displayed at the position within the second file;

receiving, at a given time, by the collaborative content management system via the first file, an edit by the second device to one or more cells included within the first file, the edit to the one or more cells modifying the first data value of the first cell to a second data value; and

responsive to receiving the edit, dynamically updating, by the collaborative content management system and based on the pointer, the second file by replacing the first data value included within the second file with the second data value, the update to the second file occurring regardless of whether the second file is displayed at the given time.

2. The method of claim 1 , wherein a formula is associated with the first cell and the one or more cells such that the second data value is based on data values within the one or more cells and the formula.

3. The method of claim 2 , wherein the formula comprises a summation of the data values within the one or more cells, and wherein the second data value comprises a result of the summation of the data values.

4. The method of claim 2 , wherein the formula comprises an extrapolation formula, and wherein the second data value is an extrapolation based on the data values within the one or more cells.

5. The method of claim 2 , wherein the formula comprises a count formula, wherein the data values within the one or more cells comprise Boolean values, and wherein the second data value comprises one or more of a count of “0” values within the data values or a count of “1” values within the data values.

6. The method of claim 1 , wherein the one or more cells include the first cell, and wherein the edit to the one or more cells includes an edit changing the first data value within the first cell to the second data value.

7. The method of claim 1 , wherein the received request to embed the first data value at the position within the second file includes a selection of the location within the second file for the first data value to be displayed.

8. The method of claim 1 , wherein the second file is updated in substantially real-time in response to receiving the edit to the one or more cells included within the spreadsheet in the first file.

9. The method of claim 1 , wherein the first data value is displayed within the second file in response to an owner of the device display having permission to view the spreadsheet in the first file, and wherein the first data value is hidden in response to the owner of the device display not having permission to view the spreadsheet in the first file.

10. A system comprising:

one or more processors; and

a non-transitory computer-readable storage medium storing executable computer instructions that, when executed by the one or more processors, cause the one or more processors to perform steps comprising:

receiving, from a first device, a request to embed a first data value included within a first cell of a spreadsheet in a first file at a position within a second file different from the first file, wherein the first file and the second file are collaborative content items accessible by the first device and a second device and stored by a collaborative content management system at respective storage locations of a remote storage system, the respective storage locations identified by respective content paths within a content directory;

responsive to receiving the request, embedding a pointer to the first data value without including a structure of the first cell in the second file, the pointer embedded at the position within the second file identifying the spreadsheet and the first cell, the pointer instructing that when an edit is made in the first file that modifies the first data value, the second file be updated to incorporate the first data value;

causing display of the second file within an interface of a device display of the first device such that the first data value is displayed at the position within the second file;

receiving, at a given time via the first file, an edit by the second device to one or more cells included within the first file, the edit to the one or more cells modifying the first data value of the first cell to a second data value; and

responsive to receiving the edit, dynamically updating, based on the pointer, the second file by replacing the first data value included within the second file with the second data value, the update to the second file occurring regardless of whether the second file is displayed at the given time.

11. The system of claim 10 , wherein a formula is associated with the first cell and the one or more cells such that the second data value is based on data values within the one or more cells and the formula.

12. A non-transitory computer-readable storage medium storing executable computer instructions that, when executed by one or more processors, cause the one or more processors to perform steps comprising:

receiving, from a first device, a request to embed a first data value included within a first cell of a spreadsheet in a first file at a position within a second file different from the first file, wherein the first file and the second file are collaborative content items accessible by the first device and a second device and stored by a collaborative content management system at respective storage locations of a remote storage system, the respective storage locations identified by respective content paths within a content directory;

responsive to receiving the request, embedding to a pointer the first data value without including a structure of the first cell in the second file, the pointer embedded at the position within the second file identifying the spreadsheet and the first cell, the pointer instructing that when an edit is made in the first file that modifies the first data value, the second file be updated to incorporate the first data value;

causing display of the second file within an interface of a device display of the first device such that the first data value is displayed at the position within the second file;

receiving, at a given time via the first file, an edit by the second device to one or more cells included within the first file, the edit to the one or more cells modifying the first data value of the first cell to a second data value; and

responsive to receiving the edit, dynamically updating, based on the pointer, the second file by replacing the first data value included within the second file with the second data value, the update to the second file occurring regardless of whether the second file is displayed at the given time.

13. The computer-readable storage medium of claim 12 , wherein a formula is associated with the first cell and the one or more cells such that the second data value is based on data values within the one or more cells and the formula.

14. The computer-readable storage medium of claim 12 , wherein the second file comprises a word processing document.

15. The computer-readable storage medium of claim 14 , wherein the word processing document includes a block of text, and wherein the first data value corresponds to text included within the block of text.

16. The computer-readable storage medium of claim 15 , wherein the block of text describes the first data value.

17. The computer-readable storage medium of claim 12 , wherein the received request to embed the first data value at the position within the second file includes a selection of the location within the second file for the first data value to be displayed.

18. The method of claim 1 , wherein the collaborative content items are accessible by the first device and the second device via respective content pointers provided by the collaborative content management system.

19. The method of claim 1 , wherein the collaborative content management system manages the collaborative content items using the content directory, each entry of the content directory comprising a content path and a content pointer identifying a collaborative content item.

20. The method of claim 1 , wherein the structure of the first cell includes one or more of cell boundaries or cell formatting.

Assignments (3)
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: DROPBOX, INC.
Reel/Frame 069635/0332 →
SECURITY INTEREST Recorded Dec 12, 2024
From: DROPBOX, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 069604/0611 →
PATENT SECURITY AGREEMENT Recorded Mar 10, 2021
From: DROPBOX, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 055670/0219 →