Efficient copy paste in a collaborative spreadsheet

    公开(公告)号:US11244105B2

    公开(公告)日:2022-02-08

    申请号:US14560954

    申请日:2014-12-04

    Applicant: Google Inc.

    Abstract: Systems and methods are disclosed herein for editing a collaborative spreadsheets hosted on a server. Multiple users may edit the spreadsheet, resulting in situations of intersecting or conflicting edits. A change provided by one user may intersect the cells affected by a change provided by another user. In these cases, one user's change is transformed against the other user's change. In this manner, the conflict is resolved and both changes can be applied to the spreadsheet. Each user device may perform these transforms, and the server may also perform these transforms. This can result in transmission of a reduced volume of data over a network between the devices and the server, in comparison with other methods.

    Dynamically sizing chunks in a partially loaded spreadsheet model
    2.
    发明授权
    Dynamically sizing chunks in a partially loaded spreadsheet model 有权
    在部分加载的电子表格模型中动态调整大小

    公开(公告)号:US09462037B2

    公开(公告)日:2016-10-04

    申请号:US13735377

    申请日:2013-01-07

    Applicant: Google Inc.

    CPC classification number: H04L67/06 G06F17/2288 G06F17/246 H04L67/1002

    Abstract: A method for managing a dynamically-sized chunked spreadsheet model on a server includes creating, on the server, a plurality of chunks representing a spreadsheet, where a first chunk in the plurality of chunks includes a first range of cells in the spreadsheet. The method further includes storing on the server a mutation log for the spreadsheet, and receiving a first plurality of mutations from a plurality of client computers, where the first plurality of mutations are stored in the mutation log. The method further includes applying the first plurality of mutations to the first chunk in response to a first client computer in the plurality of client computers requesting the first range of cells, and sending the first chunk to the first client computer.

    Abstract translation: 用于在服务器上管理动态大小的分组电子表格模型的方法包括在服务器上创建表示电子表格的多个组块,其中多个组块中的第一组块包括电子表格中的单元格的第一范围。 该方法还包括在服务器上存储电子表格的突变日志,以及从多个客户端计算机接收第一个多个突变,其中第一个多个突变存储在突变日志中。 所述方法还包括响应于所述多个客户端计算机中的第一客户端计算机应用所述第一组块来请求所述第一范围的单元,以及将所述第一组块发送到所述第一客户端计算机。

    Performing server-side and client-side operations on spreadsheets

    公开(公告)号:US09875226B1

    公开(公告)日:2018-01-23

    申请号:US14135854

    申请日:2013-12-20

    Applicant: Google Inc.

    CPC classification number: G06F17/246

    Abstract: A method for obtaining server-side and client-side calculations performed on a spreadsheet includes loading, on a client computer, a spreadsheet stored on a server and receiving an input from a user on the client computer, where the input causes a calculation of one or more cell values in the spreadsheet. The client computer performs the calculation of the one or more cell values on the client computer and sends the input to the server to perform the calculation of the one or more cell values on the server. The client computer then displays in the spreadsheet a result of the calculation of the one or more cell values to the user, where the result of the calculation is taken from the quicker of the calculation performed on the client computer or the calculation performed on the server.

    SYSTEMS AND METHODS FOR MUTATIONS AND OPERATIONAL TRANSFORMS IN A COLLABORATIVE SPREADSHEET ENVIRONMENT

    公开(公告)号:US20150199328A1

    公开(公告)日:2015-07-16

    申请号:US13915372

    申请日:2013-06-11

    Applicant: Google Inc.

    CPC classification number: G06F17/246 G06Q10/101

    Abstract: Mutations representing spreadsheet edit operations are received at a server from client computers of collaborators and also at a collaborator's client computer from other collaborators and the server. Different mutations may conflict, i.e., provide contradictory instructions on how a spreadsheet is to be edited. Techniques for representing sort operations, cut-and-paste operations, and operations to change cell properties as mutations, and operational transform techniques that can be used to resolve conflicts between such mutations, are disclosed herein. Further disclosed herein are techniques for identifying and processing computationally intensive types of mutations in a calculation thread which operates asynchronously with respect to a UI thread at a collaborator's client computer. The processing may include performing an operational transform on results of the calculation thread based on results obtained in the UI thread.

    SYSTEMS AND METHODS FOR MUTATIONS AND OPERATIONAL TRANSFORMS IN A COLLABORATIVE SPREADSHEET ENVIRONMENT
    5.
    发明申请
    SYSTEMS AND METHODS FOR MUTATIONS AND OPERATIONAL TRANSFORMS IN A COLLABORATIVE SPREADSHEET ENVIRONMENT 有权
    协同扩散环境中的突变和运行变换的系统和方法

    公开(公告)号:US20150199326A1

    公开(公告)日:2015-07-16

    申请号:US13779379

    申请日:2013-02-27

    Applicant: GOOGLE INC.

    CPC classification number: G06F17/246 G06Q10/101

    Abstract: Mutations representing spreadsheet edit operations are received at a server from client computers of collaborators and also at a collaborator's client computer from other collaborators and the server. Different mutations may conflict, i.e., provide contradictory instructions on how a spreadsheet is to be edited. Techniques for representing sort operations, cut-and-paste operations, and operations to change cell properties as mutations, and operational transform techniques that can be used to resolve conflicts between such mutations, are disclosed herein. Further disclosed herein are techniques for identifying and processing computationally intensive types of mutations in a calculation thread which operates asynchronously with respect to a UI thread at a collaborator's client computer. The processing may include performing an operational transform on results of the calculation thread based on results obtained in the UI thread.

    Abstract translation: 代表电子表格编辑操作的突变从服务器从合作者的客户端计算机接收,并在协作者的客户端计算机从其他协作者和服务器接收。 不同的突变可能会发生冲突,即就如何编辑电子表格提供矛盾的指示。 本文公开了用于表示分类操作,剪切和粘贴操作以及将细胞特性改变为突变的操作的技术以及可用于解决这种突变之间的冲突的操作变换技术。 本文进一步公开的是用于识别和处理在协作者的客户端计算机上相对于UI线程异步操作的计算线程中的计算密集类型的突变的技术。 该处理可以包括基于在UI线程中获得的结果对计算线程的结果进行操作变换。

    RESOLVING MUTATIONS IN A PARTIALLY-LOADED SPREADSHEET MODEL
    6.
    发明申请
    RESOLVING MUTATIONS IN A PARTIALLY-LOADED SPREADSHEET MODEL 有权
    在部分装载的分布式模型中解决突变

    公开(公告)号:US20150193734A1

    公开(公告)日:2015-07-09

    申请号:US13741691

    申请日:2013-01-15

    Applicant: Google Inc.

    CPC classification number: G06Q10/10 G06F17/246

    Abstract: A method of resolving mutations in a partially-loaded spreadsheet model includes loading onto a client computer a first chunk of a spreadsheet stored on a server, where the first chunk represents a first range of cells in the spreadsheet, and requesting a second chunk of the spreadsheet from the server, where the second chunk represents a second range of cells in the spreadsheet. The method further includes storing a plurality of pending user mutations on the client computer generated by a user on the client computer, where the plurality of pending user mutations are applied to the first chunk, and receiving from the server a plurality of collaborator mutations and the second chunk. The method further includes transforming the plurality of pending user mutations against the plurality of collaborator mutations, and applying the transformed plurality of pending user mutations to the second chunk.

    Abstract translation: 解决部分负载的电子表格模型中的突变的方法包括将存储在服务器上的电子表格的第一块加载到客户端计算机上,其中第一组块表示电子表格中的第一单元格范围,并且请求第二组 来自服务器的电子表格,其中第二个组块表示电子表格中的第二个单元格范围。 该方法还包括在由客户计算机上的用户生成的客户端计算机上存储多个未决用户突变,其中将多个未决用户突变应用于第一块,以及从服务器接收多个协作者突变和 第二块 所述方法还包括将所述多个未决用户突变相对于所述多个协作者突变进行变换,以及将经变换的多个未决用户突变应用于所述第二块。

    Operational transformations proxy for thin clients

    公开(公告)号:US10956667B2

    公开(公告)日:2021-03-23

    申请号:US13736034

    申请日:2013-01-07

    Applicant: Google Inc.

    Abstract: Systems and methods are disclosed herein for an operational transformation proxy for a thin client. The systems and methods may be used for collaboratively editing an electronic object such as an electronic document from a thin client. A first request is received at an OT proxy from the thin client to make a first change to a first version of the electronic object. A first mutation, including the first change to the first version of the electronic document, is created. A second mutation is received at the OT proxy from the server. At the OT proxy, the second mutation of the electronic object is converted into a third mutation of the electronic object based on the first mutation.

    SYSTEMS AND METHODS FOR MUTATIONS AND OPERATIONAL TRANSFORMS IN A COLLABORATIVE SPREADSHEET ENVIRONMENT

    公开(公告)号:US20150199327A1

    公开(公告)日:2015-07-16

    申请号:US13909655

    申请日:2013-06-04

    Applicant: Google Inc.

    CPC classification number: G06F17/246 G06Q10/101

    Abstract: Mutations representing spreadsheet edit operations are received at a server from client computers of collaborators and also at a collaborator's client computer from other collaborators and the server. Different mutations may conflict, i.e., provide contradictory instructions on how a spreadsheet is to be edited. Techniques for representing sort operations, cut-and-paste operations, and operations to change cell properties as mutations, and operational transform techniques that can be used to resolve conflicts between such mutations, are disclosed herein. Further disclosed herein are techniques for identifying and processing computationally intensive types of mutations in a calculation thread which operates asynchronously with respect to a UI thread at a collaborator's client computer. The processing may include performing an operational transform on results of the calculation thread based on results obtained in the UI thread.

    Systems and methods for mutations and operational transforms in a collaborative spreadsheet environment

    公开(公告)号:US09720897B2

    公开(公告)日:2017-08-01

    申请号:US13915372

    申请日:2013-06-11

    Applicant: Google Inc.

    CPC classification number: G06F17/246 G06Q10/101

    Abstract: Mutations representing spreadsheet edit operations are received at a server from client computers of collaborators and also at a collaborator's client computer from other collaborators and the server. Different mutations may conflict, i.e., provide contradictory instructions on how a spreadsheet is to be edited. Techniques for representing sort operations, cut-and-paste operations, and operations to change cell properties as mutations, and operational transform techniques that can be used to resolve conflicts between such mutations, are disclosed herein. Further disclosed herein are techniques for identifying and processing computationally intensive types of mutations in a calculation thread which operates asynchronously with respect to a UI thread at a collaborator's client computer. The processing may include performing an operational transform on results of the calculation thread based on results obtained in the UI thread.

    Systems and methods for mutations and operational transforms in a collaborative spreadsheet environment
    10.
    发明授权
    Systems and methods for mutations and operational transforms in a collaborative spreadsheet environment 有权
    协作电子表格环境中的突变和操作变换的系统和方法

    公开(公告)号:US09489367B2

    公开(公告)日:2016-11-08

    申请号:US13909655

    申请日:2013-06-04

    Applicant: Google Inc.

    CPC classification number: G06F17/246 G06Q10/101

    Abstract: Mutations representing spreadsheet edit operations are received at a server from client computers of collaborators and also at a collaborator's client computer from other collaborators and the server. Different mutations may conflict, i.e., provide contradictory instructions on how a spreadsheet is to be edited. Techniques for representing sort operations, cut-and-paste operations, and operations to change cell properties as mutations, and operational transform techniques that can be used to resolve conflicts between such mutations, are disclosed herein. Further disclosed herein are techniques for identifying and processing computationally intensive types of mutations in a calculation thread which operates asynchronously with respect to a UI thread at a collaborator's client computer. The processing may include performing an operational transform on results of the calculation thread based on results obtained in the UI thread.

    Abstract translation: 代表电子表格编辑操作的突变从服务器从合作者的客户端计算机接收,并在协作者的客户端计算机从其他协作者和服务器接收。 不同的突变可能会发生冲突,即就如何编辑电子表格提供矛盾的指示。 本文公开了用于表示分类操作,剪切和粘贴操作以及将细胞特性改变为突变的操作的技术以及可用于解决这种突变之间的冲突的操作变换技术。 本文进一步公开的是用于识别和处理在协作者的客户端计算机上相对于UI线程异步操作的计算线程中的计算密集类型的突变的技术。 该处理可以包括基于在UI线程中获得的结果对计算线程的结果进行操作变换。

Patent Agency Ranking