IP Library Granted Patent US 11,449,569
Granted Patent B2
US 11,449,569 · App. 16/372,487 · Granted Sep 20, 2022

Multi-entry point navigation for user interfaces

Inventors: Ivan Nikolov Ivanov (Sofia, BG); Deyan Halachliyski (Sofia, BG); Tihomir Plamenov Paskalev (Sofia, BG)
Assignee: VMware, Inc.
G06F16/954G06F16/285G06F16/951
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 11,449,569
App. No.
16/372,487
Granted
Sep 20, 2022
Kind
B2
Abstract

Disclosed are various approaches for implementing a navigation system that facilitates navigation through hierarchically-related views within a user interface using multiple independent entry points. The user interface can include multiple navigation components that each independently provide a user access to available views in the user interface. Upon a user selection for a view through interaction with one of the navigation components, a request for data used to build the view can be sent to a server. If the view is valid, an instance of the view is dynamically generated and displayed in the user interface and each navigation component is updated to be consistent with the selected view. If the view is invalid, updated navigation data is used to rebuild the navigation hierarchy and the navigation components are updated according to the updated navigation hierarchy.

Claims (69)

1. A system for navigating through a hierarchy of views of a user interface, comprising:

at least one computing device that comprises a processor and memory;

at least one application executable by the at least one computing device, wherein, when executed, the at least one application causes the at least one computing device to at least:

send executable code to a client, the executable code being configured to:

generate the hierarchy of views for the user interface based on navigation data;

generate the user interface comprising navigation components providing an entry point for navigation of the hierarchy of views;

receive a selection of a view within the hierarchy, the selection received from a user interaction with one of the navigation components;

send a request to the at least one computing device for data associated with the view; and

update the user interface and the navigation components based on a response received from the at least one computing device;

receive the request from the client for the data associated with the view, wherein the request comprises a navigation endpoint for a requested view and an identification of a branch in the hierarchy of views;

determine data that corresponds to the navigation endpoint for the requested view or the branch in the hierarchy of views is inaccessible from the navigation data;

determine that the requested view is an invalid view based at least in part on the data that corresponds to the navigation endpoint for the requested view or the branch in the hierarchy of views being inaccessible from the navigation data;

receive a navigation data request from the client for updated navigation data for rebuilding the hierarchy of views in an instance which the requested view is indicated as invalid to the client; and

send the updated navigation data to the client for rebuilding the hierarchy of views stored in the client, the updated navigation data being sent in an instance in which the navigation data request for the updated navigation data has been received from the client, the updated navigation data comprising an updated structure of the hierarchy of views.

2. The system of claim 1 , wherein the executable code is further configured to at least determine that the view is invalid.

3. The system of claim 2 , wherein the executable code is further configured to:

generate an updated hierarchy of views based on the updated navigation data; and

update the user interface and the navigation components based on the updated hierarchy of views.

4. The system of claim 2 , wherein the response indicates that the view is invalid, and the executable code being further configured to update the user interface to display a home view of the hierarchy of views in an instance in which the view is invalid, wherein the home view is static.

5. The system of claim 1 , wherein:

the navigation components comprise an active state and a non-active state;

during the active state, the navigation components display an entire hierarchal structure of available navigation entries corresponding to the hierarchy of views; and

during the non-active state, the navigation components display a reference to a last activated view.

6. A non-transitory computer-readable medium embodying executable instructions, which, when executed by a processor, cause at least one computing device to at least:

send executable code to a client, the executable code being configured to:

generate a hierarchy of views for a user interface based on navigation data;

generate the user interface comprising navigation components providing an entry point for navigation of the hierarchy of views;

receive a selection of a view within the hierarchy, the selection received from a user interaction with one of the navigation components;

send a request to the at least one computing device for data associated with the view;

update the user interface and the navigation components based on a response received from the at least one computing device;

receive the request from the client for the data associated with the view, wherein the request comprises a navigation endpoint for a requested view and an identification of a branch in the hierarchy of views;

determine data that corresponds to the navigation endpoint for the requested view or the branch in the hierarchy of views is inaccessible from the navigation data;

determine that the requested view is an invalid view based at least in part on the data that corresponds to the navigation endpoint for the requested view or the branch in the hierarchy of views being inaccessible from the navigation data;

receive a navigation data request from the client for updated navigation data for rebuilding the hierarchy of views in an instance in which the requested view is indicated as invalid to the client; and

send the updated navigation data to the client for rebuilding the hierarchy of views stored in the client, the updated navigation data being sent in an instance in which the navigation data request for the updated navigation data has been received from the client, the updated navigation data comprising an update structure of the hierarchy of views.

7. The non-transitory computer-readable medium of claim 6 , wherein the executable code is further configured to at least determine that the view is invalid.

8. The non-transitory computer-readable medium of claim 7 , wherein the executable code is further configured to:

generate an updated hierarchy of views based on the updated navigation data; and

update the user interface and the navigation components based on the updated hierarchy of views.

9. The non-transitory computer-readable medium of claim 7 , wherein the response indicates that the view is invalid, and the executable code being further configured to update the user interface to display a home view of the hierarchy of views in an instance in which the view is invalid, wherein the home view is static.

10. The non-transitory computer-readable medium of claim 6 , wherein the navigation components display the hierarchy of views in different formats from one another.

11. The non-transitory computer-readable medium of claim 6 , wherein the response includes the data associated with the view, and the executable code further is configured to dynamically generate an instance of the view based on the data, and wherein updating the user interface comprises displaying the instance of the view.

12. A computer-implemented method for navigating through a hierarchy of views of a user interface, comprising:

sending, by at least one computing device, executable code to a client, the executable code being configured to:

generate the hierarchy of views for the user interface based on navigation data;

generate the user interface comprising navigation components providing an entry point for navigation of the hierarchy of views;

receive a selection of a view within the hierarchy, the selection received from a user interaction with one of the navigation components;

send a request to the at least one computing device for data associated with the view; and

update the user interface and the navigation components based on a response received from the at least one computing device;

receiving, by the at least one computing device, the request from the client for the data associated with the view, wherein the request comprises a navigation_endpoint for a requested view and an identification of a branch in the hierarchy of views;

determining, by at least one computing device, data that corresponds to the navigation endpoint for the requested view or the branch in the hierarchy of views is inaccessible from the navigation data;

determining, by at least one computing device, that the requested view is an invalid view based at least in part on the data that corresponds to the navigation endpoint for the requested view or the branch in the hierarchy of views being inaccessible from the navigation data;

receiving, by at least one computing device, a navigation data request from the client for updated navigation data for rebuilding the hierarchy of views in an instance in which the requested view is indicated as invalid to the client; and

sending, by the at least one computing device, the updated navigation data to the client for rebuilding the hierarchy of views stored in the client , the updated navigation data being sent in an instance in which the navigation data request for the updated navigation data has been received from the client, the updated navigation data comprising an updated structure of the hierarchy of views.

13. The computer-implemented method of claim 12 , wherein the executable code is further configured to determining that the view is invalid.

14. The computer-implemented method of claim 13 , further comprising:

sending the updated navigation data to the client in an instance in which the view is invalid; and

the executable code being further configured to:

generate an updated hierarchy of views based on the updated navigation data; and

update the user interface and the navigation components based on the updated hierarchy of views.

15. The computer-implemented method of claim 13 , wherein the response indicates that the view is invalid, and the executable code being further configured to update the user interface to display a home view of the hierarchy of views in an instance in which the view is invalid, wherein the home view is static.

16. The computer-implemented method of claim 12 , wherein the navigation components display the hierarchy of views in different formats from one another.

17. The computer-implemented method of claim 12 , wherein the response includes the data associated with the view, and the executable code further is configured to dynamically generate an instance of the view based on the data, and wherein updating the user interface comprises displaying the instance of the view.

18. The computer-implemented method of claim 12 , wherein:

the navigation components comprise an active state and a non-active state;

during the active state, the navigation components display an entire hierarchal structure of available navigation entries corresponding to the hierarchy of views; and

during the non-active state, the navigation components display a reference to a last activated view.

19. The computer-implemented method of claim 12 , wherein the hierarchy of views correspond to a structure of an enterprise environment for a datacenter.

20. The computer-implemented method of claim 12 , wherein generating an updated hierarchy of views further comprises feeding the updated navigation data into a view template.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 2, 2019
From: IVANOV, IVAN NIKOLOV; HALACHLIYSKI, DEYAN; PASKALEV, TIHOMIR PLAMENOV
To: VMWARE, INC.
Reel/Frame 048766/0569 →
Continuity (1)
Related Publication 20200320148A1 · Oct 8, 2020