# US 2014/0157185 A1 · Live companion user interface

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0157185 A1
- Document ID: US20140157185A1
- Status: Published application
- Kind: A1
- Application number: 14/176,057
- Filed: 2014-02-08
- Published: 2014-06-05
- Earliest claimed: 2007-05-04
- Assignees: Microsoft Corporation
- Applicants: Microsoft Corporation
- Inventors: George P. Moromisato; Noah B. Edelstein; Aditya G. Bhandarkar; Raymond E. Ozzie; Abhay V. Parasnis
- Web page: https://patentgrep.com/patent/US20140157185A1

## CPC

- G06F 3/0481: based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F 9/451: Execution arrangements for user interfaces
- G06F 16/164: {File meta data generation}
- G06F 16/168: {Details of user interfaces specifically adapted to file systems, e.g. browsing and visualisation, 2d or 3d GUIs (query results presentation G06F16/156)}
- G06F 3/048: Interaction techniques based on graphical user interfaces [GUI]
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)

## 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

### Claim 1

A method performed on a computing device, the method comprising:
obtaining, by a companion application, metadata that is descriptive of data of a host application, where the host application is separate from and substantially unaware of the companion application; and
presenting, by the companion application, the obtained metadata in a user interface of the companion application.

### Claim 2 (depends on 1)

The method of claim 1 further comprising concurrently displaying the user interface of the companion application and a user interface of the host application that comprises a representation of the data.

### Claim 3 (depends on 2)

The method of claim 2 where the concurrently displaying comprises displaying the user interface of the companion application and the user interface of the host application adjacent to each other.

### Claim 4 (depends on 2)

The method of claim 2 where the concurrently displaying comprises modifying, in tandem and in response to a change in the data, the user interface of the companion application and the user interface of the host application.

### Claim 5 (depends on 2)

The method of claim 2 where the concurrently displaying comprises presenting the user interface of the companion application and the user interface of the host application as a single user interface.

### Claim 6 (depends on 1)

The method of claim 1 further comprising monitoring, by the companion application, the data of the host application.

### Claim 7 (depends on 6)

The method of claim 6 where the monitoring comprises hooking, by the companion application, into the host application.

### Claim 8

A system comprising a computing device and at least one program module together configured for performing actions comprising:
obtaining, by a companion application, metadata that is descriptive of data of a host application, where the host application is separate from and substantially unaware of the companion application; and
presenting, by the companion application, the obtained metadata in a user interface of the companion application.

### Claim 9 (depends on 8)

The system of claim 8, the actions further comprising concurrently displaying the user interface of the companion application and a user interface of the host application that comprises a representation of the data.

### Claim 10 (depends on 9)

The system of claim 9 where the concurrently displaying comprises displaying the user interface of the companion application and the user interface of the host application adjacent to each other.

### Claim 11 (depends on 9)

The system of claim 9 where the concurrently displaying comprises modifying, in tandem and in response to a change in the data, the user interface of the companion application and the user interface of the host application.

### Claim 12 (depends on 9)

The system of claim 9 where the concurrently displaying comprises presenting the user interface of the companion application and the user interface of the host application as a single user interface.

### Claim 13 (depends on 8)

The system of claim 8, the actions further comprising monitoring, by the companion application, the data of the host application.

### Claim 14 (depends on 13)

The system of claim 13 where the monitoring comprises hooking, by the companion application, into the host application.

### Claim 15

At least one computer storage media that is an article of manufacture and that stores computer-executable instructions that, when executed by a computing device, cause the computing device to perform actions comprising:
obtaining, by a companion application, metadata that is descriptive of data of a host application, where the host application is separate from and substantially unaware of the companion application; and
presenting, by the companion application, the obtained metadata in a user interface of the companion application.

### Claim 16 (depends on 15)

The at least one computer storage media of claim 15, the actions further comprising concurrently displaying the user interface of the companion application and a user interface of the host application that comprises a representation of the data.

### Claim 17 (depends on 16)

The at least one computer storage media of claim 16 where the concurrently displaying comprises displaying the user interface of the companion application and the user interface of the host application adjacent to each other.

### Claim 18 (depends on 16)

The at least one computer storage media of claim 16 where the concurrently displaying comprises modifying, in tandem and in response to a change in the data, the user interface of the companion application and the user interface of the host application.

### Claim 19 (depends on 16)

The at least one computer storage media of claim 16 where the concurrently displaying comprises presenting the user interface of the companion application and the user interface of the host application as a single user interface.

### Claim 20 (depends on 15)

The at least one computer storage media of claim 15, the actions further comprising monitoring, by the companion application, the data of the host application, where the monitoring comprises hooking, by the companion application, into the host application.
