IP Library Granted Patent US 12,019,850
Granted Patent B2
US 12,019,850 · App. 18/213,738 · Granted Jun 25, 2024

Collaboration system including markers identifying multiple canvases in multiple shared virtual workspaces

Inventors: Rupen Chanda (Austin, TX); Ariel Jakobovits (Redwood City, CA); Satish Santhakumar (Fremont, CA); Demian Entrekin (Oakland, CA)
Assignee: Haworth, Inc.
G06F3/0482G06F3/1431G06F3/1454H04L67/131H04L67/01
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,019,850
App. No.
18/213,738
Granted
Jun 25, 2024
Kind
B2
Abstract

A network node of a collaboration system is provided to establish communication with other network nodes. The network node comprises a display having a physical display space. The network node can store collaboration data and render on the local client screen space a local client canvas having locations in the virtual workspace. The network node includes logic to provide a user interface to display a list of markers representing predefined canvases in both the virtual workspace and another virtual workspace. The predefined canvases defining (i) respective areas in the virtual workspace having a location and (ii) an area in the other virtual workspace having a location. The network node includes logic to respond to an input indicating a selected marker from the list of displayed markers to update the location of the local client canvas to match the location of the predefined canvas represented by the selected marker.

Claims (88)

1. A method for operating a server node including a processor, the method comprising:

providing, to a client node displaying a portion of a virtual workspace, at least part of a log of entries identifying:

a location of a predefined canvas within another virtual workspace and represented by at least one marker selected from multiple markers representing predefined canvases within both the virtual workspace and in the other virtual workspace, regardless of whether creators of the predefined canvases are actively viewing any of the predefined canvases;

objects; and

object locations in the other virtual workspace, wherein a defined area in the other virtual workspace includes an object for display by the client node, and wherein an entry in the log comprises data specifying:

coordinates of the location, within the other virtual workspace, of the predefined canvas that is represented by the at least one selected marker and that includes the defined area, in the other virtual workspace, including the object; and

coordinates of an object location, in the other virtual workspace, of the object.

2. The method of claim 1 , further comprising storing metadata associated with a particular canvas, of the predefined canvases, within the other virtual workspace.

3. The method of claim 2 , wherein the metadata includes an access list identifying users that are permitted to display objects having locations within the particular canvas.

4. The method of claim 2 , wherein the metadata includes a title of the particular canvas.

5. The method of claim 2 , wherein the metadata identifies one or more contextual menu items associated with the particular canvas.

6. The method of claim 2 , wherein the metadata includes a zoom-in indicator indicating that the client node is to display objects included in the particular canvas using a zoom-in level while still allowing the displayed objects to remain displayed by the client node in their entirety.

7. The method of claim 2 , wherein the metadata includes information that links the particular canvas to a different canvas that is within the other virtual workspace and that is associated with the particular canvas.

8. A server node, the server node comprising:

a processor configured with logic to implement operations comprising:

providing, to a client node displaying a portion of a virtual workspace, at least part of a log of entries identifying:

a location of a predefined canvas within another virtual workspace and represented by at least one marker selected from multiple markers representing predefined canvases within both the virtual workspace and in the other virtual workspace, regardless of whether creators of the predefined canvases are actively viewing any of the predefined canvases;

objects; and

object locations in the other virtual workspace, wherein a defined area in the other virtual workspace includes an object for display by the client node, and wherein an entry in the log comprises data specifying:

coordinates of the location, within the other virtual workspace, of the predefined canvas that is represented by the at least one selected marker and that includes the defined area, in the other virtual workspace, including the object; and

coordinates of an object location, in the other virtual workspace, of the object.

9. The server node of claim 8 , wherein the processor is further configured with logic to implement operations comprising:

receiving metadata associated with a particular canvas within the other virtual workspace.

10. The server node of claim 9 , wherein:

the metadata includes an access list identifying users that are permitted to display objects having locations within the particular canvas; and

the operations further include prohibiting displaying of the objects having locations within the particular canvas when a user of the client node is not identified by the access list.

11. The server node of claim 9 , wherein:

the metadata includes a title of the particular canvas; and

the operations further include including the title of the particular canvas in a menu of markers.

12. The server node of claim 9 , wherein:

the metadata identifies a color corresponding to the particular canvas; and

the operations further include providing data to allow display, by the client node, of a marker representing the particular canvas in the color identified by the metadata.

13. The server node of claim 9 , wherein:

the metadata identifies one or more contextual menu items associated with the particular canvas; and

the operations further include providing data to allow display, by the client node, of the one or more contextual menu items associated with the particular canvas.

14. The server node of claim 9 , wherein:

the metadata includes a zoom-in indicator; and

the operations further include providing data to allow display of objects included in the particular canvas using a zoom-in level while still allowing the displayed objects to remain displayed by the client node in their entirety.

15. The server node of claim 9 , wherein the metadata includes information that links the particular canvas to a different canvas that is within the other virtual workspace and that is associated with the particular canvas.

16. The server node of claim 8 , wherein the processor is further configured with logic to implement operations comprising:

creating a canvas by:

obtaining information identifying an area in the other virtual workspace that includes one or more objects and defines the canvas; and

storing data representing the canvas, the stored data including metadata identifying a location and dimensions of the area within the other virtual workspace that defines the canvas;

creating a marker associated with the canvas; and

transmitting a message to other nodes, the transmitted message including the stored data representing the canvas and the marker.

17. A non-transitory computer-readable recording medium having a program recorded thereon, the program, when executed by a server node including a processor, causing the server node to perform operations comprising:

providing, to a client node displaying a portion of a virtual workspace, at least part of a log of entries identifying:

a location of a predefined canvas within another virtual workspace and represented by at least one marker selected from multiple markers representing predefined canvases within both the virtual workspace and in the other virtual workspace, regardless of whether creators of the predefined canvases are actively viewing any of the predefined canvases;

objects; and

object locations in the other virtual workspace, wherein a defined area in the other virtual workspace includes an object for display by the client node, and wherein an entry in the log comprises data specifying:

coordinates of the location, within the other virtual workspace, of the predefined canvas that is represented by the at least one selected marker and that includes the defined area, in the other virtual workspace, including the object; and

coordinates of an object location, in the other virtual workspace, of the object.

18. The non-transitory computer-readable recording medium of claim 17 , wherein the operations further comprise storing metadata associated with a particular canvas, of the predefined canvases, within the other virtual workspace.

19. The non-transitory computer-readable recording medium of claim 18 , wherein:

the metadata includes an access list identifying users that are permitted to display objects having locations within the particular canvas; and

the operations further include prohibiting displaying of the objects having locations within the particular canvas when a user is not identified by the access list.

20. A method for operating a client node including a processor, the method comprising:

displaying a portion of a virtual workspace;

retrieving, from a server node, at least part of a log of entries identifying:

a location of a predefined canvas within another virtual workspace and represented by at least one marker selected from multiple markers representing predefined canvases within both the virtual workspace and in the other virtual workspace, regardless of whether creators of the predefined canvases are actively viewing any of the predefined canvases;

objects; and

object locations in the other virtual workspace, wherein a defined area in the other virtual workspace includes an object for display by the client node, and wherein an entry in the log comprises data specifying:

coordinates of the location, within the other virtual workspace, of the predefined canvas that is represented by the at least one selected marker and that includes the defined area in the other virtual workspace including the object and coordinates of an object location, in the other virtual workspace, of the objects; and

displaying the object included in the defined area.

21. The method of claim 20 , further comprising:

receiving data identifying a particular canvas of the other virtual workspace and including metadata associated with the particular canvas.

22. The method of claim 21 , wherein:

the metadata includes an access list identifying users that are permitted to display objects having locations within the particular canvas of the other virtual workspace; and

the method further includes prohibiting displaying of the objects having locations within the particular canvas of the other virtual workspace when a user of the client node is not identified by the access list.

23. The method of claim 21 , wherein:

the metadata includes a title of the particular canvas of the other virtual workspace; and

the method further includes including the title of the particular canvas of the other virtual workspace in a menu of markers.

24. The method of claim 21 , wherein:

the metadata identifies a color corresponding to the particular canvas of the other virtual workspace; and

the method further includes displaying a marker representing the particular canvas of the other virtual workspace in the color identified by the metadata.

25. The method of claim 21 , wherein:

the metadata identifies one or more contextual menu items associated with the particular canvas of the other virtual workspace; and

the method further includes displaying the one or more contextual menu items associated with the particular canvas of the other virtual workspace.

26. The method of claim 21 , wherein:

the metadata includes a zoom-in indicator; and

the method further includes displaying objects included in the particular canvas of the other virtual workspace using a zoom-in level while still allowing the displayed objects to remain displayed by the client node in their entirety.

27. The method of claim 21 , wherein the metadata includes information that links the particular canvas of the other virtual workspace to a different canvas that is within the other virtual workspace and that is associated with the particular canvas.

28. The method of claim 20 , further comprising:

creating a canvas by:

obtaining information identifying an area in the other virtual workspace that includes one or more displayed objects and defines the canvas; and

storing data representing the canvas of the other virtual workspace, the stored data including metadata identifying a location and dimensions of the area within the other virtual workspace that defines the canvas;

creating a marker associated with the canvas of the other virtual workspace; and

transmitting a message to other nodes, the transmitted message including the stored data representing the canvas of the other virtual workspace and the marker.

Assignments (3)
INTELLECTUAL PROPERTY ASSIGNMENT AGREEMENT Recorded Oct 14, 2024
From: THOUGHT STREAM LLC; HAWORTH, INC.
To: BLUESCAPE BUYER, LLC
Reel/Frame 069163/0654 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 30, 2024
From: HAWORTH, INC.
To: BLUESCAPE BUYER LLC (DBA BLUESCAPE)
Reel/Frame 069082/0824 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 8, 2023
From: CHANDA, RUPEN; JAKOBOVITS, ARIEL; SANTHAKUMAR, SATISH; ENTREKIN, DEMIAN
To: HAWORTH, INC.
Reel/Frame 064527/0385 →