Method and system for concurrent collaborative undo operations in computer application software
AssigneeLiveLoop, Inc.
InventorsDavid Lee Nelson, Erin Rebecca Rhode, Adam Davis Kraft, Amal Kumar Dorai
Life of this patent
Estimating the term…
Abstract
Multi-user real-time collaborative software applications may synchronize data between multiple users or multiple devices. Current aspects describe a method and system for enabling undo operations in collaborative software applications where not all possible actions adhere to the operational transformation properties. Certain aspects herein operate in the absence of the so-called Inverse Property 2 (IP2).
Claims20
A method for implementing an undo operation in a collaborative editing environment comprising the steps of:
- selecting a most recent user operation that has not been previously undone, wherein the selected user operation occurs at one of a plurality of clients connected to a network device associated with the collaborative editing environment;
- recursively condensing all intervening operations to create a condensed server operation;
- and
- applying an inverted version of the selected user operation to undo the most recent user operation, wherein the inverted version of the selected user operation is transformed past the condensed server operation.
A method for implementing a redo operation in a collaborative editing environment comprising the steps of:
- selecting a most recent user undo operation that has not been previously redone, wherein the selected user undo operation is performed on one of a plurality of clients connected to a network device associated with the collaborative editing environment;
- recursively condensing all intervening operations to create a condensed server operation;
- and
- applying an inverted version of the selected user undo operation to redo the selected user undo operation, wherein the inverted version of the selected user undo operation is transformed past the condensed server operation.
A client device for implementing an undo operation in a collaborative editing environment comprising:
- a memory;
- one or more processors configured to execute instructions stored in the memory, the instructions comprising:
- selecting a most recent user operation that has not been previously undone, wherein the selected user operation is performed at one of a plurality of clients connected to a server associated with the collaborative editing environment;
- recursively condensing all intervening operations to create a condensed server operation;
- and
- applying an inverted version of the selected user operation to undo the selected user operation, wherein the inverted version of the selected user operation is transformed past the condensed server operation.
Dependencies are inferred from the claim text.