IP Library Granted Patent US 8,108,787
Granted Patent B2
US 8,108,787 · App. 11/351,374 · Granted Jan 31, 2012

Distributing input events to multiple applications in an interactive media environment

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,108,787
App. No.
11/351,374
Granted
Jan 31, 2012
Kind
B2
Abstract

In an interactive media environment, input events are distributed to a plurality of applications where each application includes zero or more script components and zero or more markup files and has a Z order which corresponds to the position of the applications' visual elements on a display. An input event processing order is utilized where the application that has focus in an interactive media environment (by virtue of its receipt of user events) is provided with the first opportunity to consume the input event. If the focused application does not consume the input event, it is then delivered to the remaining applications in top down, inverse Z order. Each application is enabled with the ability to consume an input event, pass it on to lower Z ordered applications, hide it from lower Z ordered applications, or otherwise handle it. Input event processing stops when an application consumes the input event.

Claims (29)

1. A method for processing an input event in an interactive media environment, the method comprising the steps of:

maintaining a Z order for each of a plurality of applications running in the interactive media environment where the Z order describes a relative order for visual elements on a display, wherein each of said plurality of applications has the ability to consume an input event, pass it on to lower Z ordered applications, hide it from lower Z ordered applications, and otherwise handle the input event;

delivering the input event to the plurality of applications starting with an application having focus and following with remaining applications, by application, from highest to lowest Z order, wherein said input event may be delivered to more than two applications; and

terminating event processing once the input event is consumed by an application.

2. The method of claim 1 where the input event is selected from one of user events, system events, navigation events and application events.

3. The method of claim 1 where the consuming includes handling the input event.

4. The method of claim 1 where the consuming includes handling the input event and returning a false consumption indication so that the input event is delivered to applications with lower Z order.

5. The method of claim 1 where the consuming includes no handling other than returning a positive consumption indication to hide the input event from applications with lower Z order.

6. A method for processing an input event in an interactive media environment in which a plurality of applications are running, the method comprising the steps of:

maintaining a Z order for each of a plurality of applications running in the interactive media environment where the Z order describes a priority order for the applications, wherein each application is enabled with the ability to consume an input event, pass it on to lower Z ordered applications, hide it from lower Z ordered applications, and otherwise handle it;

posting one more workitems for the input event in an event queue; and

delivering the input event from the event queue to the plurality of applications in priority order, wherein said input event may be delivered to more than two applications.

7. The method of claim 6 in which a markup posts the workitem.

8. The method of claim 6 in which an interactive media playback system posts the workitem.

9. The method of claim 6 in which posting the one or more workitems includes inserting the one or more workitems into the event queue after marked workitems.

10. The method of claim 9 where time in counted in the interactive media environment using a sequence of ticks and the inserted one or more workitems are handled last for each tick.

11. The method of claim 6 where the input event is handled by a different application than an application which posts the one or more workitems.

12. A computer-readable medium, which when executed by one or more processors in an electronic device, performs a method for processing an input event, the method comprising the steps of:

maintaining a Z order for each of a plurality of applications running in an interactive media environment where the Z order describes a relative order for visual elements on a display, wherein each application is enabled with the ability to consume an input event, pass it on to lower Z ordered applications, hide it from lower Z ordered applications, and otherwise handle it;

delivering the input event to the plurality of applications starting with an application having focus and following with remaining applications, by application, from highest to lowest Z order, wherein said input event may be delivered to more than two applications; and

enabling an application to capture the input event.

13. The computer-readable medium of claim 12 in which an application capturing the input event handles the input event.

14. The computer-readable medium of claim 12 in which an application capturing the input event consumes the input event.

15. The computer-readable medium of claim 14 in which a flag is returned if the input event is consumed.

16. The computer-readable medium of claim 12 in which an application object handles the input event.

17. The computer-readable medium of claim 16 in which input event processing within an application proceeds as if the application and markup objects are in a single DOM with the application object on top.

18. The computer-readable medium of claim 12 in which a script processes the input event first followed by markup.

19. The computer-readable medium of claim 18 in which the input event moves up through an application object if the input event is not handled by markup.

20. The computer-readable medium of claim 12 in which markup accepts the input event if the markup includes an accesskey attribute that matches the input event.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034543/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 24, 2006
From: FINGER, JAMES C.; YOVIN, JOHN ANDRE; MAZHAR, KHURSHED; COLLE, OLIVIER; FREEMAN, ARTHUR WILLIAM JAMES
To: MICROSOFT CORPORATION
Reel/Frame 017362/0219 →