Collaborative Cursors in a Hosted Word Processor
First Claim
1. A computer-implemented collaborative editing method comprising:
- receiving communications from a plurality of client devices that are accessing a common electronic document to perform collaborative editing during a common session, each communication including information indicating changes made to the electronic document by a respective user and including information indicating a location of a cursor in the electronic document in which the respective user is active;
updating a master copy of a document model for the electronic document based on the information in the communications indicating changes made to the electronic document; and
transmitting to each particular one of the client devices information indicative of modifications made to the master copy of the document model based on changes to the electronic document made by one or more users of the client devices other than the particular client device, and transmitting to each particular one of the client devices information indicative of the locations in the electronic document of the cursors for the one or more users of the other client devices.
2 Assignments
0 Petitions
Accused Products
Abstract
A computer-implemented collaborative editing method includes receiving input from a user of a browser-based document editing application on a document displayed by the application; identifying a current location in the document for a cursor of a first user executing the application; receiving from a central server system data that reflects changes made to the document by one or more users other than the first user and current positions in the document of cursors for the one or more other user; updating a document model stored on a computing device that is executing the browser-based application and rendering at least a portion of the model to the browser; and rendering the current positions of the cursors for the one or more other users to the browser.
111 Citations
22 Claims
-
1. A computer-implemented collaborative editing method comprising:
-
receiving communications from a plurality of client devices that are accessing a common electronic document to perform collaborative editing during a common session, each communication including information indicating changes made to the electronic document by a respective user and including information indicating a location of a cursor in the electronic document in which the respective user is active; updating a master copy of a document model for the electronic document based on the information in the communications indicating changes made to the electronic document; and transmitting to each particular one of the client devices information indicative of modifications made to the master copy of the document model based on changes to the electronic document made by one or more users of the client devices other than the particular client device, and transmitting to each particular one of the client devices information indicative of the locations in the electronic document of the cursors for the one or more users of the other client devices. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer-implemented collaborative editing system comprising:
-
an interface to receive communications from a plurality of client devices that are accessing a common electronic document to perform collaborative editing during a common session, each communication including information indicating changes made to the electronic document by a respective user and including information indicating a location of a cursor in the electronic document in which the respective user is active; a data store to store a master copy of a document model for the electronic document; an active model manager to update the master copy of the document model for the electronic document based on the information in the communications indicating changes made to the electronic document; and collaboration logic to provide to each particular one of the client devices information indicative of modifications made to the master copy of the document model based on changes to the electronic document made by one or more users of the client devices other than the particular client device and information indicative of the locations in the electronic document of the cursors for the one or more users of the other client devices. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. One or more tangible computer-readable storage media storing instructions that, when executed by one or more computers, perform operations comprising:
-
updating a master copy of a document model for an electronic document in response to receiving communications from a plurality of client devices that are, accessing a common electronic document to perform collaborative editing during a common session, each communication including information indicating changes made to the electronic document by a respective user and including information indicating a location of a cursor in the electronic document in which the respective user is active; and transmitting to each particular one of the client devices information indicative of modifications made to the master copy of the document model based on changes to the electronic document made by one or more users of the client devices other than the particular client device, and transmitting to each particular one of the client devices information indicative of the locations in the electronic document of the cursors for the one or more users of the other client devices. - View Dependent Claims (14, 15, 16, 17, 18)
-
-
19. A client device comprising:
-
a web-browser for executing a browser-based document editing application; a user interface to receive input from a first user of the browser-based editing application, wherein the input is indicative of changes to be made to an electronic document displayed by the application; a controller to intercept the input received through the interface, determine a location in the document for a cursor based on the input, and pass information to a central server system, wherein the information indicates changes made to the electronic document by the first user and indicates the location of the cursor in the electronic document in which the first user is active, the controller further being arranged to receive from the central server system data that reflects changes made to the document by one or more users other than the first user and current positions in the electronic document of cursors for the one or more other users, to update a document model stored on the client device executing the browser-based document editing application and render at least a portion of the model to the browser, and to render the current positions of the cursors for the one or more other users to the browser. - View Dependent Claims (20, 21, 22)
-
Specification