Windows Store for developers blog
Windows 8 app developer blog
The Windows Blog
Inside SkyDrive blog
Download Windows 8 Release Preview
Windows Dev Center
Follow us @BuildWindows8
The //build/ conference
Windows 8 Release Preview forums
Windows 8 is a product we design for an incredibly broad spectrum of people around the world. One of the areas where we have worked to deliver an even greater level of innovation is in ensuring that Windows 8, particularly the new Metro style experience, is accessible to everyone regardless of their physical abilities. In this post we will talk about the engineering work that goes into the features we refer to as “accessibility” – though as you will see, many of these features are broadly applicable and just make the product better for everyone. If you are interested in Microsoft’s overall efforts in accessibility and related topics, please be sure to check out www.microsoft.com/enable. This post is especially important for developers building Metro style apps for inclusion in the Windows Store, as we are asking you to test the accessibility of your application prior to submission. I encourage folks who have never seen these tools in action to learn about them through the video. The upcoming beta will be a great chance for everyone to experience the product. An important note. With the next public release of code (later this month) we will see a significant improvement in the capabilities described in this post, but we still have work to do between beta and RC especially with regards to working with the latest releases of third party tools. I just want to make sure folks know that this post talks about improvements in the next release as well as functionality that will still be improving as we get to the release candidate. This post was authored by Jennifer Norberg, a senior program manager lead on our HID team. --Steven
Windows 8 is a product we design for an incredibly broad spectrum of people around the world. One of the areas where we have worked to deliver an even greater level of innovation is in ensuring that Windows 8, particularly the new Metro style experience, is accessible to everyone regardless of their physical abilities. In this post we will talk about the engineering work that goes into the features we refer to as “accessibility” – though as you will see, many of these features are broadly applicable and just make the product better for everyone. If you are interested in Microsoft’s overall efforts in accessibility and related topics, please be sure to check out www.microsoft.com/enable. This post is especially important for developers building Metro style apps for inclusion in the Windows Store, as we are asking you to test the accessibility of your application prior to submission. I encourage folks who have never seen these tools in action to learn about them through the video. The upcoming beta will be a great chance for everyone to experience the product.
An important note. With the next public release of code (later this month) we will see a significant improvement in the capabilities described in this post, but we still have work to do between beta and RC especially with regards to working with the latest releases of third party tools. I just want to make sure folks know that this post talks about improvements in the next release as well as functionality that will still be improving as we get to the release candidate.
This post was authored by Jennifer Norberg, a senior program manager lead on our HID team.
We want all users to be able to experience Windows 8 Metro style apps on their desktops, laptops, or the new touch-capable devices. This includes people with disabilities who rely on assistive technologies to use the PC.
About 15% of the world's population has a disability1. In the United States alone, 49.6 million people have a disability2 and 45 million in Europe3. When it comes to interacting with computers, these disabilities affect individuals in a number of ways:
The rates of individuals with disabilities are also increasing across the world due to the aging population and increases in chronic health conditions. One of the consequences of the global aging phenomena is the impact it will have on the workforce. For example, in the US, workers aged 55 and older are anticipated to increase from 18.1 to 23.9 percent by 20185. That is more than one in five workers. Functional limitations as a result of aging (for example, presbyopia, the gradual loss of the eyes' ability to focus actively on nearby objects, a condition that usually becomes noticeable in one’s mid-40s and continues to worsen until around age 65) will impact an older workforce’s ability to use technology that isn’t easy to see. As a result, there will be an increase in the number of working-age adults who are likely to benefit from the use of accessible technology.
New technologies and designs are especially difficult for people with disabilities to adopt because many new technologies are not made accessible when they are first released to the public. We have heard this concern about previous versions of Windows and we want to ensure that everyone can experience Windows 8 right away by providing a comprehensive accessibility platform for the desktop and Metro style features.
Our accessibility goals in Windows 8 are to:
Each of these goals and audiences are discussed in detail in this blog.
Before we look forward, let’s look back on the history of accessibility in Windows. In past releases, we established a foundation called UI Automation (UIA). UIA is used by developers to provide information about their code, and it’s how assistive technologies (ATs) access and use the information from the developers applications.
We’ve also shipped ATs as components of Windows:
While these Windows ATs cover a range of impairments, Windows depends on the rich ecosystem of AT vendors to cover the broad diversity of disabilities, and fully supports innovation in the ecosystem. This does not change with this new release of Windows. While we have focused on improving the ATs that we provide as Windows components and are providing support for new scenarios like the Metro style UI, we are also continuing to provide a rich platform and ecosystem where AT vendors can thrive.
With each new release, we collate and respond to user feedback. It is clear that users want richer AT offerings to be included with Windows 8. In this release, we invested in the following areas to support this feedback:
We focused the above improvements specifically to address two key scenarios:
Narrator main screen to configure settings
In addition to addressing user feedback, a significant amount of work went into making sure that Metro style apps could also be accessible.
Making Windows accessible while features are being built is challenging, and doing this while introducing a whole new development platform is even more difficult. However, we wanted users with disabilities to enjoy Metro style experiences right away (compare this to the Win32 platform, which took many years and multiple releases to become accessible).
As a start, we updated our accessibility foundation with support for industry standards. By supporting standards from the Web Accessibility Initiative, Accessible Rich Internet Applications (ARIA), HTML5, and XAML, it is easier for developers to code accessibility into their applications and for the ATs using UI Automation to consume the information that makes accessibility scenarios work on Windows 8.
This is in contrast to previous releases, where AT vendors used different “creative” ways of getting information from the system, in order to manipulate it and present it to their users. While a variety of approaches can provide rich experiences for users, it also creates a problem when non-standard approaches have to change in a new release. This is why we needed to create a strong foundation within the platform that leverages the existing coding standards (to which developers should adhere), and that can also be consistent from release to release. AT developers who use the platform can then reliably get accessibility information and don’t have to do any special tricks or coding.
Diagram of developer, platform, and AT required to provide information to the user
With a consistent platform, developers of Metro style features within Windows can now leverage the standards and platform to ensure their components are accessible. While the features are designed, developed, and tested, we continually track the progress made towards accessibility. When we released the build for the Windows 8 Developer Preview, the team had been working on accessibility. However, we still had bugs that impacted High Contrast, keyboard navigation, and programmatic data for the ATs to consume. We are by no means done, and we continue to drive the accessibility requirements across the team to ensure we meet our goals. In each public release of Windows 8, you will see improvements being made in this area.
The Metro style UI is a new experience for Windows, and gives us an opportunity to present accessibility settings in a new way. This opportunity allowed us to simplify and optimize the key settings that people with disabilities depend on to manage their experience.
For example, we have a new way to toggle settings for high contrast, which is easier to discover and simpler to apply. We also made it easier to adjust the size of UI elements to be bigger, and take care of the DPI scaling settings for you, so you don’t have to manage it manually. We think simplifying these settings will help a large set of users.
With Metro style apps, developers have an incredible opportunity to improve the accessibility ecosystem by creating and selling apps that meet a baseline of accessibility.
Fortunately, developers don’t need to learn new technologies to make their apps accessible. We rely on existing standards to reduce the learning curve for building accessible apps. HTML apps rely on the public HTML5 standard, which includes ARIA (a markup schema designed for declaring accessibility information). Likewise with XAML apps, we use the well-known markup schema used by similar platforms like Silverlight and Windows Presentation Framework (WPF). Additionally, the dev platform and tools shipped for Windows 8 support making an accessible app through every step of the development process:
At this point you are probably thinking: how can these efforts possibly work for interactive games or HTML5 Canvas based apps? You’re right; there are still classes of apps in which implementing accessibility will be more challenging than just leveraging the tools and templates. To help address these cases, we will continue to work with the developer community, post custom solutions, and expand accessibility guidelines with more examples.
When developers build an application for Windows 8, they should follow this process and ensure their apps do the following to reach the accessibility community:
For more information, check out this //build presentation on creating accessible Metro style apps, and get started creating your own app.
Users will be able to set an accessibility filter in the Windows Store that will allow them to discover the apps that have been declared accessible by the developer. Additionally, users will be able to provide comments and ratings to help each other find the apps that are most accessible, and to help the developer understand how well they did in making their apps accessible
One of the most exciting changes in Windows 8 is the introduction of touch-only devices into the Windows family. And, as with all form factors that Windows supports, we want these new touch-only devices to be accessible. As a result, we spent a considerable amount of time planning what it would take to make our Windows ATs useful on touch-only devices, mainly through the adaptation of the Magnifier and Narrator features.
Magnifier can be used in different ways, but one of the most popular ways to use it is with keyboard shortcuts (Windows logo key + and Windows logo key -). However, on a touch-only device, you don’t have the keyboard available to input shortcuts, so we had to figure out how to make Magnifier work well in this scenario. We wanted to create a touch-based solution that was simple, fast, and unobtrusive. If you’ve used Magnifier before, you may have experimented with different modes in Windows 7. We chose to focus on full-screen mode for touch because of the data we gathered through the Customer Experience Improvement Program, which showed full-screen mode was the most commonly used. It’s also the best mode to leverage touch gestures because it spans the whole screen.
One of the great benefits of using touch is that you can directly interact with everything on your screen. There’s no need for separate devices like a mouse and keyboard – just touch exactly what you want. The downside we’ve heard from users who rely on magnification is that it can be hard to see and touch simultaneously because your hand is on the screen and it blocks you from seeing what’s behind it. But the entire goal of Magnifier is to help users see the screen – not to hinder. Therefore, one of our design principles for touch-enabled devices was to make sure that you can control Magnifier entirely from the edges of the screen.
When you start Magnifier on a touch-enabled device (in the Ease of Access panel, set Magnifier to start when you press the Windows logo key + Volume up), you will immediately notice a border that appears around the edges of the screen. We know you will need to access all areas of the screen, so we made it easy to move the Magnifier around the screen using these borders. Simply drag your finger along the border to move Magnifier in that direction. When the border disappears, you are at the edge of the screen.
Drag your finger along the border to move around the screen. Borders disappear when you reach the edge of the screen.
The plus (+) and minus (-) buttons in the corners allow you to zoom in or out. We also built in support for multi-touch zoom using these same borders. Moving two fingers closer together or farther apart on the border allows you to quickly change the zoom level.
When you are zoomed in, sometimes it’s confusing to know where you are on the screen. To remedy this, Magnifier has a preview feature that shows you exactly where you are in the context of the entire screen. Activate this by tapping with a thumb or finger on opposite borders at the same time. The preview will zoom out to show you exactly what part of the screen you’re on, then it will zoom back in to your current location.
Tap on two opposing borders at the same time. Full screen preview highlights where you are on the screen.
You can even drag the highlighted region while it’s zoomed out to move the Magnifier around the screen.
Most importantly with Magnifier, you don’t need to change the way you interact with your device to use it with touch. Once it’s turned on, it will work with all of your apps. For users with low vision who have trouble seeing their devices, Magnifier makes it easy to see the screen and touch it, too.
In Windows 8, Narrator has been redesigned to be substantially faster and support many new features. To support Narrator on touch-only devices we’ve implemented a standard way to launch Narrator, by holding down the Windows logo key and pressing the Volume Up button. Once Narrator is running, you can use Narrator’s built-in touch commands to explore the screen and control your device.
If you’re blind, then the challenge with touch is that there’s no way to find something on the screen without activating it. On a Windows 8 device, Narrator addresses this challenge by allowing you to drag a single finger around the screen. Narrator will read what is under your finger but won’t activate it. Users with vision will notice that the Narrator cursor will follow your finger as well. We refer to this as “exploring.” A good way to understand this is to imagine there is a sheet of glass on top of your screen – Narrator will allow you explore what is underneath by touching the glass but without touching the screen directly. Once you’ve found the item you’re looking for by exploring with a single finger, you can activate it by tapping anywhere with a second finger.
Your browser doesn't support HTML5 video. Download this video to view it in your favorite media player: High quality MP4 | Lower quality MP4
These are just two examples of ATs that are shipping with Windows 8 and that are now optimized for touch-only devices. There are many other improvements across all the Windows 8 ATs, but we will save that to discuss at a later time.
There are many scenarios and a wide range of impairments to cover, and so we’ve engaged and partnered with AT vendors to ensure we are creating the best and most comprehensive experiences for the disability community. The assistive technologies that ship in Windows 8 will work across both the desktop and Metro style UI experiences, to provide seamless access to the PC. People who need advanced AT features may need or want to purchase solutions from specialty Assistive Technology vendors (AT vendors) to meet their specific needs.
AT vendors create sophisticated ATs that can provide richer experiences to the disability community. For example, they may provide in-depth support for specific applications and for legacy applications. The ATs shipped in Windows may not work well with apps that do not support industry standards or platform technologies, including for example, legacy applications that do not implement UIA.
In Windows 8, we invested heavily in building the foundation for the new Metro style UI and adopting the industry standards that will benefit application developers, ATs, and the disability community.
By providing a standardized way of getting the information, ATs can work with the standards that app developers are used to, but more importantly, AT vendors can rely on these standards to be supported through multiple Windows releases, to ensure their ATs don’t break with each release. Since the //Build conference, we have partnered with leading AT vendors to help them get started with Windows 8. This has included support for previously used mirror drivers and UIA support.
We continue to sync up with the AT vendors to ensure that their questions are addressed, and we are working toward the common goal of an accessible Windows 8.
Windows 8 has been an incredible opportunity for us to improve our accessibility support. Not only have we evolved the platform, we have introduced new opportunities for developers to broaden their application’s reach into the disability community. We have also focused a lot of attention on the ATs that are included with Windows 8, not only improving performance and language support, but also enabling new form factors including touch-only devices. We continue to be very committed to a rich and innovative third-party ecosystem, and with more standardized and consistent interfaces, we hope to help the ecosystem continue to innovate on Windows.
If you are a user with accessibility needs, we think you will like what we have done. If you are a developer, build an accessible app and reach a larger spectrum of users! If you are an AT vendor, come work with us and refresh your applications using our platform. This is an exciting and compelling release that will change how people of all abilities interact with PCs.
There is still work to be done in Windows to meet all the accessibility needs, but we would like to encourage people to try out the Metro style experiences with our free, updated Windows 8 ATs.
-- Jennifer Norberg, Lead PM, Human Interaction Platform team