Notes on comments.
Welcome to our blog dedicated to the engineering of Microsoft Windows 7
Happy Birthday Windows! Given all the interest in the most used user-interface of Windows we thought it would be good to take a look back and see how we got to Windows 7. --Steven
We were very excited to unveil elements of the Windows 7 desktop at this year’s Professional Developers Conference (as seen in the Welcome to the Windows 7 Desktop session, among others). In previous posts (User Interface: Starting, Launching, and Switching and Follow-up: Starting, Launching, and Switching) we looked at the history, anatomy and areas for improvement of the taskbar. In this post, we will continue the conversation. Don’t let looks fool you though—the UI may feel new to Windows for some of you or old hat for some of you, but rest assured it represents a careful evolution that strives to address customer feedback while retaining its familiar Windows DNA.
It was 23 years ago on November 20, 1985 when Windows first shipped. As it just so happens, this first Microsoft graphical shell actually holds relevance to this post as it surfaced one of the industry’s first taskbar-like concepts.
Fig 1 Windows 1.01: Icons at the bottom of the screen represent running windows
Windows 1.0 supported zoomed (full-screen), tiled and icon (minimized) windows. Since there was no support for overlapping [that big debate between charless and billg, Steven], a dedicated portion of the desktop was kept visible at the bottom of the screen to surface non-tiled and non-zoomed windows. By minimizing a window or dragging it to the bottom of the screen, the person was able to populate this rudimentary taskbar with a large icon corresponding to the running window. She could then get back to this window by clicking or dragging this icon to the desktop. As simple as this mechanism seems today, it cemented an important concept that is with us even in Windows 7—when people switch between tasks, they are really switching between windows. Although it took Windows 95 to introduce a mature taskbar with launching, switching and notification functionality, the experience of surfacing and switching between windows via a dedicated region at the bottom of the screen is as ancient as Windows 1.0.
In the previous taskbar posts, we discussed some high-level principles we defined after digesting the mountain of data and feedback on the taskbar. Here’s a more detailed look at the goals we identified and how we began to frame feature concepts.
It is easy to get to the programs and destinations you use all the time, with less mouse movement and fewer clicks.
Accessing commonly used programs within a single click required us to enrich Quick Launch by increasing its presence on the taskbar and making more top-level room for pinned items. We began looking into how Quick Launch interacted with the taskband and how launching and switching were sometimes separate and other times duplicative. For example, almost all single-instance programs in Windows interpret an attempt to re-launch them as a switch if they are already running. So, clicking Outlook’s icon in Quick Launch would merely switch to the program if it was already running and present in the taskband. To make room for more items on the taskbar, we knew we had to remove some of the redundancy and free up valuable real-estate.
When researching and modeling a person’s workflow, we came to realize that there were three basic steps that a person frequently seems repeats. First, she finds the program and launches it. Then, she uses the program’s UI to open a file she wants to work on. Then finally, she gets to work. We asked ourselves whether we could help people jump directly to these items by skipping the first two steps. We called these files, folders, links, websites and other items that programs create or consume “destinations” as they represent where the person is ultimately is navigating to. We decided that these destinations should also be easily accessible from the taskbar. However, for real success and adoption, we needed to think through how destinations could be effectively surfaced to the person without the need for manual customization or by requiring developers to do lots of work.
You can switch to the right window quickly without mistakes and effortlessly position windows the way you want them.
This goal spoke to the very heart of the taskbar—the ability to switch between windows. This challenged us with seeking a more predictable method of surfacing windows on the taskbar, meaningful use of text and a reliable method of helping people consistently switch with confidence. We’ve had text on the taskbar for years and Vista introduced thumbnails, but customer feedback informed us that there was room for improvement. Interestingly, we found inspiration in old features such as Windows XP’s window grouping and Alt-Tab’s visual layout of individual windows.
During our investigation, we also spent time looking into why a person would switch windows in the first place. Two interesting scenarios emerged—one in which she needs to get some information from a window (e.g. getting a phone number) and to interact with a window’s options (e.g. controlling background music). We wondered whether we could address these task switching cases in a novel way—by actually removing the need to switch completely.
The desktop reflects your style. You get to personalize the experience, choosing what is important to you, including how and when you receive notifications.
By far the biggest target of feedback, the Notification Area had to put control back in the hands of people. It was decided that instead of the opt-out model that required the person to clean up this area, we would start with a clean experience. Only system icons would appear by default and then people can to customize this area to their liking.
The desktop experience feels organized, lightweight, open and is a pleasure to use. Visuals and animations are delighters the first time and every time.
A successful product is more than the utility it serves—it is also an experience. From the very start we wanted the taskbar, and the desktop as a whole, to draw an emotional response from the person. This required a set of scoped delighters that demoed well and retained their appeal over time. We began to define a personality for the UI using terms such as “glass and energy,” Chi, authenticity and many others. These investigations helped define a visual and animation language that we could then apply to several aspects of Windows 7. Expect a future blog post that delves much deeper into this important design process—much of which Sam discussed in his PDC session.
The Windows 7 taskbar is about launching with ease, switching with confidence and all the while remaining in control. The UI is made up of several key features that complete common end-to-end scenarios. Let’s dive into each of these elements and how they work.
The taskbar has undergone a facelift. We’ve enabled large icons by default (as seen in Windows 1.0 and also an option of Quick Launch since Windows 95 with IE 4). This affords a richer icon language, improves identification of programs and improves targeting for both the mouse and touch. Yet, one of the most important advantages large icons provide is a means to promote the taskbar as the central place to launch everyday tasks. We joke that the new taskbar is the “beachfront property of the Windows OS” and in turn, we are already seeing many people populating the UI with their commonly used programs. Somewhat if a visual trick, the taskbar is only 10 pixels (at 96 DPI) higher than its Vista counterpart (when used as a single row, since multiple rows are still supported, along with positioning around the screen edges).
Fig 2. The Windows 7 taskbar: Default settings include large icons, no text and glass surface
To mitigate its slightly increased height and the larger icons, we decided to impart the UI with a more prominent glass treatment. This also allows us to better showcase the person’s color preference (you’ll recall that in a previous post we revealed that almost 30% of sessions have personalized glass). We also changed the Vista behavior so that when a window is maximized, both the taskbar and the window’s title bar continue to remain open and translucent. We received lots of feedback on Vista that many people didn’t like these UIs turning opaque and dark.
You can still pin programs to the taskbar by dragging them or via a context menu, just like you have always done with Quick Launch. Destinations can also be pinned via a drag/drop, but they are designed to be surfaced differently as we’ll see under the Jump List section.
If one increases the size of Quick Launch, one must then determine what to do with the taskband. As previously discussed, we observed that under many scenarios of single-instance programs, launching and switching were equivalent. Hence, we decided to standardize this behavior and have program launchers turn into window switchers when they are launched. Effectively, we unified Quick Launch and the taskband. While some other operating systems have similar concepts, one difference with our approach is that our default experience always optimizes for a single representation on the taskbar. This means that regardless of a window’s state (e.g. minimized, maximized or restored) there are no new or duplicate buttons created. Also, the default taskbar doesn’t allow destinations to be pinned to the top-level which prevents duplication of a pinned file and a running window with that same file open. When we say there is “one button to rule them all” we’re serious. This approach to a single, unified button keeps the taskbar uncluttered and gives the person a single place to find what she’s looking for.
Combining launching and switching also made it easier to provide the most requested feature—the ability to move taskbar buttons. Quick Launch as always allowed this, but combining this mechanism with the taskband naturally extended rearrange functionality to running windows.
Vista showed thumbnails when the user hovers on a taskbar button and Windows 7 improves upon this design. Unlike Vista, these thumbnails are now an extension of their corresponding button so the person can click on these visual aides to switch to a given window. The thumbnail is also is a more accurate representation of a window complete with an icon in the top left corner, window text and even the ubiquitous close button in the top right.
Fig 3. Thumbnails: Grouped, interactive thumbnails make it easier to manage windows
One of the most important functions of the taskbar is to surface individual windows so people can easily switch between them. Having unified a program launcher and a single window switcher, the next logical step was to determine how multiple windows of a program could be combined and presented. We looked no further than a feature introduced in Windows XP called window grouping. When the taskbar became full, windows of a program could collapse into a single menu. However, there were a few challenges with the design. First, the behavior isn’t predictable. People don’t really understand when this scaling mechanism is triggered. Second, a listview of windows isn’t always the best way to represent these items. Finally, opening the menu always required a click, which slowed some people down. Our solution was to combine buttons by default for a predictable experience, to use grouped thumbnails and to have these thumbnails appear on hover as well as on click. Think of this approach as a contextual Alt-tab surfaced directly off the taskbar. When the person brings her mouse to a taskbar button, all the thumbnails of a program appear simultaneously making for a organized, light-weight switching model. To polish off the experience, we show a visual cue of stacked tiles that provides feedback on whether there are multiple windows running for a program. We also recognized that a set of people may still wish to see an individual buttons for each window and an option permits this behavior.
With the Windows 7 taskbar, there is a single place to go regardless of whether the program is not running, running with one window or running with several windows. Rich thumbnails provide more intuitive ways of managing and switching between windows.
Here’s a riddle for you—what’s the best size for a window’s preview that will guarantee that the you can accurately identify it? Grouped thumbnails look and feel great, but we know these small previews don’t always provide enough information to identify a window. Sure they work great for pictures, but not so for emails or documents. The answer is simply to show the actual window—complete with its real content, real size and real location. That’s the concept behind Aero Peek.
When the taskbar doesn’t offer enough information via text or a thumbnail, the person simply moves the mouse over a taskbar thumbnail and voilà—the corresponding window appears on the desktop and all other windows fade away into glass sheets. Once you see the window you want, just click to restore it. Not only does this make finding a window a breeze, it may also remove the need to switch altogether for scenarios in which one just needs a quick glance to glean information. Peek also works on the desktop too. Show Desktop has been moved to the far right of the taskbar where one can still click on this button to switch to the desktop. The control enjoys a Fitts magic corner which makes it very easy to target. If you just move your mouse over the control, all windows on the desktop turn to glass allowing the desktop to be seen. It’s easy to now glance at a stock or the weather gadget or to check to see if a file is on the desktop.
Fig 4. Aero Peek: Hovering over a thumbnail peeks at its corresponding window on the desktop
We spent a lot of time analyzing different aspects of Peek. For example, we recognized that when people are using the feature, they won’t be necessary focused on the taskbar as they look at windows on the desktop. An early prototype triggered Peek directly off the top-level of the taskbar but this revealed issues. Moving the mouse across a small a region to trigger different previews exited Peek since the natural arc of hand motion resulted in the mouse falling off the taskbar. By only triggering Peek off the thumbnails, we gained much more room for the mouse to arc and we also reduced accidental triggers.
As far back as Windows 1.0, there has always been a system menu that shows contextual controls for running windows and their programs. This menu is accessible by right-clicking on a taskband button or in the top left corner of most windows. By default, the menu exposes windows controls such as close. (Random trivia—ever wonder why the system menu off a taskbar button always shows close in bold when close isn’t the double-click behavior? Well, the answer is that double-clicking the top left region of most windows will close it and the bolded option makes sense in this context. The same menu just happens to be hosted in both locations.) Over the years, some programs have extended the system menu to surface relevant tasks. For example, Command Prompt reveals tasks such as editing options, defaults and properties in its system menu. However, this is a bit of a free-for-all for programs to opt in or not, resulting in an inconsistent experience for people. Another blow to this scenario is that the system menu is only accessible when the program is running. This makes sense since the default commands are about window management, but what if you wanted to access a program’s tasks even it isn’t running?
As we discussed under the goals section, we thought about the various steps people have to take to accomplish tasks and whether we could reduce them. Be it getting to a destination or accessing the commands of a program, we wanted to make it easier for people to jump to the things they are trying to accomplish. Jump Lists are a new feature of the Windows 7 taskbar that accomplish just this. Think of this feature as a mini Start Menu for each program or an evolved version of the system menu. Jump Lists surface commonly used nouns (destinations) and verbs (tasks) of a program. There are several advantages this new approach provides. First, the you don’t need to even start the program to quickly launch a file or access a task. Second, destinations don’t take up valuable space on the taskbar; they are automatically organized by their respective program in a simple list. Should one have ten programs pinned or running on her taskbar, this means she could have quick access to over 150 destinations she uses all the time, without even the need to customize the UI! Since the Jump List shows lots of text for each of its items, gone are the days of having identical icons on your taskbar that are indistinguishable without a tooltip. Should you wish to keep a specific destination around, you can simply pin it to the list.
Fig 5. Jump List: Right-clicking on Word gives quick access to recently used documents
To make sure we provide a consistent and valuable experience out-of-the-box, we decided to pre-populate Jump Lists and also allow programs to customize the experience. By default, the menu contains the program’s shortcut, the ability to toggle pinning, the ability to close one or all windows and a program’s recent destinations (assuming they use the Common File Dialog, register their file type or use the Recent Items API). Programs are able to replace the default MRU (Most Recently Used) list with a system-maintained MFU (Most Frequently Used) list, should their destinations be very volatile. For example, while Word will benefit from a MRU just like the one in their File Menu, Windows Explorer has opted to enable the MFU because people tend to visit many paths throughout a session. Programs are also able to provide their own custom destination list when they have a greater expertise of the person’s behavior (e.g. IE exposes their own history). Still others like Windows Live Messenger and Media Player surface tasks or a mix of tasks and destinations.
In case we haven’t yet impressed it upon you, the taskbar is about a single place to launch and switch. Jump Lists offer another important piece of the puzzle as it surfaces valuable destinations and tasks off a program’s unified taskbar button.
All the major web browsers offer tabs and a method of managing these tabs. One could argue tab toolbars are really like taskbars since they facilitate switching. These TDI (Tabbed Document Interface) and MDI (Multiple Document Interface) programs have always resorted to creating their own internal window management systems as the Windows taskbar was not optimized to help their scenarios. Some programs like Excel did custom work to surface their child windows on the taskbar, but this approach was somewhat of a hack.
Since the new taskbar already groups individual windows of a program under a single button, we can now offer a standard way for programs that have child windows to expose them. Again, the taskbar offers a single, consistent place to access real windows as well as child windows. These custom window switchers also behave as regular windows on the taskbar with rich thumbnails and even Aero Peek.
In the earlier taskbar posts, we discussed how Windows Media Player’s deskband offers valuable background music controls, but only a mere 3% of sessions ever enjoy the functionality. The new taskbar exposes a feature called Thumbnail Toolbars that surface up to seven window controls right in context of taskbar buttons. Unlike a Jump List that applies globally to a program, this toolbar is contextual to just a specific window. By embracing this new feature, Media Player can now reach a majority of people.
Fig 6. Thumbnail Toolbar: Window controls easily accessible in context of a taskbar thumbnail
Thumbnail Toolbars leave the taskbar uncluttered and allow relevant tasks to be conveniently accessible directly from a taskbar thumbnail. Surfacing tasks reduces the need to switch to a window.
We’re happy to announce that the Notification Area is back under your control. By default, only a select few system icons are shown while all others appear in a menu. Simply drag icons on or off the taskbar to control the experience. Better yet, every balloon tip that appears in the system has a little wrench icon that allows one to quickly “swat” an annoying alert by immediately seeing what is causing the notification and a direct way to disable it.
Fig 7. Notification Overflow: By default icons appear in an overflow area that you can then promote
Interestingly a very popular change to Notification Area isn’t about reducing noise, but rather showing more information. The default taskbar now reveals both the time and the date. Finally!
Cleaning the Notification Area warrants us to consider other ways that programs can surface important information. We’ll always had overlay icons throughout Windows (e.g. to show shortcuts in Explorer) so we decided to bring this functionality to the taskbar. An icon can now be shown over a program’s taskbar button. Furthermore, programs can also give feedback about progress by having their taskbar button turn into a progress bar.
Fig 8. Progress Bars: Explorer utilizes taskbar progress to show a copy operation in process
A program can now easily show an icon or progress in context of its taskbar button which furthers the one place, one button philosophy of the taskbar.
Color hot-track is a small touch that typifies the new taskbar’s personality. When a person moves her mouse over a running program on the taskbar, she will be pleasantly surprised to find that a light source tracks her mouse and the color of the light is actually based on the icon itself. We calculate the most dominant RGB of the icon and dynamically paint the button with this color. Color hot-track provides a delight factor, it offers feedback that a program is running and it showcases a program’s icon. We’ve always believed that programs light up the Windows platform and now, we’re returning the favor.
Fig 9. Color Hot-track: moving the mouse across a running window reveals a dynamically colored light effect
Vista introduced several changes to the Start Menu so we decided to minimize churn to this UI in Windows 7. Notable improvements include the availability of Jump Lists and a better power button that defaults to Shutdown, but makes it easy to customize.
Despite all the features of the new taskbar, it is worthwhile noting the UI retains its familiarity. We like to describe our work as evolutionary, not revolutionary. The taskbar continues to be a launch surface, a window switcher and a whisperer of notifications. Whether one is relatively new to Windows or a seasoned pro, we realize change comes at a cost. It is for this reason that we took the time to carefully evaluate feedback, we performed numerous studies to validate our designs and finally, we will continue to provide scoped settings that keep the UI flexible.
We hope this post provided more insight into the new Windows 7 taskbar. Expect future discussions on our design process, how we tested our features and advanced functionality for all you enthusiasts.
why are toolbars that aren't part of the task bar disabled? I usually use a second toolbar on the right side of my screen for commonly used programs. on xp i just add a toolbar and drag it onto my desktop, and then from there drag it to the right edge of the screen. On windows 7 i can't drag that toolbar on the desktop or to a screen edge. it stays in the taskbar. major step backwards.
Hi, will it be possible to move the location of the notification area to any position of my choosing. The reason being is that since I have been using wide screen monitors I find myself consciously having to look at the notification area where as before a new notification would catch my eye more easily as it is still in my field of view. What would be nice is that when I am expecting an important email for example I could slide the notification area to the middle of the task bar and when I don't want to be distracted just move it all the way to the right again
While I like the idea of unifying the program launching and switching tasks into a single one, I think it is important to be able to know easily which programs are already loaded into memory. I am of the opinion that I shouldn’t have to hover the mouse pointer over a program’s icon to know if it has already been launched. So there should be some visual cue to let the user distinguish “program launchers” from the “window switchers” just by looking at their icons. If for example, I need to close some programs to free up some memory I won’t need to hover on every icon to see if the program is running and can be closed. I think this is also why the Mac OS X dock shows a reflection under the icons for programs that are running to distinguish them from other icons.
why is it that as windows versions move forward I am less and less able to successfully rename files and folders from explorer? I'm finding that they are always in use and I have to close all explorer windows and open up cmd just to be able to successfully rename a folder with videos in it.
Also going along with the post from murtaza above me, will there be a way to organize the icons for launching programs and already opened programs on the task bar? what I mean is i have several things pinned to the task bar, but I would like to have all programs that aren't actually running moved to the left, but all open programs that are pinned move to the center between the old style quick launch and the task bar icons on the far right. like if i pin winamp to the task bar and it isn't open i would like it to be the right most icon that isn't an open program (because winamp starts with a W and is the lowest alphabetical item, i dont expect windows to know this i would move it to the right on my own), after clicking on it to open it, the icon should move into the center as an open program. get what i mean? as things are now i have programs that are pinned and not open in the center separating my open task bar pinned programs which i would like to appear in the center.
The new taskbar is cool. I like it. One general thing though.
Borders, headers are annoyingly wide. In general every window but around taskbar thumbnails it is horrendous 14 px border??? Come On!. Bulk one could say. Grandma-ish. You have to make it a bit nicer, sharper, customizable. You were talk about disk-space as important resource. There is a much more precious resource, the desktop space. When you design anything that appears in the desktop. The first question should be "How much space will it take and why"
I hate to pointing out third party softwares but have a look at Mac(Dont like it but doesn't have border around windows which is nice) and have a look at Chrome. Such a nice idea to put the tabs on the header. Too bad it does not work on windowed mode. And to use the address bar as search field brilliant , much cleaner than anything else.
Anyway every pixel should be the subject of consideration on the desktop.
In Vista,the taskbar thumbnails are not live if the window has been minimised. This is because minimised windows do not keep repainting, to save resources.
How will Windows 7 overcome this? Will we be able to "peak" inside minimised windows and get the most current content?
Hi Steven, thanks for a great blog! Now to my question; How do you decide what is a good default delay in the user interface? My personal thoughts is that Windows has to long delays for displaying some parts of the UI. For example in Windows 7, when hovering over an icon in the taskbar it does not display the thumbnail until after about 50ms. Powerusers like to reduce these values using programs like TweakUI. This makes a huge difference to the Windows-experience! I've had collegues use my computer and comment on how snappy it feels compared to their own "non-modified" computer. Is this something you are considering to change or are there important reasons to why you have these artificial delays?
strejf: If it's like other delays within Windows then I expect it will be based on the your double-click speed setting. (Apparently) This is a good indicator of how quick you are :)
you have a video (youtube)for the function that you have explained?
the more i look at this, it's just plain ugly.
Given that my screen is wider than it is taller (1680x1050 laptop, 1920x12xx docked) I tend to keep the taskbar off to the side of my screen. I hope that this is not going away.
You stated that you like to describe your work as evolutionary more than revolutionary but I wonder if this is a choice or a necessity.
Whenever I see some OSes prototypes, like the CIW demos, etc. one thing they all have in common is... the lack of windows, apps are blended in the background, not contained by bold borders.
personally I like the idea of Windows without windows and I wonder what is the reason for this giant gap between what comes out of your R&D and what reach down to the final users.
Microsoft should change IE developer team 's persons! yet IE(8b2) is unserviceable. why it strains for open a new tab ?!
This is all great for mouse users, but what's in it for keyboard users? I love the type to search feature and the Windows+number key shortcuts in Vista. More such changes would be very welcome! (Now if only there were a way to combine the type to search with the simple and uncluttered Windows 95 start menu.)
I'm glad to see that grouping windows can be disabled. Those of us who work with a lot of windows at once often turn it off--in favor of per-application MDI. (It helps keep the ALT+TAB list short and wieldy!)
I am, however, somewhat disappointed by the textlessness of the new taskbar. How are people with screen readers supposed to use it? Also, you do realize that the screenshots you show are a terrible example of intuitive design: the taskbar is so see-through that it appears to be one and the same with the desktop. Only a few faint lines distinguish it from the latter. (This is a bad idea because it suggests that the two are one and the same and work the same way--which they most averredly do not!)
There is something to be said for Windows 95's stark visual separation of chrome from content (indicated not only by color--gray vs white, but by lines and 3-D relief.)
Well it looks good.
I'm not a fan of the transparency, and definitely not a fan of removing text, but the icons look good. The hot-tracking is the kinda feature I like - something I will probably get used to and become the thing that makes Windows just that little bit more usable.
I've never liked window grouping in XP or Vista (it's the first feture I turn off) but this looks usable. I wou;d still disable it if it required an extra click, but if it was activated on mouse over, it would be very, very nice.