Abstract:
A computer-implemented method for coordinating documents between computer systems includes identifying, on a computing device, changes made by a user to a document having a model stored on the computing device, with corresponding models stored on a remote client and a server system; generating from the identified changes, one or more mutations that describe the changes and a one or more locations that correspond to positions in the model where the changes are to be provided; receiving one or more mutations from the server system and transforming the generated mutations using the received mutations; and updating the model stored on the computing device using the transformed mutations.
Abstract:
Systems and methods are disclosed herein for collaboratively editing a sub-section of an electronic document through a notification message. The systems and methods may be used for collaboration among multiple users, each user having a respective level of access to the electronic document and contributing content to respective sub-sections of the electronic document. A selection of the electronic document is received from a first user requesting the selection to be updated by a second user. A notification message including the selection of the electronic document is sent to the second user. A modification of the electronic document is then received from the second user in response to the second user modifying the selection of the electronic document from within the notification message. The electronic document is updated with the modification received from the second user.
Abstract:
A distributed spreadsheet application executes at a server and a client in a network. The networked spreadsheet application can generally be used without requiring a user to install any specific spreadsheet software prior to using the application. In one implementation, the spreadsheet application may include a client engine that executes within browser programs of a plurality of client computing devices and server logic. The server logic may be configured to distribute the client engines to the plurality of client computing devices of the spreadsheet application when requested through the browser programs of each of the plurality of client computing devices. The server logic synchronizes a single spreadsheet document that is simultaneously open at the plurality of client computing devices.