×

Device, Method, and Graphical User Interface for Collaborative Editing in Documents

  • US 20160357496A1
  • Filed: 09/30/2015
  • Published: 12/08/2016
  • Est. Priority Date: 06/07/2015
  • Status: Active Grant
First Claim
Patent Images

1. A method of supporting collaborative editing, including:

  • at a first device of multiple collaborating devices, wherein the first device comprises one or more processors, memory, and a display;

    maintaining a directed acyclic graph to represent content collaboratively edited by the first device and one or more second devices of the multiple collaborating devices, wherein the directed acyclic graph includes a plurality of nodes each representing a respective content object that is created or edited by one or more of the multiple collaborating devices, wherein each node is connected to at least one neighboring node by a respective directed edge in accordance with a relative positional order of the respective content objects represented by the node and the at least one neighboring node, wherein at least a first node of the plurality of nodes represents a textual content object and at least a second node of the plurality of nodes represents a sketch content object, and wherein each node representing a corresponding sketch content object is associated with a respective command sequence used to create internal content of the corresponding sketch content object;

    during a respective synchronization period, receiving one or more editing inputs from one or more devices of the multiple collaborating devices;

    modifying the directed acyclic graph based on relationships between the editing inputs and existing content objects embodied in the directed acyclic graph;

    traversing the directed acyclic graph in accordance with a predetermined ordering rule to obtain an object sequence;

    determining whether the one or more editing inputs modifies an existing sketch content object represented in the directed acyclic graph; and

    in accordance with a determination that a first editing input of the one or more editing inputs modifies a first existing sketch content object represented in the directed acyclic graph, updating a command sequence associated with the first existing sketch content object by merging each individual drawing command included the first editing input with the command sequence associated with the first existing sketch content object.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×