IP Library Granted Patent US 9,606,725
Granted Patent B2
US 9,606,725 · App. 13/689,968 · Granted Mar 28, 2017

Collaborative overlay of user interface elements rendered on the display of a computing device

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 9,606,725
App. No.
13/689,968
Granted
Mar 28, 2017
Kind
B2
Abstract

Collaborative overlay of user interface elements rendered on the display of a computing device, including: identifying, by an overlay management module, one or more active elements of a user interface for a first application; selecting, by the overlay management module, a location on a user interface for a second application to place one or more of the active elements of the user interface for the first application; and displaying, by the overlay management module, the one or more of the active elements of the user interface for the first application at the selected location on the user interface for the second application.

Claims (45)

1. An apparatus comprising a computer processor and a computer memory operatively coupled to the computer processor, the computer memory having disposed within it computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the steps of:

identifying one or more active elements of a first user interface for a first application including examining source code for the first user interface to identify elements that are used to receive input;

selecting a location within a second user interface for a second application to place the identified one or more active elements of the first user interface for the first application;

determining an importance value for each active element of the first user interface for the first application representing a ranking of the relative importance of each active element of the first user interface for the first application;

displaying, in dependence upon the importance value for each active element of the first user interface, the one or more active elements of the first user interface at the selected location within the second user interface by iteratively displaying an active element with a highest importance value until there is no additional space available on the second user interface for overlaying the one or more active elements of the first user interface for the first application;

detecting within the second user interface, a plurality of selections of the one or more active elements of the first user interface for the first application and a plurality of selections of one or more active elements of the second user interface for the second application; and

in response to detecting within the second user interface, the selection of the one or more active elements of the first user interface for the first application, initiating a first action associated with the first application and in response to detecting within the second user interface, the selection of the one or more active elements of the second user interface for the second application, initiating a second action associated with the second application,

wherein the second user interface including the one or more active elements of the first user interface for the first application and the one or more active elements of the second user interface for the second application consumes the entire display area of the computing device, and the user controls the operations of both the first application and the second application on the computing device by initiating the actions associated with each of the one or more active elements of the first user interface for the first application and the one or more active elements of the second user interface for the second application on one display area of the computing device.

2. The apparatus of claim 1

wherein displaying the one or more active elements of the first user interface for the first application at the selected location within the second user interface includes displaying the one or more active elements of the first user interface in dependence upon the importance value for each active element of the first user interface.

3. The apparatus of claim 2 wherein determining the importance value for each active element of the first user interface includes determining a frequency of use value for each active element of the first user interface for the first application.

4. The apparatus of claim 2 wherein determining the importance value for each active element of the first user interface includes receiving the importance value for each active element of the first user interface from a user.

5. The apparatus of claim 2 wherein identifying the one or more active elements of the first user interface further includes monitoring the content presented by the first user interface to identify portions of the first user interface that include periodically updated content.

6. The apparatus of claim 1 wherein selecting the location within the second user interface to place the identified one or more active elements includes identifying a location within the second user interface that does not include any active elements of the second user interface.

7. The apparatus of claim 1 wherein selecting the location within the second user interface to place the identified one or more active elements includes receiving an importance value for one or more regions of the second user interface from a user.

8. The apparatus of claim 1 wherein selecting the location within the second user interface to place the identified one or more active elements includes determining an importance value for one or more regions of the second user interface.

9. The apparatus of claim 1 further comprising computer program instructions that, when executed by the computer processor, cause the apparatus to carry out the step of displaying high priority active elements of the second user interface in response to a selection of the second application by a user.

10. The apparatus of claim 1 wherein determining the importance value for each active element of the first user interface for the first application includes determining a rate at which a user looks at each active element of the first user interface for the first application.

11. The apparatus of claim 1 wherein determining the importance value for each active element of the first user interface for the first application includes assigning more importance to portions of the user interface that are dynamically updated.

12. The apparatus of claim 1 wherein displaying, in dependence upon the importance value for each active element of the first user interface for the first application, the one or more active elements of the first user interface for the first application at the selected location within the second user interface further includes displaying only a predetermined number of the one or more active elements of the first user interface for the first application.

13. A computer program product including a non-transitory computer readable storage medium, the computer program product comprising computer program instructions that, when executed, cause a computing device to perform operations comprising:

identifying one or more active elements of a first user interface for a first application including examining source code for the first user interface to identify elements that are used to receive input;

selecting a location within a second user interface for a second application to place the identified one or more active elements of the first user interface for the first application;

determining an importance value for each active element of the first user interface for the first application representing a ranking of the relative importance of each active element of the first user interface for the first application;

displaying, in dependence upon the importance value for each active element of the first user interface, the one or more active elements of the first user interface at the selected location within the second user interface by iteratively displaying an active element with a highest importance value until there is no additional space available on the second user interface for overlaying the one or more active elements of the first user interface for the first application;

detecting within the second user interface, a plurality of selections of the one or more active elements of the first user interface for the first application and a plurality of selections of one or more active elements of the second user interface for the second application; and

in response to detecting within the second user interface, the selection of the one or more active elements of the first user interface for the first application, initiating a first action associated with the first application and in response to detecting within the second user interface, the selection of the one or more active elements of the second user interface for the second application, initiating a second action associated with the second application,

wherein the second user interface including the one or more active elements of the first user interface for the first application and the one or more active elements of the second user interface for the second application consumes the entire display area of the computing device, and the user controls the operations of both the first application and the second application on the computing device by initiating the actions associated with each of the one or more active elements of the first user interface for the first application and the one or more active elements of the second user interface for the second application on one display area of the computing device.

14. The computer program product of claim 13

wherein displaying the one or more active elements of the first user interface for the first application at the selected location within the second user interface includes displaying the one or more active elements of the first user interface in dependence upon the importance value for each active element of the first user interface.

15. The computer program product of claim 14 wherein determining the importance value for each active element of the first user interface includes determining a frequency of use value for each active element of the first user interface.

16. The computer program product of claim 14 wherein determining the importance value for each active element of the first user interface includes receiving the importance value for each active element of the first user interface from a user.

17. The computer program product of claim 13 wherein identifying the one or more active elements of the first user interface further includes monitoring the content presented by the first user interface to identify portions of the first user interface that include periodically updated content.

18. A computer-implemented method comprising:

by computer program instructions on a computing device,

identifying one or more active elements of a first user interface for a first application including examining source code for the first user interface to identify elements that are used to receive input;

selecting a location within a second user interface for a second application to place the identified one or more active elements of the first user interface for the first application;

determining an importance value for each active element of the first user interface for the first application representing a ranking of the relative importance of each active element of the first user interface for the first application;

displaying, in dependence upon the importance value for each active element of the first user interface, the one or more active elements of the first user interface at the selected location within the second user interface by iteratively displaying an active element with a highest importance value until there is no additional space available on the second user interface for overlaying the one or more active elements of the first user interface for the first application;

detecting within the second user interface, a plurality of selections of the one or more active elements of the first user interface for the first application and a plurality of selections of one or more active elements of the second user interface for the second application; and

in response to detecting within the second user interface, the selection of the one or more active elements of the first user interface for the first application, initiating a first action associated with the first application and in response to detecting within the second user interface, the selection of the one or more active elements of the second user interface for the second application, initiating a second action associated with the second application,

wherein the second user interface including the one or more active elements of the first user interface for the first application and the one or more active elements of the second user interface for the second application consumes the entire display area of the computing device, and the user controls the operations of both the first application and the second application on the computing device by initiating the actions associated with each of the one or more active elements of the first user interface for the first application and the one or more active elements of the second user interface for the second application on one display area of the computing device.

19. The computer-implemented method of claim 18

wherein displaying the one or more active elements of the first user interface for the first application at the selected location within the second user interface includes displaying the one or more active elements of the first user interface in dependence upon the importance value for each active element of the first user interface.

20. The computer-implemented method of claim 18 further comprising displaying high priority active elements of the second user interface in response to a selection of the second application by a user.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 6, 2019
From: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE LTD.
To: LENOVO GLOBAL TECHNOLOGIES INTERNATIONAL LTD
Reel/Frame 050298/0565 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 10, 2014
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: LENOVO ENTERPRISE SOLUTIONS (SINGAPORE) PTE. LTD.
Reel/Frame 034194/0353 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2012
From: CUDAK, GARY D.; DO, LYDIA M.; HARDEE, CHRISTOPHER J.; ROBERTS, ADAM
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 029379/0968 →