IP Library Granted Patent US 12,657,380
Granted Patent B1
US 12,657,380 · App. 18/397,414 · Granted Jun 16, 2026

Intermediate whiteboard snapshots

Inventor: Richard Dean Legatski (Castle Rock, CO)
Assignee: Zoom Communications, Inc.
G06F40/197G06F3/0482G06F40/169G06T11/60G06T2200/24
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,657,380
App. No.
18/397,414
Granted
Jun 16, 2026
Kind
B1
Abstract

A virtual whiteboard is modified responsive to editing commands. Each of the editing commands results in a respective state of the virtual whiteboard. At least some of the respective states are stored as whiteboard snapshots. A command to display one of the whiteboard snapshots is received. Based on the command, a user interface associated with the virtual whiteboard is updated according to the one of the whiteboard snapshots.

Claims (62)

1 . A method, comprising:

modifying a virtual whiteboard responsive to editing commands, each editing command resulting in a respective state of the virtual whiteboard;

storing at least some of the respective states as whiteboard snapshots;

receiving a command to display one of the whiteboard snapshots;

updating, based on the command, a user interface associated with the virtual whiteboard according to the one of the whiteboard snapshots;

receiving an edit command of a graphical element; and

in response to the edit command, performing a snapshot consistency check to determine whether the edit command affects downstream whiteboard snapshots.

2 . The method of claim 1 , wherein storing the at least some of the respective states as the whiteboard snapshots comprises:

storing, in response to a first snapshot capture command, a first whiteboard snapshot corresponding to a first state; and

storing, in response to a second snapshot capture command received after the first snapshot capture command, a second whiteboard snapshot corresponding to a second state, wherein the second whiteboard snapshot stores differences from the first state to the second state.

3 . The method of claim 1 , further comprising:

updating the user interface based on a first whiteboard snapshot that is upstream from a second whiteboard snapshot;

receiving an edit command of a graphical element displayed in the user interface;

determining whether the graphical element is modified in the second whiteboard snapshot; and

in response to determining that the graphical element is modified in the second whiteboard snapshot, providing a notification indicating that the graphical element is modified in the second whiteboard snapshot.

4 . The method of claim 1 , further comprising:

receiving a request to delete a graphical element from a first whiteboard snapshot of the whiteboard snapshots; and

moving the graphical element to a second whiteboard snapshot that is downstream from the first whiteboard snapshot.

5 . The method of claim 1 , further comprising:

associating a media annotation with the one of the whiteboard snapshots.

6 . The method of claim 1 , further comprising:

associating a textual annotation with the one of the whiteboard snapshots.

7 . The method of claim 1 , further comprising:

associating a name with the one of the whiteboard snapshots.

8 . The method of claim 1 , further comprising:

in response to determining that the edit command affects the downstream whiteboard snapshots, applying the edit command to at least one of the downstream whiteboard snapshots; and

updating the at least one of the downstream whiteboard snapshots to reflect the edit command.

9 . A system, comprising:

one or more memories; and

one or more processors, the one or more processors configured to execute instructions stored in the one or more memories to:

modify a virtual whiteboard responsive to editing commands, each editing command resulting in a respective state of the virtual whiteboard;

store at least some of the respective states as whiteboard snapshots;

receive a command to display one of the whiteboard snapshots;

update, based on the command, a user interface associated with the virtual whiteboard according to the one of the whiteboard snapshots;

receive an edit command of a graphical element; and

in response to the edit command, perform a snapshot consistency check to determine whether the edit command affects downstream whiteboard snapshots.

10 . The system of claim 9 , wherein the one or more processors is further configured to execute instructions stored in the one or more memories to:

associate an audio annotation with the one of the whiteboard snapshots.

11 . The system of claim 9 , wherein the one or more processors is further configured to execute instructions stored in the one or more memories to:

associate an audio-visual annotation with the one of the whiteboard snapshots.

12 . The system of claim 9 , wherein the one or more processors is further configured to execute instructions stored in the one or more memories to:

display a list corresponding to the whiteboard snapshots in the user interface, wherein the command to display the one of the whiteboard snapshots is received in response to a selection from the list.

13 . The system of claim 9 , wherein the user interface associated with the virtual whiteboard includes navigation tools configured to sequentially update the user interface based on the whiteboard snapshots.

14 . The system of claim 9 , wherein the one or more processors is further configured to execute instructions stored in the one or more memories to:

sequentially update the user interface based on the whiteboard snapshots in response to a play command.

15 . Non-transitory computer readable media storing instructions operable to cause one or more processors to perform operations comprising:

modifying a virtual whiteboard responsive to editing commands, each editing command resulting in a respective state of the virtual whiteboard;

storing at least some of the respective states as whiteboard snapshots;

receiving a command to display one of the whiteboard snapshots;

updating, based on the command, a user interface associated with the virtual whiteboard according to the one of the whiteboard snapshots;

receiving an edit command of a graphical element; and

in response to the edit command, performing a snapshot consistency check to determine whether the edit command affects downstream whiteboard snapshots.

16 . The non-transitory computer readable media of claim 15 , wherein modifying the virtual whiteboard comprises:

adding, moving, resizing, or deleting graphical elements in response to the editing commands.

17 . The non-transitory computer readable media of claim 15 , wherein the operations further comprise:

playing a media annotation associated with the one of the whiteboard snapshots in response to receiving the command.

18 . The non-transitory computer readable media of claim 15 , wherein the operations further comprise:

displaying a textual annotation associated with the one of the whiteboard snapshots in response to receiving the command.

19 . The non-transitory computer readable media of claim 15 , wherein the operations further comprise:

displaying a list of the whiteboard snapshots.

20 . The non-transitory computer readable media of claim 15 , wherein the operations further comprise:

sequentially displaying the whiteboard snapshots in response to a play command, wherein each of the whiteboard snapshots is displayed for predefined display duration.

Assignments (1)
CHANGE OF NAME Recorded Jan 7, 2025
From: ZOOM VIDEO COMMUNICATIONS, INC.
To: ZOOM COMMUNICATIONS, INC.
Reel/Frame 069839/0593 →
References Cited (31)
US 5790114A · Geaghan · 1998 [cited by examiner]
US 6332147B1 · Moran · 2001 [cited by examiner]
US 8806354B1 · Hyndman · 2014 [cited by examiner]
US 10769365B2 · Fern · 2020 [cited by examiner]
US 11055055B1 · Fieldman · 2021 [cited by examiner]
US 11281423B1 · Fieldman · 2022 [cited by examiner]
US 20050104902A1 · Zhang et al. · 2005 [cited by applicant]
US 20070120871A1 · Okamoto · 2007 [cited by examiner]
US 20100023851A1 · Schormann · 2010 [cited by examiner]
US 20100306018A1 · Burtner · 2010 [cited by examiner]
US 20130113804A1 · Ferman · 2013 [cited by examiner]
US 20130271403A1 · Nagahara · 2013 [cited by examiner]
US 20140043366A1 · Tsukuda · 2014 [cited by examiner]
US 20140223377A1 · Shaw · 2014 [cited by examiner]
US 20140365918A1 · Caldwell · 2014 [cited by examiner]
US 20150007054A1 · Qu · 2015 [cited by examiner]
US 20150355824A1 · Ueno · 2015 [cited by examiner]
US 20180012194A1 · Aoki · 2018 [cited by examiner]
US 20180292964A1 · Snyder · 2018 [cited by examiner]
US 20190146949A1 · Kothari et al. · 2019 [cited by applicant]
US 20190286255A1 · Kawasaki · 2019 [cited by examiner]
US 20210126955A1 · Nagaoka · 2021 [cited by examiner]
US 20210286486A1 · Shelke · 2021 [cited by examiner]
US 20210390253A1 · Gelman et al. · 2021 [cited by applicant]
US 20220124128A1 · Port et al. · 2022 [cited by applicant]
US 20230350700A1 · Rane · 2023 [cited by examiner]
US 20240031653A1 · Ozaki · 2024 [cited by examiner]
US 20240040084A1 · Mayfield · 2024 [cited by examiner]
US 20240364759A1 · Daniel · 2024 [cited by examiner]
Microsoft Support, How to turn on AutoRecovery in Visio, https://support.microsoft.com/en5-us/topic/how-to-turn-on-autorecovery-in-visio-72c14407-bd2b-1478-6073-3173826659ee#:˜:text=On%20the%20Tools%20menu%2C%20click,op… [cited by applicant]
Microsoft Support, How do I turn on AutoSave?, https://support.microsoft.com/en-us/office/how-do-i-turn-on-autosave-dbd19b49-ff3a-48f5-8294-671e33a6712c, Retrieved from Internet Dec. 27, 2023. [cited by applicant]