Engineering Windows 7

Welcome to our blog dedicated to the engineering of Microsoft Windows 7

Follow-up: Starting, Launching, and Switching

Follow-up: Starting, Launching, and Switching

  • Comments 84

Lots of discussion on the taskbar and associated user interface.  Chaitanya said he thought it would be a good idea to summarize some of the feedback and thoughts.  --Steven

We’d like to follow up on some themes raised in comments and email.  This post looks at some observations on consistent feedback expressed (though not universal) and also provides some more engineering / design context for some of the challenges expressed.

First it is worth just reinforcing a few points that came up that were consistently expressed:

  • Many of you agree that the Notification Area needs to be more manageable and customizable. 
  • We received several comments about rearranging taskbar buttons.  This speaks to the need for a predictable place where taskbar buttons appear as well as your desire for more control over the taskbar.
  • There were comments that talked about Quick Launch being valuable, but that it could stand to be an even better launching surface (e.g. larger by default or more room).
  • Thumbnails are valuable to many of you, but their size doesn’t always help you find the window you are looking for.  There is interest in a better identification method of windows that consistently provided the right amount of information.
  • Better scaling of supported windows was discussed.  This includes optimizing the taskbar for more windows and spanning multiple displays. 


Several of you asked about the conclusions we are drawing from the data we collect and how we will proceed.

@Computermensch writes “The problem with this "analysis" (show me the data) is that you're only managing current activities surrounding the taskbar. So with respect "to evolving the taskbar" you're only developing it within its current operational framework while developing or evolution of really should refer to developing the taskbars concept.” 

@Bluvg posts “What if the UI itself was a reason that people didn't run more than 6-9 windows?  In other words, what if the UI has a window number upper bound of effectiveness?  Prioritizing around that 6-9 scenario would be taking away the wrong conclusion from the data, if that were the case.  The UI itself would be dictating the data, rather than being driven by user demand.”

As we’ve said in all our posts around the data we collect and how we use it, data do not translate directly into our features, but informs the decisions.  Information we collect from instrumentation as well as from customer interviews merely provides us with real-world accuracy of how a product is currently used.  The goal is not necessarily to just design for the status quo.  However, we must recognize that if a new design emerges that does not satisfy the goals and behavior of our customers today, we risk resistance.  This is not to say one should never innovate and change the game—just that to do so must be respectful of the ultimate goal of the customer.  Offering a new solution to a problem is great; just make sure you’re solving the right problem and that there is a path from where people are today to where you think the better solution resides.  With that said, rest assured that our design process recognizes the need for the taskbar to scale more efficiently for larger sets of windows.  This would allow those who possibly feel “trapped” in the 6-9 window case to more comfortably venture to additional windows, if they really require it.  Also, the improvements we make to the 90% case should still hold benefits to the current outliers. 

Notification Area

With so much feedback, it is always valuable to recognize when customer comments converge.  The original post called out the problems with the Notification Area and these issues were further emphasized with your thoughts.

@Jalf writes “Having 20 icons and a balloon notification every 30th second taking up space at the taskbar where it's *always* taking up space is just not cool. By all means, the information should be there if I need it, but can't we just assume that if I don't actively look for the information, it's probably because I don't want it.

Jalf’s comment is particularly interesting because it speaks to both the pros and cons of notifications.  They certainly can be valuable, but they can also very easily overwhelm the customer as many of you note.  A careful balance therefore must be reached such that the customer is kept informed of information that is relevant while she continues to remain in control.  Since relevant is relative, the need for control is fundamental.  Rest assured we are aware of the issues and we are taking them very seriously.

Multi-mon Support

It comes as no surprise that many of you wrote to discuss multi-monitor support for the taskbar. This is a popular request from our enthusiasts (and our own developers) and was called out as an area of investigation in the original post. 

@Justausr is very direct with this comment: “The lack of multi-monitor support is just about a crime.  We've seen pictures of Bill Gate's office and his use of 3 monitors.  Most developers have 2 monitors these days.  Why was multi-monitor support for the taskbar missing?  Once again, this is an example of the compartmentalization of the Windows team and the lack of a user orientation in defining and implementing features.  The fact that this is even a "possible" and not an "of course we're going to..." shows that you folks STILL don't get it.”

At least in this particular case we tend to think we “get it”, but we also tend to think that the design of a multi-mon taskbar is not as simple as it may seem.  As with many features, there is more than one way to implement this one.  For example, some might suggest a unique taskbar that exists on each display and others suggest a taskbar that spans multiple displays.  Let’s look at both of these approaches.  While doing so also keep in mind the complexities of having monitors of different sizes, orientations, and alignments. 

If one was to implement a taskbar for each display where each bar only contained windows for its respective portion of the desktop, some issues arise.  Some customers will cite advantages of less mouse travel since there is always a bar at the bottom on their screen.  However, such a design would now put the onus on the customer to track where windows are.  Imagine looking for a browser window and instead of going to a single place, you now had to look across multiple taskbars to find the item you want.  Worse yet, when you move a window from one display to another, you would have to know to look in a new place to find it.  This might seem at odds with the request to rearrange taskbar buttons because customers want muscle memory of their buttons.  It would be like having two remotes with dynamically different  functionality for your TV. This is one of the reasons that almost every virtual desktop implementation keeps a consistent taskbar despite the desktop you are working on.  

Another popular approach is a taskbar that spans multiple desktops.  There are a few third-party tools that attempt to emulate this functionality for the Windows taskbar.  The most obvious advantage of this approach (as well as the dual taskbar) is that there is more room offered for launching, switching and whispering.  It is fairly obvious that those customers with multiple displays have more room to have more windows open simultaneously and hence, require even more room on their taskbar.  Some of our advanced customers address this issue by increasing the height of the taskbar to reveal multiple rows.  Others ask for a spanning taskbar.  The key thing to recognize is that the problem is not necessarily that the taskbar doesn’t span, but that more room is required to show more information about windows.  So, it stands to reason that we should come up with the best solution to this problem, independent of how many displays the customer has. 

We thought it would be good to just offer a brief discussion on the specifics of solving this design problem as it is one we have spent considerable time on.  One of the approaches in general we are working to do more of, is to change things when we know it will be a substantial improvement and not also introduce complexities that outweigh the benefits we are trying to achieve.

Once again, many thanks for your comments.  We look forward to talking soon.

- Chaitanya

Leave a Comment
  • Please add 5 and 8 and type the answer here:
  • Post
  • The common controls (buttons, tab, sliders etc) of Vista come no where close to Mac OS X. Microsoft should make more sleeker common controls. And when applications start up, windows should check whether the digital signature of that specified application is valid or not and should warn the user if it's not valid (the file's been modified). That would add another level of security to Windows 7

  • I think that a task bar per screen is best choice, with the option of switching/uniting that task bar with any/all other task bar. To find a window, on any screen, a high lite function should be put in place (vibrate window, dim all others, glow the edge of the window/screen, zoom window in and out etc, just any visual find function). Any notifications should be sent to the screen with the focused window, if that window is split into multiple screens, the screen on the far right of the window should receive notification, small overlaps (say less than 5% of screen or window) should not count.

  • I work at a stockbrokers, and its a nightmare.

    I just had to setup another mutliscreen setup but this time only 3.

    Everyone has a differnt taste, we have some people with a streched taskbar across screens (via ati tools) and users with it on one, some people prefer some res and others another.

    One of the weirder ones is with the primary screen. Some people prefer it to be to the left, and others on the right, this is what causes me the most greif. When programs open on "the wrong screen". There isnt anyway (that I know of) to catch a place in which a screen opens for the next time.

  • I would like to be able to re-arrange the running programs on the taskbar just like I am able to re-arrange tabs in IE.

    I always like to work if there is an order like (from left-to right):




    Currently sometimes I need to close and re-open programs to restore this order.

  • what that guy above just said

    not being able to drag taskbar tabs around is an omission bordering on the bizarre

  • How about virtual desktops support? (or work-spaces)

    Once you've used that in Linux, it's hard to work without it.


  • Virtual desktops or workspaces are something that I definitely found useful in Linux - especially when using the desktop cube from compiz, so you could drag a window dircetly from one workspace to another.

    Another useful option was the ability to specify some programs to always display on the visibly workspace. I generally ran an IM client, which was visible whatever workspace I was in.

  • "Right monitor"? "Across the bottom"? Why is there an assumption that my monitors are horizontal?

    I have three multimon setups (work, work-at-home, music studio) and all three are vertical, with the second monitor above the first. In all three cases, the monitors are different sizes too (two are larger, one smaller). The two where the second monitor is larger are monitors plugged into docking stations for my laptop; the open laptop is the first monitor. I know I am not alone here.

    It would be useful if Win7 recognized this as a reasonable configuration. It would also be good if Win7 remembered this preference; there are times when Vista "rediscovers" the second monitor from my laptop/docking station, and then forces it to the right side.

    Thanks. Here's to a terrific Win7.

  • Personally I change the UI back into a Win2K look alike wherever possible.  But I'd like to see the Search feature that everyone claims is so awesome appear as a toolbar on the TaskBar, since one of my first actions in a new install of Windows (XP and Vista both) is to put everything into Classic Mode (save Aero).   I love the clean functional familarity of the Classic look.  

    As for the taskbar itself, I use large icons on Quicklaunch, an Address bar and map several IE Favorites folders to appear, so adding a space for a Search feature would be possible.

    Gotta love 16:10 monitors.

  • Personally, I love the search field in the start menu and that's one of the points I can't imagine going back to XP - after getting used to Vista, i usually just press the win key and type in the file/program i want to start/open.

    I like how the vista startmenu looks like, i hated how the startmenu took half of the screen in previous windows versions.

    About multiple monitor taskbars: For me it makes sense if each monitor has a separate taskbar with the OS saving which program should be launched on which monitor (kind like it is able to remember the position each window/folder was positioned at last start.

    Also, as suggested by people before, why not make more out of the sidebar? Being able to move taskbar elements to the sidebar would be just great.

    Or why not merge the sidebar & taskbar to 1 component and allow the user to set how many taskbars each monitor should have and what should be displayed on which sidebar, like some 3rd party launchbar apps do.

    Of course, if you consider to merge these 2 components, you should keep the features of both, so that people can continue to write their own gadgets.

  • "For example, some might suggest a unique taskbar that exists on each display and others suggest a taskbar that spans multiple displays.  Let’s look at both of these approaches. <snip>"

    The remaining discussion I thought was quite negative, and to me it highlights an flaw in the approach.  A no point was an user option to 'choose' was suggested.

    If you think there are multiple solutions to a problem, I would build both to a 'release' level quality, get the user feedback, and then you've got more data.  At which point you can then pick one (if there is an obvious preference), or decide keep both and let the user choose.

    Now I know this is a longer development time, but its much better than having no solution.  At the moment for multi-monitor...Windows basically fails its job in operating the system.

  • I frequently switch between multiple monitors and single monitor. At work, I use my laptop with an additional monitor, and at home, I use only the buildt in one.

    The problem I frequently have is applications remembering their previous position, and launches "off screen" at times when I only use a single monitor. I can solve this by:

    1) Rightclick the application in the taskbar

    2) Select "Move"

    3) Fiddle the arrow keys to lock the window to the cursor

    4) Drop the window where I want it

    However, it's not always that easy. At certain times, dialog boxes are launched off screen. (Photoshop is a major villain in this). That can't be easily solved, since they don't appear on the task bar, I can't use the trick described above. I'm now stuck with an application I can't use until I hook up an addtional monitor.

    What I could really use, is a way to force all open windows (and dialog boxes) to move into the main monitor. In the best of worlds, I wouldn't have to, since the OS would take care of this itself.


  • cquirke made some good points there about the organisation of the Start Menu. I do pretty much the same re-ordering of stuff (though I just organise the programs, I leave the help, uninstall and other never used icons where they were), it gets really annoying when you install an upgrade or uninstall something when you have to back in again and re-organise everything.

    What I would do is keep the 'All Programs' menu as it is, the user could then keep things as they are there so uninstalls and upgrades (for the most part) would carry on as expected, what you would need then is a separate 'Categories' view on the start menu, this should appear below the pinned frequently used programs and should look an behave much like the 'All Programs' view. You should be able to add items to this Categories view as you're browsing the All Programs, to the right of each entry there'd be a context icon which would show something like:


    Add to Category...








    Create new Category


    Once something is pinned to the Category menu it would be nice if it could be updated when the All Programs gets updated, this should be somewhat possible with a decent algorithm based around a folder notification. There should also be an API so new apps could automatically take advantage of this.

    I find the excellent search in Vista gets rid of the need to use All Programs most of the time, but I still need to browse it from time to time, browsing a simplified Categories list like this would be much less painful than browsing 'All Programs' (my All Users folder contains 570 files in 170 folders, my user account has 229 in 73).

  • The most important thing for multi-monitor support for me is that when you click an icon or launch a dialog (anything that opens a new window) it should open on the monitor where the action was initiated, surely this should be easy enough to trap in CreateWindow? More importantly there should be a good API so new apps can better handle this stuff themselves.

    Things like taskbar location and behaviour should be customisable, I would go for different behavior depending on use, my work setup is different from the machine I have hooked into my TV for example. It should certainly be the default behaviour though for apps to live on the taskbars of the monitors they appear on. You should be able to toggle the taskbar per screen, or span a single taskbar across multiple screens, and taskbar elements should be customisable too, you might want some to have Start Orbs, some not, some to have notification tray's, some not, etc.

    It's also important to allow different backgrounds per screen.

  • I would like to see the "tab" functionality more often in Windows and in Office too, it is by far the best GUI innovation after the invention of windows. I see no reason to display a stack of windows for a single application, when a single window with several tabs would do. This could be a implemented as a mere UI change, meaning that you could still let individual application instances run separately, the way Google Chrome does it.

    To allow the user display several windows at once side by side, I would recommend using the common combination of "control" key to make and a mouse click to confirm the selection.

Page 4 of 6 (84 items) «23456