Surface Dial for Dev’s

Posted by

This post has been republished via RSS; it originally appeared at: Channel 9.

Since we're doing something like a Surface Dial Theme week, thought I'd close out the week with this guidance from the Windows Dev Center on the Surface Dial

Surface Dial interactions



Windows Wheel devices, such as the Surface Dial, are a new category of input device that enable a host of compelling and unique user interaction experiences for Windows and Windows apps.


In this topic, we refer specifically to Surface Dial interactions, but the info is applicable to all Windows Wheel devices


With a form factor based on a rotate action (or gesture), the Surface Dial is intended as a secondary, multi-modal input device that complements input from a primary device. In most cases, the device is manipulated by a user's non-dominant hand while performing a task with their dominant hand (such as inking with a pen). It is not designed for precision pointer input (like touch, pen, or mouse). +

The Surface Dial also supports both a press and hold action and a click action. Press and hold has a single function: display a menu of commands. If the menu is active, the rotate and click input is processed by the menu. Otherwise, the input is passed to your app for processing.

Developer guidance

You can customize the Surface Dial experience to complement the functionality in your apps through a comprehensive set of Windows Runtime APIs. +

As previously mentioned, the default Surface Dial menu is pre-populated with a set of built-in tools covering a broad range of basic system features (system volume, system brightness, scroll, zoom, undo, and media control when the system detects ongoing audio or video playback). However, these default tools might not provide the functionality required by your app. +

In the following sections, we describe how to add a custom tool to the Surface Dial menu and specify which built-in tools are exposed.


Custom interactions

As mentioned, the Surface Dial supports three gestures (press and hold, rotate, click) with corresponding default interactions.



This topic provides an overview of the Surface Dial input device with UX and developer guidance on how to customize the user experience for off-screen scenarios as well as on-screen scenarios when used with Surface Studio.


Related articles

API reference

Universal Windows Platform samples (C# and C++)+

Windows classic desktop sample

..." [Click through to read the whole article... it's a long one, so you're going to want to read the entire thing]