Understanding Mouse, Keyboard, Remote Control, and Touch Input

Users can navigate Windows Media Center using any of the following:

  • Mouse
  • Keyboard
  • Remote control
  • Touch screens

Mouse

For mouse control, users can hover over and select items within Windows Media Center (and a well-designed application will account for this model at all times). When a mouse is used to navigate, Windows Media Center displays navigation and transport controls that overlay the current experience to help users control their experience when using a mouse, as shown in the following figure:

The Windows Media Center UI with navigation and transport controls

Keyboard

Users can navigate the Windows Media Center UI using keyboard navigation. See Keyboard Shortcuts for a list of keyboard shortcuts.

Remote Control

Windows Media Center also accepts user input from anywhere in the room through a remote control device. This device looks like a standard remote control for a television or other home entertainment device and has buttons for several specialized Windows Media Center functions. The following figure shows a remote control designed for use with a Windows Media Center PC. The appearance of the remote control may vary from manufacturer to manufacturer. However, the core functionality is constant.

A typical Windows Media Center remote control.

The remote control interacts with an infrared sensor, which consists of the following hardware:

  • A receiver component that processes input from the remote control
  • A circuit for learning infrared commands
  • A universal serial bus (USB) connection that sends input notifications to software running on the computer
  • Two emitter ports

In addition, the sensor requires a device driver that supports the Plug and Play specification. A default driver is installed with the versions of the Microsoft Windows operating system that support the infrared sensor.

The USB cable enables users to place the sensor near the monitor so they can point the remote at the monitor when sending commands to the computer. Alternatively, the sensor might be mounted in the front panel of the computer by the manufacturer.

Input from the remote control is processed as follows:

  1. The sensor receives the signal and forwards it to a device driver on the computer.
  2. The device driver converts the input into a WM_INPUT, WM_APPCOMMAND, WM_KEYDOWN, WM_KEYPRESS, or WM_KEYUP message.
  3. Windows places these messages in the message queue to be processed by a program's main window procedure.
  4. The foreground program processes messages of interest. For example, a digital media streaming program could process the messages corresponding to the transport buttons (Pause, Play, Stop, Fast Forward, and Rewind) but ignore messages from the numeric keypad.

Touch

If users have a touch screen, applications can enable support for touch input by implementing the GesturePanHandler, GestureRatchetSettings, and GestureInertiaSettings elements. For more information, see Working with Input from Touch Screens.

Trapping Events

Applications can trap certain mouse, keyboard, and remote control events. How you trap remote control button presses depends on the application's implementation.

For Windows Media Center applications, you can trap remote control button presses using either the ShortcutHandler or KeyHandler element in Windows Media Center Markup Language (MCML).

For more information, see the following topics:

Topic Description
Required Remote Control Buttons Lists the remote control buttons that are required to appear on a Windows Media Center remote control.
Required Remote Control Buttons for Teletext Lists the remote control buttons that are required in locales that support Teletext functionality.
Optional Remote Control Buttons Lists the remote control buttons that are optional on a Windows Media Center remote control.
Keyboard Shortcuts Lists the keyboard shortcuts for navigating the Windows Media Center UI.

Sample Explorer

  • Input > all samples
  • Input Handlers > all samples

See Also