IP Library Granted Patent US 8,677,270
Granted Patent B2
US 8,677,270 · App. 11/744,782 · Granted Mar 18, 2014

Live companion user interface

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 8,677,270
App. No.
11/744,782
Granted
Mar 18, 2014
Kind
B2
Abstract

An apparatus and method provide a companion application via a companion application corresponding to a host window provided by a host application, the companion window providing information or metadata descriptive of data in the host window. The host application and companion applications may be separate applications such that the host application is unaware of the companion application. The companion application may hook into the host application (e.g., via an application programming interface) and may monitor host application activities and/or data. Based on identification of data or events in the host application, the companion application may obtain information characterizing or providing a context for data provided by the host application. The host window and companion window may be attached to each other, the host window providing host application data and the companion window providing data describing the host application data.

Claims (29)

1. A method performed on a computing device, the method comprising:

detecting, by a companion application based on monitoring a host application, data from among actions and events of the host application, data generated by the host application, data provided by the host application, and selections of elements in a host window of a host user interface of the host application, where the companion application and the host application are each computer programs that are distinct from the other, and where the host application is substantially unaware of the companion application;

obtaining, by the companion application based on the detecting, metadata that is different than the detected data, and that is descriptive of data displayed by the host application in the host window, where the companion application is configured for obtaining the metadata from an operating environment comprising the computing device and an operating system of the computing device, and where the computing device concurrently executes the host application and the companion application; and

displaying, by the companion application, the obtained metadata in a companion window of a companion user interface of the companion application.

2. The method of claim 1 where the companion user interface is displayed concurrently with the host user interface.

3. The method of claim 2 where the displayed companion user interface is attached to the displayed host user interface.

4. The method of claim 2 where the displayed companion user interface and the displayed host user interface are modified in tandem in response to a change in the data.

5. The method of claim 2 where the displayed companion user interface and the displayed host user interface form a combination user interface that behaves as a single user interface.

6. The method of claim 2 where the displayed companion user interface and the displayed host user interface share a side.

7. The method of claim 2 where the displayed companion user interface and the displayed host user interface are in contact with each other but do not overlap.

8. At least one computer storage media that is an article of manufacture and that stores computer-executable instructions that, when executed by a computer, cause the computer to perform a method comprising:

detecting, by a companion application based on monitoring a host application, data from among actions and events of the host application, data generated by the host application, data provided by the host application, and selections of elements in a host window of a host user interface of the host application, where the companion application and the host application are each computer programs that are distinct from the other, and where the host application is substantially unaware of the companion application;

obtaining, by the companion application based on the detecting, metadata that is different than the detected data, and that is descriptive of data displayed by the host application in the host window, where the companion application is configured for obtaining the metadata from an operating environment comprising the computing device and an operating system of the computing device, and where the computing device concurrently executes the host application and the companion application; and

displaying, by the companion application, the obtained metadata in a companion window of a companion user interface of the companion application.

9. The at least one computer storage media of claim 8 where the companion user interface is displayed concurrently with the host user interface.

10. The at least one computer storage media of claim 9 where the displayed companion user interface is attached to the displayed host user interface.

11. The at least one computer storage media of claim 9 where the displayed companion user interface and the displayed host user interface are modified in tandem in response to a change in the data.

12. The at least one computer storage media of claim 9 where the displayed companion user interface and the displayed host user interface form a combination user interface that behaves as a single user interface.

13. The at least one computer storage media of claim 9 where the displayed companion user interface and the displayed host user interface share a side.

14. The at least one computer storage media of claim 9 where the displayed companion user interface and the displayed host user interface are in contact with each other but do not overlap.

15. A system comprising a computing device and at least one program module together configured for performing actions comprising:

detecting, by a companion application based on monitoring a host application, from among actions and events of the host application, data generated by the host application, data provided by the host application, and selections of elements in a host window of a host user interface of the host application, where the companion application and the host application are each computer programs that are distinct from the other, and where the host application is substantially unaware of the companion application;

obtaining, by the companion application based on the detecting, metadata that is different than the detected data, and that is descriptive of data displayed by the host application in the host window, where the companion application is configured for obtaining the metadata from an operating environment comprising the computing device and an operating system of the computing device, and where the computing device concurrently executes the host application and the companion application; and

displaying, by the companion application, the obtained metadata in a companion window of a companion user interface of the companion application.

16. The system of claim 15 where the displayed companion user interface is displayed concurrently with the host user interface.

17. The system of claim 16 where the displayed companion user interface and the displayed host user interface are modified in tandem in response to a change in the data.

18. The system of claim 16 where the displayed companion user interface and the displayed host user interface form a combination user interface that behaves as a single user interface.

19. The system of claim 16 where the displayed companion user interface and the displayed host user interface share a side.

20. The system of claim 16 where the displayed companion user interface and the displayed host user interface are in contact with each other but do not overlap.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034542/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 5, 2007
From: MOROMISATO, GEORGE P.; EDELSTEIN, NOAH B.; BHANDARKAR, ADITYA G; OZZIE, RAYMOND E.; PARASNIS, ABHAY V.
To: MICROSOFT CORPORATION
Reel/Frame 019926/0478 →