your Windows® embedded community
References and resources discussed here are listed at the end of this paper.The current version of this paper is maintained on the Web at http://www.microsoft.com/whdc/device/input/slate-pc-design.mspx.
Windows 7 introduced Windows Touch, making PCs more intuitive, natural, and fun. By supporting multitouch technology, Windows 7 opened up a world of possibilities for hardware and software developers. The PC ecosystem has adopted multitouch rapidly, with a myriad of touch implementations for notebooks, all-in-one devices, touch-enabled monitors, and now slate PCs.
Touch enhancements make Windows 7 a compelling operating system for slate PCs. Windows 7, Windows Live, and Windows Internet Explorer 8 feature significant investments in optimizing touch experiences. Beyond native platform support for multitouch applications, the new taskbar in Windows 7 simplifies launching and switching between programs and touch gestures enhance overall user experience and web browsing.
Slate PCs are primarily recommended for consumption of information, services, and content available on the Internet. Windows 7 supports core usage scenarios for slate PCs including web browsing, communication, social networking, media consumption (including music, video, and TV), casual gaming, location-based services, and reading.
Success in delivering these scenarios requires a product that meets customer expectations for ease of use, performance, battery life, weight, screen size, resolution, security, and reliability. The combination of Windows 7 Home Premium, Windows Live, and innovative PC designs at competitive price points delivers the best experience for customers.
This document provides guidance for OEMs that want to take full advantage of Windows on slate PCs, by addressing the following topics:
When a compatible digitizer is available to the Windows 7 Home Premium, Professional, Enterprise, or Ultimate editions, the operating system detects the digitizer and automatically adjusts its settings to provide a better touch experience for the user. Table 1 summarizes the extensive touch capabilities in Windows 7.
Feature | Touch Capability | Description |
Platform | Tap/DoubleTap | Tap/DoubleTap to select and open. |
Platform | Panning/Scrolling | Panning/scrolling withinertia in applications with scroll bars (one or two fingerpanning). |
Platform | Zoom | Zoomin any application that supports zoom, by using CTRL + scrollwheel. |
Platform | Right-click | Pressand Tap and Press and Hold to right-click an item. |
Platform | HighDPI | Changeto High DPI (120 pixels per inch) to display user interfaceelements that are easier to see and touch accurately. This isconfigurable by OEMs and end users. |
Platform | Flicks | Flickto move forward or backward (navigational flicks); alsocustomizable for other uses (for example, copy, paste, and undo). |
Taskbar | Drag | Dragup on taskbar icons to open Jump Lists; increased spacing betweenlines for touch. |
Taskbar | Pressand Drag | Pressand Drag on preview thumbnails to Peek into the windows (same ashovering over thumbnails with the mouse pointer). |
Taskbar | Largerbutton | ShowDesktop button is larger ontouch-enabled PCs. |
Taskbar | Pressand Hold | Pressand Hold on the Show Desktop button to Peek at the desktop (same as hovering with the mousepointer). |
Touchkeyboard (Tablet PC Input Panel) | Textprediction and multitouch input | Resizablesoft keyboard that supports text prediction and multitouch input. |
Touchkeyboard (Tablet PC Input Panel) | Discoverable | TheTouch keyboard sits on the left side of the screen; tap or dragout over the icon to reveal the keyboard. An in-place launchtarget also appears next to the text box when you set focus withtouch. |
WindowManagement | AeroSnap | Easierwith touch; no need to go all the way to the edge of the window toactivate. |
WindowManagement | AeroShake | Touchthe window's title bar and shake the window to minimize all otheropen windows behind it. |
WindowManagement | Window-boundaryfeedback | Contentof window bounce when you reach the end of the scrollable pagewhile panning. |
WindowsPhoto Viewer and Windows Live Photo Gallery | Gesturesupport | Zoom,Rotate, and Pan. Photo Gallery editor and date view havehigh-quality touch experiences, such as rotate animations. |
WindowsExplorer | Gesturesupport | Gesturesupport in preview pane, and zoom through views and thumbnails. |
Calculator | Largebuttons | Touch-friendlybutton size. |
SnippingTool | Snipping | Usefingertips to select area to snip. |
Magnifier | Navigation | Touch-enablednavigation controls for all modes. |
Paint | Touch-friendlyRibbon user interface (UI) | RibbonUI includes more touch-friendly control and buttons sizes. |
Paint | Touch-friendlycolor picker | Touch-friendlycolor picker enables easier color selection. |
Paint | Multitouch | Multitouchbrush support enables all brushes support multitouch painting. |
WindowsInternet Explorer 8 | Tap tomagnify | It isdifficult to tap a link on a webpage accurately, especially if thelink is surrounded by many other links. You can use two fingertipsto tap anywhere on the page to instantly zoom in on that spot.Next, tap the link with one fingertip, which is easier when thelink is magnified. When the new webpage opens, it automaticallydisplays in normal size. |
InternetExplorer 8 | Choosehow much to zoom | Toincrease the zoom level, place two fingertips on the screen andmove them apart. The page appears increasingly larger as youseparate your fingers. To shrink the page, place two fingertipsapart on the screen and pinch them together. |
InternetExplorer 8 | Closetabs | It isdifficult to precisely tap the CloseTab button with your fingertip,to close a browser tab. On a touchscreen, the active area aroundthe button is larger and more forgiving. |
InternetExplorer 8 | Flickforward or back | Navigateback: Place fingertip on the page and flick it to the right, as ifflipping backward through the pages of a book. Navigateforward: Flick the page to the left, as if you are brushing it offthe left side of your screen. Whenyou flick forward or back, Internet Explorer momentarily shows asmall preview of the page that is about to open before the pageopens to the full-sized view. |
InternetExplorer 8 | Spacebetween links | InternetExplorer detects when the user uses a fingertip instead of a trackpad or mouse. If you tap the AddressBar or open your Favorites listwith a fingertip, Internet Explorer widens the spacing between thelinks. Wider spacing makes it easier to tap the desired link. |
InternetExplorer 8 | Open alink in a new tab | Toopen a link in a background tab, you can place your finger on alink, drag it off of its home spot, and release it. |
InternetExplorer 8 | Panning | Youcan place one fingertip on a long webpage and flick to scroll upor down quickly; or keep your fingertip on the screen and slowlypush the page up or down to move the page slowly. |
InternetExplorer 8 | Panning | If awebpage is too wide to fit in your browser window, you can placetwo fingertips on a webpage, hold them there, and drag the pageright or left. |
WindowsMedia Center | Panning | Directpanning in Start menu and galleries (Pictures, Movies, Music, and more). |
WindowsMedia Center | Touchseek-bar | Largecontrol with thumbnail peek into the video that is playing. |
WindowsMedia Center | Largercontrols | Touch-sensitivecontrols with larger targets for touch. |
WindowsMedia Player | Scrolling | Smoothscrolling through albums, artists, and song lists. |
WindowsMedia Player | Dragand drop | Dragand drop to create playlists. |
WindowsMedia Player | Largertouch targets | Largertouch targets for shuttle controls (volume slider, stop, play)make them easier to interact with using touch. |
XPSViewer | Smoothgestures | Smoothzoom response to pinch and stretch gestures. |
XPSViewer | TwoFinger Tap | Smart zoom,which enlarges text as a result of a two-finger tap. |
XPSViewer | Thumbnailview | Thumbnailview is touch interface enabled, with zoom support. |
WindowsGames | Increasedresponsiveness | Increasedresponsiveness for moving cards and tiles with touch. |
Windows Games | Increased spacing | Increased spacing of cards. |
In addition to the capabilities listed in Table 1, slate PC manufacturers can use and customize the following Windows assets to optimize the user experience:



In Internet Explorer 8, the user can optimize the touch experience by switching to large icons. This setting can be changed by the user, but they may not realize it is possible, or find the feature on their own.
This section describes hardware requirements for slate PCs that OEMs must consider in addition to the Windows 7 PC requirements.
Hardware requirements
To deliver a high-quality product that will delight customers, you need to select the right hardware components and software image.
The digitizer technologies that enable natural and intuitive gestures are revolutionizing human-computer interaction and heralding a new era of natural user interfaces. Consumers expect the multitouch experience to be effortless, intuitive, and consistent.
For this to occur, every component in the technology stack must be responsive, robust, and tuned to work in the ways that real people interact with touch screens. The strict and sometimes complex demands of the user experience affect the hardware level the most, because the user interacts first with the digitizer. Behind every touch that the digitizer detects is a user who has very high expectations and a very low tolerance for dubious quality.
The Windows Logo program for Windows 7 ensures that solutions on the market meet the minimum expectations of users and provide a successful touch experience across applications and environments of use. The logo requirements that are relevant to slate PCs are listed later in this document.
In addition to the Windows Logo requirements, OEMs can provide a differentiated experience through hardware and software design, as listed in the following sections.
Human factors and ergonomics
To increase the usability and comfort of slate PCs, we recommend the following guidelines:
Digitizer logo requirements
To ensure a high-quality user experience, digitizer devices must meet the following logo requirements:
For additional touches on a stationary contact point, the contact position reported must be within .5 mm of the target point. For additional touches that trace a line, circle or other predetermined pattern, the contact data reported must be within .5 mm of the target pattern, with an offset from the pattern that varies no more than 2 mm for every 10 mm of travel, and without interruption to the pattern.
Recognition of gestures for pinch and rotate relies on fast and accurate location reporting. This also applies to the standard interaction gestures, such as panning, scrolling, and dragging. Applications will develop new customized gestures and movements that depend on high accuracy and response rates.
Digitizer implementation guidance
Follow these guidelines for a digitizer device:
Hardware design recommendations
For the best user experience, consider the following items when you design your slate PC hardware:

System architecture recommendations
Consider the following items when you design the system architecture of your slate PC:
Touch application design recommendations
This section provides background and guidance for designing touch applications for slate PCs.
Touch optimization principles
Touch experiences must appear inviting and simple, while behaving in a way that is forgiving and responsive. As with any user experience, aesthetics are critical, but touch experiences combine both aesthetic and practical requirements.
These additional requirements present design challenges that can be addressed by the following touch optimization principles:
In an inviting experience, the user feels confident about trying new things without fear of making mistakes or causing errors. If the user interface (UI) is simple, the user can focus on exploring and learning without being inundated with demanding tasks or overly complex designs. In many cases, touch support is added to an existing user experience and the UI contains legacy elements, such as scroll bars, that are not optimized for touch experiences. In the worst-case scenario, the scroll bars do not support touch. In the best case scenario there are no scroll bars, which invite the user to try panning instead.
A forgiving UI is one that lowers the need for precision and makes tasks easier. Touch makes it difficult to target small items, which are commonplace in traditional mouse and keyboard scenarios. The fingertip obscures the target, unlike a small, unobtrusive cursor. If a task is too difficult to perform with touch, the user becomes frustrated.
Responsiveness is critical in a touch environment, because touch must feel direct. When the user touches the screen to make something happen, there must be an immediate visual response. Without feedback, the user is likely to believe that they missed the target, so they touch it again, or repeatedly touch it until it responds.
Direct manipulation occurs when touch contacts directly manipulate on-screen content. Users control the user interface with their fingers to move content (panning), adjust scale (pinch/stretch), or rotate content. Users expect to touch what is displayed on-screen and control it easily, similar to picking up an object and moving it; because of this user expectation, the visual interface must present an immediate, precise response that is authentic.
As obvious as this may seem, direct manipulation presents several challenges, such as the need for smooth animations and physics, and visual considerations for the challenges that result from using a hand and fingers that cover large parts of the screen.
GesturesGestures are touch actions that are one step removed from direct manipulations. Typically, gestures are mapped to common operations like keyboard shortcuts. Gestures are ideal to invoke secondary actions and functionality on content. Touch in Windows 7 is designed for consistency throughout the experience. This requires the use of consistent gestures across Windows applications. The user would become confused and frustrated if a commonly used gesture did not work as they expected.
Windows 7 design principles
We believe the strength of Windows is in the openness as a platform, and success relies on the richness and variety of the software that runs on Windows. At the same time, various feedback channels tell us that the overall experience of using a PC can be perceived as complex and inconsistent, for a wide variety of reasons. The Windows 7 Design Principles describe our approach for designing the user model and experience for Windows 7. OEMs can also apply these principles to their decision-making process for the software that they distribute with slate PCs.
This section describes the key Windows 7 Design Principles that apply to slate PCs. We placed special emphasis on full-screen applications and design considerations for how these applications interact with Windows.
Good applications provide innovative, clearly purposed, well-designed experiences that leverage what Windows does best: launching, switching, configuring, and servicing the breadth of scenarios that people expect from a Windows PC. The Windows UI provides users with access to a wide variety of objects necessary for running applications and managing the operating system.
The Shell Developer's Guide provides conceptual material about how the Shell works and how to use the Shell's API in your application. The Shell Reference section documents programming elements that make up the various Shell APIs. Shell SDK Samples provides links to Shell samples. Most samples can be downloaded from MSDN Code Gallery. All samples are included in the Windows SDK.
Telemetry research has shown that PC users spend as much as 19% of their time in the Windows shell. This includes time in the Start menu, browsing files, and in the Control Panel. Replicating even a small subset of that functionality in a Shell application does not provide an enhanced experience for customers. Consumers are typically required to do many tasks in Windows, and it is hard to define clear boundaries between the Shell application and Windows. This approach tends to create frustrating experiences by introducing new concepts and making usage more complicated.
Building great applications for Windows is the best way to showcase slate PCs.
Small aspects of touch experiences have a major impact, when they are critical to primary tasks or used frequently. If done well, small things can create touch experiences that delight the user. Windows 7 includes many new features that enable OEMs to differentiate their touch applications.
The Tablet PC Input Panel has different modes, and the Tablet PC Input Panel APIs enable customization of launch and placement settings, as follows:
Delivering on the promise of enticing visual experiences is critical with touch. Regardless of the aesthetic appeal, it is detrimental to present visual experiences that do not respond to touch. Ideally, the user is presented with a UI that invites them to touch, and with contextual tasks that are optimized for touch input.
The Microsoft Touch Pack for Windows 7 includes sample touch applications and games that embody these principles. For example, the Surface Globe application is immersive and designed for touch exploration. The UI anticipates what the user wants to do next, and the user's direct manipulation and gestures enable quick and easy navigation.
Windows 7 also includes native support for sensors to create environmental awareness in Windows applications. Such sensors include location sensors (such as GPS devices), ambient light sensor, and temperature gauge. Location sensors can unlock new opportunities for location-based services. For more information on working with sensors, see the Sensor API.
The new Windows Touch APIs support rich gestures, such as pan, zoom, and rotate. All gestures should provide direct visual feedback, and enable interaction with underlying content in a natural and intuitive manner.
The Windows 7 Touch guidelines offer detailed information on how to develop a touch-optimized application, as well as how to make the most of existing applications. An application is considered touch-optimized when it has been specifically designed for touch, which means:
By using built-in Windows controls and APIs, applications can comply with these guidelines with minimum effort. The controls in Windows respect scaling, accessibility, and are designed for touch. For instance, the Windows Ribbon framework is a rich command-presentation system that provides a modern alternative to the layered menus, toolbars, and task panes of traditional Windows applications.
To provide a highly accessible UI, the Ribbon framework implements Microsoft Active Accessibility. By automatically populating relevant Microsoft Active Accessibility properties with valid and helpful information, the framework reduces the burden on developers to provide an inclusive experience for all users. In addition, the Ribbon framework is a Windows feature and, as such, is localized for all languages that Windows supports. Developers, however, are responsible for localizing their own specific application resources.
Another key benefit of using built-in Windows functionality is evident in web browsing. Windows Internet Explorer 8 provides a number of security features in a touch-optimized browser. Among the security features are protected mode, anti-phishing safeguards, malware protection, tab isolation, and regular security updates. Replicating this functionality on top of Internet Explorer's rendering engine, WebOC, can be very costly. The WebOC rendering engine provides the basics for rendering Web pages, but it is not designed to be an all-inclusive platform for a modern, trustworthy browsing experience.
For more information about security in WebOC, please see the MSHTML Host Security FAQ: Part I and Part II.
Value-added applications are an important aspect of OEM differentiation. However, poor application performance can have a negative perception of the system. It is important to thoroughly test each application against the specific hardware and software configuration of any given system. In addition to the system fundamentals, follow these application-performance recommendations:
Windows incorporates a single, coherent design that accommodates the range of things that people need to do on a PC, including configuration, launching and switching between programs, browsing for and managing files, device management, logon, account management, and task management. Out of the box, customers expect things like customization, personalization, and multiple-language support. It is important that applications do not insulate users from those important activities by jumping straight into a full-screen application experience.
In the design of each of these areas of Windows, we put significant thought into the design of the overall experience. For example, if a critical update is available for Windows or a driver, the Action Center notifies the user through the notification area. This is the same way that Windows notifies the user of other important information: power status, network status, current volume, and so forth. These notifications and the UI used to present them ensure that a range of frequent and important tasks are never more than a few clicks away. The Windows desktop UI is optimized to support rich, interconnected scenarios like this.
Presenting users with full-screen applications can disrupt many of these user scenarios. It is important to recognize that users will have a need to get back to Windows to perform additional tasks. Full-screen applications that do not provide standard controls such as close buttons are prone to creating user confusion and dissatisfaction. For example, Windows 7 includes Windows Media Center, which offers a great touch-enabled experience for media consumption. Windows Media Center can be launched and switched to just like a standard application, but it can also be configured to temporarily operate in full-screen mode.
While Windows Media Center offers an immersive experience in its full screen mode, it allows users to easily go back to the Windows desktop for required operating system tasks such as connecting to a wireless network or installing updates. It is important to recognize that these immersive experiences can never accomplish all user tasks and should not lock users away from the Windows desktop.
Consumers will buy slate PCs based on how they look as well as what they are capable of doing. In order to deliver the full range of scenarios that a customer expects, it is important that applications leave enough system capacity available for users and their applications. Give careful consideration to the impact that an application has on the boot experience, power efficiency, and system responsiveness. OEMs should test systems with all preinstalled software and ensure that:
Additional logo considerations
Windows Touch is an If Implemented logo requirement. It requires that the digitizer pass the Windows Touch logo requirements (Logo input-0006 for pen/single touch and Logo input-0046 for multitouch) as a standalone device as well as within system logo. Testing at both the device and system levels helps ensure that performance is not compromised during integration into a PC system.
The following hardware logo requirements represent additional considerations for slate PC form factors. This is a summary list, based on the current logo requirements, and may not be all inclusive.
Requirement ID | Requirement title | Notes |
GRAPHICS-0020 | Displayadapter or chipset complies with Direct3D 10 and DXGIFeature sets | DirectX 10is required for mobile devices with screens larger than10.2 inches. DirectX 9 is required for systems with ascreen size up to 10.2 inches. |
INPUT-0012 | Tabletsystems implement buttons using a HID-compliant mini-port driverand include a dedicated security button. |
|
SYSFUND-0003 | Systemexposes a debug interface that complies with Debug Portspecification. |
|
SYSFUND-0043 | Systemshave user-accessible, fully powered USB 2.0 ports. | Notrequired for systems with screen sizes up to 10.2 inches. |
SYSFUND-0046 | Systemsare capable of starting the Aero theme. |
|
SYSFUND-0062
| System is capable of playing High-Definitioncontent with no perceivable glitch during playback. | Not required for systems with screens up to10.2 inches. |
Call to action
Review the requirements and consider the recommendations to build a slate PC that presents an end-to-end touch optimized experience. Overcoming the challenges presented by slate PC hardware is critical to delivering a top-quality touch experience. In addition to the Windows 7 User Experience design principles, consider touch optimizations that make the difference between an application with touch support compared to an application that was designed to work best with touch.
We are eager to work with the touch hardware and software ecosystem to deliver a high-quality user experience with Windows 7. The resources below provide comprehensive implementation guidance.
Title | Location |
Introductionto Windows Touch | |
Howto Design and Test Multitouch Hardware Solutions forWindows 7 | http://www.microsoft.com/whdc/device/input/touch_Design-Test.mspx |
DeveloperEnhancements to Windows Touch and Tablet PC | http://www.microsoft.com/whdc/device/input/touch_tab_enhance.mspx |
DigitizerDrivers for Windows Touch and Pen-Based Computers | http://www.microsoft.com/whdc/device/input/DigitizerDrvs_touch.mspx |
Howto Enable USB Selective Suspend for Human Interface Devices | |
Multi-Touchin Windows 7 [WinHEC 2008; 5.3 MB] | http://download.microsoft.com/download/5/E/6/5E66B27B-988B-4F50-AF3A-C2FF1E62180F/MBL-T527_WH08.pptx |
Multi-touchDriver Development [WinHEC 2008; 3.1 MB] | http://download.microsoft.com/download/5/E/6/5E66B27B-988B-4F50-AF3A-C2FF1E62180F/MBL-T528_WH08.pptx |
Multi-Touch:Designing and Testing for Logo Compliance [WinHEC2008; 1.2 MB] | http://download.microsoft.com/download/5/E/6/5E66B27B-988B-4F50-AF3A-C2FF1E62180F/MBL-T529_WH08.pptx |
CodeMagazine: MultiTouch Capabilities in Windows 7 | |
WindowsTouch on MSDN | http://msdn.microsoft.com/en-us/library/dd562197(VS.85).aspx |
WindowsTouch Developer Resources | |
WindowsUser Experience Interaction Guidelines | |
Tabletand Touch SDK | http://msdn.microsoft.com/en-us/library/ms704849(VS.85).aspx |
SensorDevelopment Kit for Windows 7 | |
WindowsOEM Preinstallation Kit (OPK) | Contactyour Technical Account Manager at Microsoft to gain access to OPKdocumentation. |
WindowsTouch Test Lab | http://www.microsoft.com/whdc/device/input/WindowsTouch_Test-Lab.mspx |
WindowsTouch Test Lab Logo Certification Testing Procedure | |
EngineeringWindows 7 Blog: Touching Windows 7 | http://blogs.msdn.com/e7/archive/2009/03/25/touching-windows-7.aspx |
EngineeringWindows 7 Blog: Ink Input and Tablet PC | http://blogs.msdn.com/e7/archive/2009/04/23/ink-input-and-tablet.aspx |
Introducingthe Microsoft Touch Pack for Windows 7 |
Copyright (c) 2010 Microsoft Corp. All rights reserved. Reproduced by WindowsForDevices.com with permission.