US 12,001,401 B2
Enhanced co-authoring and file syncing
Boris Isaac Feldman, Seattle, WA (US); Matthew James Ruhlen, Redmond, WA (US); Manish Soni, Las Vegas, NV (US); Marcus Eduardo Markiewicz, Teaneck, NJ (US); Michal Krzysztof Piaseczny, Bellevue, WA (US); Nisha Tekchand Singh, Redmond, WA (US); and Bowen Xue, Kirkland, WA (US)
Assigned to MICROSOFT TECHNOLOGY LICENSING, LLC, Redmond, WA (US)
Filed by Microsoft Technology Licensing, LLC, Redmond, WA (US)
Filed on Oct. 27, 2021, as Appl. No. 17/511,982.
Prior Publication US 2023/0125637 A1, Apr. 27, 2023
Int. Cl. G06F 16/00 (2019.01); G06F 16/13 (2019.01); G06F 16/178 (2019.01)
CPC G06F 16/178 (2019.01) [G06F 16/137 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A computing device comprising:
one or more computer readable storage media;
one or more processors operatively coupled to the one or more computer readable storage media; and
an application comprising program instructions stored on the one or more computer readable storage media that, when executed by the one or more processors, direct the computing device to at least:
receive a request to open a file, wherein a sync engine on the computing device synchronizes a local copy of the file with a hosted copy of the file hosted by a file service;
in response to the request, open a temporary copy of the file on the computing device and populate the temporary copy of the file with content from the local copy of the file;
establish a connection between the application and a co-authoring service that bypasses the sync engine;
when connected to the co-authoring service over the connection, and when the temporary copy of the file is open on the computing device:
receive user input via a user interface of the application comprising one or more edits to the content in the temporary copy of the file;
edit the content in the temporary copy of the file based on the one or more edits; and
synchronize the temporary copy of the file with the hosted copy of the file; and
upon a file close event occurring, close the temporary copy of the file without synchronizing the local copy of the file with the temporary copy of the file, and without having synchronized the local copy of the file with the temporary copy of the file since having opened and populated the temporary copy of the file with the content.