Systems and methods for providing a collaborative document environment

Gespeichert in:
Bibliographische Detailangaben
Titel: Systems and methods for providing a collaborative document environment
Patent Number: 12001,784
Publikationsdatum: June 04, 2024
Appl. No: 17/733959
Application Filed: April 29, 2022
Abstract: Systems and methods are disclosed for sharing a unified undo/redo stack between multiple applications. A method determining that a host application receives an action regarding a document, adding the action to a unified stack that is associated with undo commands and is shared between the host application and a secondary application, receiving an undo command from the host application or the secondary application, and retrieving the undo command from the unified stack to cause the action to be undone in the host application and the secondary application.
Inventors: Google LLC (Mountain View, CA, US)
Assignees: Google LLC (Mountain View, CA, US)
Claim: 1. A method comprising: determining that a host application receives an action regarding a document, wherein the action comprises a user change made to the document via the host application; adding the action regarding the document to a unified stack that is associated with undo commands and is shared between the host application and a secondary application, wherein at least a portion of the document is editable via the host application and the secondary application; receiving an undo command from the secondary application; and retrieving the undo command from the unified stack to cause the user change made to the document via the host application to be undone in the secondary application.
Claim: 2. The method of claim 1 further comprising: determining that the host application receives a second action regarding the document; adding the second action to a unified stack that is associated with redo commands and is shared between the host application and the secondary application; receiving a redo command from the host application or the secondary application; and retrieving the redo command from the unified stack to cause the second action to be redone in at least one of the host application or the secondary application.
Claim: 3. The method of claim 2 wherein the unified stack associated with the undo commands is the same as the unified stack associated with the redo commands.
Claim: 4. The method of claim 1 wherein the secondary application is embedded within the host application.
Claim: 5. The method of claim 1 wherein the host application is a document application and the secondary application is a spreadsheet application.
Claim: 6. The method of claim 1 wherein the action pertains to adding text to the document or adding a comment to the document.
Claim: 7. The method of claim 6 wherein the undo command regarding the comment corresponds to one of: user input indicating a request to undo a suggested edit to the document, user input indicating a request to delete the comment via a user interface for a comment section, or user input indicating a request to delete the comment and synchronize the deletion with another user device.
Claim: 8. The method of claim 1 wherein determining that the host application receives the action pertaining to the document comprises: determining whether the host application receives the action from the secondary application or directly; and responsive to determining that the host application receives the action from the secondary application, canceling the action from the second application.
Claim: 9. The method of claim 1 wherein determining that the host application receives the action pertaining to the document further comprises: determining whether the host application receives the action from the secondary application or directly; and responsive to determining that the host application receives the action directly, refraining from canceling the action from the second application.
Claim: 10. The method of claim 1 wherein the unified stack is synchronized between the host application and the secondary application.
Claim: 11. Non-transitory computer-readable media having recorded thereon instructions, that when executed by one or more computer processors, perform operations comprising: determining that a host application receives an action regarding a document, wherein the action comprises a user change made to the document via the host application; adding the action regarding the document to a unified stack that is associated with undo commands and is shared between the host application and a secondary application, wherein at least a portion of the document is editable via the first host application and the secondary application; receiving an undo command from the secondary application; and retrieving the undo command from the unified stack to cause the user change made to the document via the host application to be undone in the secondary application.
Claim: 12. The non-transitory computer-readable media of claim 11 wherein the operations further comprise: determining that the host application receives a second action regarding the document; adding the second action to a unified stack that is associated with redo commands and is shared between the host application and the secondary application; receiving a redo command from the host application or the secondary application; and retrieving the redo command from the unified stack to cause the second action to be redone in at least one of the host application or the secondary application.
Claim: 13. The non-transitory computer-readable media of claim 11 wherein the secondary application is embedded within the host application, and wherein the host application is a document application and the secondary application is a spreadsheet application.
Claim: 14. The non-transitory computer-readable media of claim 11 wherein the action pertains to adding a comment to the document, and wherein the undo command regarding the comment corresponds to one of: user input indicating a request to undo a suggested edit to the document, user input indicating a request to delete the comment via a user interface for a comment section, or user input indicating a request to delete the comment and synchronize the deletion with another user device.
Claim: 15. The non-transitory computer-readable media of claim 11 wherein determining that the host application receives the action pertaining to the document comprises: determining whether the host application receives the action from the secondary application or directly; and responsive to determining that the host application receives the action from the secondary application, canceling the action from the second application.
Claim: 16. The non-transitory computer-readable media of claim 11 wherein determining that the host application receives the action pertaining to the document further comprises: determining whether the host application receives the action from the secondary application or directly; and responsive to determining that the host application receives the action directly, refraining from canceling the action from the second application.
Claim: 17. A system comprising: a memory; and one or more processors, coupled to the memory, to perform operations comprising: determining that a host application receives an action regarding a document, wherein the action comprises a user change made to the document via the host application; adding the action regarding the document to a unified stack that is associated with undo commands and is shared between the host application and a secondary application, wherein at least a portion of the document is editable via the first host application and the secondary application; receiving an undo command from the secondary application; and retrieving the undo command from the unified stack to cause the user change made to the document via the host application to be undone in the secondary application.
Claim: 18. The system of claim 17 wherein the operations further comprise: determining that the host application receives a second action regarding the document; adding the second action to a unified stack that is associated with redo commands and is shared between the host application and the secondary application; receiving a redo command from the host application or the secondary application; and retrieving the redo command from the unified stack to cause the second action to be redone in at least one of the host application or the secondary application.
Claim: 19. The system of claim 17 wherein the secondary application is embedded within the host application, and wherein the host application is a document application and the secondary application is a spreadsheet application.
Claim: 20. The system of claim 17 wherein the action pertains to adding a comment to the document, and wherein the undo command regarding the comment corresponds to one of: user input indicating a request to undo a suggested edit to the document, user input indicating a request to delete the comment via a user interface for a comment section, or user input indicating a request to delete the comment and synchronize the deletion with another user device.
Claim: 21. The system of claim 17 wherein determining that the host application receives the action pertaining to the document comprises: determining whether the host application receives the action from the secondary application or directly; and responsive to determining that the host application receives the action from the secondary application, canceling the action from the second application.
Claim: 22. The system of claim 17 wherein determining that the host application receives the action pertaining to the document further comprises: determining whether the host application receives the action from the secondary application or directly; and responsive to determining that the host application receives the action directly, refraining from canceling the action from the second application.
Patent References Cited: 7222156 May 2007 Gupta et al.
7370060 May 2008 Jain
8108464 January 2012 Rochelle
8473847 June 2013 Glover
8682989 March 2014 Meisels et al.
8869046 October 2014 Brown et al.
9053079 June 2015 Bailor
9208137 December 2015 Ginetti
D754168 April 2016 Vazquez et al.
9329762 May 2016 Schultz
9383888 July 2016 Fish et al.
9479605 October 2016 Kleppner et al.
9552340 January 2017 Marsh
9607278 March 2017 Zaveri
9948988 April 2018 Findlay
10025759 July 2018 Mulder
10067927 September 2018 Myerscough et al.
10225291 March 2019 Wilde et al.
20020091768 July 2002 Balasubramanian
20040172377 September 2004 Saitou et al.
20070061382 March 2007 Davis
20070271502 November 2007 Bedi
20100281362 November 2010 Bailor
20100313158 December 2010 Lee et al.
20110296507 December 2011 Khosrowshahi
20120036456 February 2012 Grunberger
20120136862 May 2012 Glover
20120166282 June 2012 Reis et al.
20120166540 June 2012 Reis et al.
20120278401 November 2012 Meisels et al.
20120284344 November 2012 Costenaro et al.
20120284618 November 2012 Bailor et al.
20130151940 June 2013 Bailor
20130275885 October 2013 Spataro et al.
20140019585 January 2014 Mshnubhatla et al.
20140033088 January 2014 Shaver
20140149857 May 2014 Vagell
20140289645 September 2014 Megiddo et al.
20140310345 October 2014 Megiddo et al.
20140372855 December 2014 Myerscough et al.
20150186350 July 2015 Hicks
20150269146 September 2015 Ayyar et al.
20160321227 November 2016 Keslin et al.
20160357720 December 2016 Thimbleby
20160378725 December 2016 Marchsreiter
Primary Examiner: Zuberi, Mohammed H
Attorney, Agent or Firm: Lowenstein Sandler LLP
Dokumentencode: edspgr.12001784
Datenbank: USPTO Patent Grants
Beschreibung
Abstract:Systems and methods are disclosed for sharing a unified undo/redo stack between multiple applications. A method determining that a host application receives an action regarding a document, adding the action to a unified stack that is associated with undo commands and is shared between the host application and a secondary application, receiving an undo command from the host application or the secondary application, and retrieving the undo command from the unified stack to cause the action to be undone in the host application and the secondary application.