Engineering Windows 7

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

Follow-up: Managing Windows windows

Follow-up: Managing Windows windows

There’s a lot of great discussion from the window arranging post.  This really shows how important these details are to people.  Being able to arrange how apps are shown on screen is key for productivity because it impacts almost every task.  It’s also very personal – people want to be in control of their work environment and have it set up the way that feels right. 

One thing that should be clear is that it would not be possible for us to provide solutions to all the different ways people would like to work and all of the different tools and affordances people have suggested--I think everyone can see how overloaded we would be with options and UI absorbing all the suggestions!  At first this might seem to be a bit of a bummer, but one thing we loved was hearing about all the tools and utilities you use (and you write!) to make a Windows PC your PC.  Our goal is not to provide the solution to every conceivable way of potentially managing your desktop, but rather to provide an amazing way to manage your desktop along with customizations and personalizations plus a platform where people can develop tools that further enhance the desktop in unique and innovative ways.  And as we have talked about, even that is a huge challenge as we cannot provide infinite customization and hooks—that really isn’t technically possible.  But with this approach Windows provides a high degree (but not infinite) flexibility, developers provide additional tools, computer makers can differentiate their PCs, and you can tune the UI to be highly personalized and productive for the way you want to work using a combination of thos elements and your own preferences. 

One other thing worth noting is that a lot of the comments referred to oft discussed elements in Windows, such as stealing the focus of windows, the registry, or managing the z-order of windows—a great source of history and witticisms about Windows APIs is from Raymond Chen’s blog.  Raymond is a long-time developer on the Windows team and author of Old New Thing, The: Practical Development Throughout the Evolution of Windows.  This is also a good source to read where the boundaries are between what Windows does and what developers of applications can choose to be responsible for doing (and what they are capable of customizing).

With that intro, Dave wanted to follow up with some additional insights the team has taken away from the discussion.  --Steven

We saw several pieces of feedback popping up consistently throughout the comments.  Paraphrasing the feedback (more details below), it sounds like there’s strong sentiment on these points:

  • The size of windows matters, but wasting time resizing windows is annoying.
  • Just let me decide where the windows go – I know best where my windows belong.
  • Dragging files around is cumbersome because the target window (or desktop) is often buried.
  • Desire for better ways to peek at the running windows in order to find what we’re trying to switch to.
  • Want a predictable way to make the window fit the content (not necessarily maximized).
  • Want to keep my personalized glass color, even when a window is maximized.

For each of these needs, there’s a lot of great discussion around possible solutions – both features from other products, and totally novel approaches.  It’s clear from these comments that there’s a desire for improvement, and that you’ve been thinking about this area long enough to have come up with some fairly detailed recommendations!  Below are a excerpts from some of the conversations ongoing in the comments.

Put the windows where I want them

It’s super interesting to see people discussing the existing features, and where they work or don’t work.

For example, @d_e is a fan of the existing tiling options in the taskbar:

Arranging windows in a split-window fashion is actually quite easy: While pressing CTRL select multiple windows in the taskbar. Then right-click them and select one of the tiling options...

But that approach doesn’t quite meet the goal for @Xepol:

As for the window reorder buttons on the taskbar -> I've known they were there since Win95, but I never use them.  They never do what I want.  If they even get close to the right layout, its the wrong window order.  Since I have to drag stuff around anyways, its just easier to get exactly what I want the first time.

@Aengeln suggests taking the basic idea of tiled windows to the next level in order to make them really useful:

A very useful feature would be the ability to split the deskotop into separate portions, especially on larger screens.  For example, I might want to maximize my Messenger window to a small part on the right hand side of the desktop and still have the ability to maximize other windows into the remaing space. Non-maximized windows would be able to float across both (all) parts of the desktop.

It sounds like there’s agreement that optimizing the screen space for more than one window would be super useful, if it would only let you stay in control of where windows ended up, and was easy and quick to use every day.  The current tiling features in the taskbar give hints at how this could be valuable, but aren’t quite fast and easy enough to be habit forming.

Open at the right size

We saw a lot of comments on the “default size” of windows, and questions about how that’s decided.  Applications get to choose what size they open at, and generally use whichever size they were at the last time they were closed (or they can choose not to honor those settings).  One of the cases that can trip people up is when IE opens a small window (websites will do this sometimes), because once you close it that will be the new “last size”. 

@magicalclick suggested a solution:

I wish I have one more caption button, FIXED SIZE. Actually it is a checkbox. When I check the box, it will save the window state for this application. After that, I can resize/move around. When I close window, it will not save the later changes.

@steven_sinofsky offered this advanced user tip that you can use to start being more click-efficient right away:

@magicalclick I dislike when that one happens!  Rather than add another button or space to click, I do the same thing in one click with a "power user" trick which is when you see the small window open don't close it until you first open up another copy of the application with the "normal" window size.  Then close the small one and then the normal one. 

Of course this is a pain and close to impossible for anyone to find, but likely a better solution than adding a fourth UI affordance on the title bar.


Finding the right window

The word being used is “Expose”:

@Joey_j: Windows needs an Exposé-like feature. I want to see all of my windows at once.

@Dan.F: one word - expose.  copy it.

@GRiNSER : Expose has its own set of drawbacks: Like having 30 windows on a macbook pro 1400x1050 screen is really not that helpful. Though its way more helpful than Crap Flip 3D. Expose would be even more useful with keyboard window search...

Regardless of the name, there’s a desire to visually find the window you’re looking for.  Something more random-access than the timeline approach of Alt-Tab or Flip-3d, and something that lets you pick the window visually from a set of thumbnails.  This is very useful for switching when there are a lot of windows open – but some current approaches don’t scale well and it is likely scaling will become an even more difficult problem as people run even more programs.

Dragging files

There were several comments (and several different suggestions) on making it easier to drag between windows:

@Manicmarc:  I would love to see something like Mac OS's Springloaded folders. Drag something over a folder and hover, it pops up, drag over to the next folder, drop it.

@Juan Antonio: It would be useful that when I´m dragging an object I could to open a list or thumbnail of the windows ( maybe a right- click )to select what window use to drop the object.

On this topic, I loved @Kosher’s comment on the difference between being able to do something, and it feeling right.

The UI could be enhanced quite a bit to make it much easier to do things. It's not just about how easy it is but it's also about how smoothly the user transitions between common UI workflows and tasks.  This is a bit like explaining the difference between a Ferrari and a Toyota to someone that has never driven a Ferrari though, so I don't know if it will ever happen.

In designing Windows 7, we’ve really been taking the spirit of this comment to heart.  I can’t wait to hear what car Windows 7 is compared to once it’s available for a test drive.

- Dave

Leave a Comment
  • Please add 5 and 4 and type the answer here:
  • Post
  • This all is fine, but I cannot shake the feeling that it's a little late for this sort of thing.

    Isn't "Engineering" Windows 7 an anachronism, when the feature set is (most likely) finalized ages ago, the implementations done, and testing-fixing the stuff is (most likely!) going on?

    Could someone please shade some light on this?

    Are the discussions on this blog actually going to lead you to modify Windows 7?

    I find it hard to believe.

    Some tweaks maybe, but not major rewrites.

    Don't get me wrong.

    I have huge expectations from 7 and I believe that it'll be a great update, solely because Steven Sinofsky is the man in charge!

    Office is THE thing that has NO competitor. You could say that there are better OSs around, but there's nothing that even comes close to Office.

    You guys have certainly put a lot of thought into making this Windows, and it looks like you have had your priorities set right.


    With all that said, isn't this blog an attempt to nudge us in "proper" direction? To give us a background on changes, and why they are done and the complexities involved and all that?

  • just bring back the items, that  i mentioned, that were removed or made harder to get to in vista than they were in xp.

    that should be your first goal.

  • While I develop software under Win32 at work using XP and Vista, at home I use Linux.  The biggest difference for me is that at home, I can use wmii, a tiling window manager.

    Wmii manages windows by dividing each screen into columns, and then subdividing the columns into rows.  The first program run fills the primary screen.  Any subsequent window subdivides the currently-selected column into rows.  One set of keyboard shortcuts may be used to move a window between adjacent columns, into a newly-created column, to a different physical screen, or into invisible screen pages.  A different set of keyboard shortcuts may be used to shift focus between windows and physical screens, and to flip an invisible screen page to the foreground.

    It took some getting used to, but I've grown sufficiently attached to it that I've been considering writing my own tiling window manager for Windows.  Unfortunately, it doesn't look like anybody has really done this since the late 90s, and I expect that was for the Win95/98/ME lineage.

  • On an Alt+Tab replacement, holding down a key to make all windows transparent except the active window would be cool. Better than Flip 3D because you can see all the windows you've got open.

    Of course, the problem with this is when you get a tonne of windows sitting on top of each other. Then it just looks ugly.

  • The concept of a "window search" sounds like it may be a useful way to switch through a large number of windows by title just as the search on the start menu.

    I never knew I could select multiple windows in the taskbar and tile/stack them!  It would never be clear that that functionality is available if you didn't know about it.  Something just important as functionality and usability is for the people to know that it exists.

  • I've used a number of Expose implementations, and they don't help me a bit. Past a certain number of windows, it isn't any better than the alt+tab or taskbar thumbnails.

    Perhaps a good solution will balance between giving an overall view for when a small number of windows are present, and something that will work for large numbers of windows. Maybe something that involves filtering of some kind by type, application, keyword, arbitrary user picks, etc. Text labels might not be sexy, but they would be useful in identifying applications. Some sort of hover-zoom, or deepzoom kind of deal? Eh, I'm not sure that would work, I'm just kind of brain dumping all over this comment.

    It would be nice in a multi-monitor scenario to have the previews only appear on the monitor that they are currently assigned to. That would provide more room for larger thumbnails, and a better logical seperation.

  • It will be more user friendly , if you implement feature like in Mac osx (Spaces). Through which user can easily classify their task in diff spaces and easily switch-over to one-anonther.

    I also like a feature that when user mouse-hover on icon of audio, video file a short clip should to play without actually opens up the application associated with them.

    Give the Live Preview of each application running on and ability to maintain their state for future.

    Give us some more improvement in the Grouping up of application in taskbar.

  • A small comment on the whole windows stealing focus: This is one of the things that really drive me nuts. Windows that suddenly steals the focus. Either they pop up right before I click and I accidentally click on one of the controls in the window that appear with unwanted effects. Or taking the focus away when I'm typing interrupting the work flow.

    When multitasking with the computer I want to decide myself what window I want to work with. I can't stand programs that think it is the most important thing on my screen and demand my immediate attention.

    Before XP, setting the Flash Taskbar setting worked rather fine. All though some applications had a  tendency to reset this. But in Vista that setting seem to have no effect at all. Windows popup everywhere yelling at me. Go away!

    So I plead for a more robust control of window focus stealing in  Windows 7. For the love of my sanity.

  • @nikhiljain Windows Vista already contains a live preview feature. When you open an Explorer window such as Documents or Music or Pictures or any folder infact there is an option for a live preview of the document or file without opening it. When in the folder click on the ORGANISE tab, go down to the layout option and select the PREVIEW PANE option this gives you the live preview that you are asking for. In reality MAC OSX copied their live preview from Vista because it was long announced before LEOPARD was realesd or even was under development. But because of the 2004 longhorn reset Vista was not realesed until 2006/2007 thus OSX was first to market with that feature.

  • If we are here. Everything should have keyboard shortcut. And that shortcut should be displayed on the right side the context menus. Also in the help file. All the time.

    Switching on and off preview plane with shortcuts is important. Most of the time it is annoying but when you need it it takes 3 click to get it.

    Preview plane is not very useful in Vista. The location of the preview plane has to be configurable. Should be possible to put to the bottom or top  or to a separate window. In addition to the shortcuts there should be visual toggle buttons (1 click way) to show and hide preview and navigation plane.

    Also there is a need to manage the file selection and clipboard management better. Someone had the idea for a "clipboard plane" before. A place where you can drag and drop files and what represents the clipboard. I found the idea very useful. Also shortcuts for adding and removing files to the clipboard. (Ctrl+C not adds files but resets the clipboard)

    In general in windows it is a mayor drawback that the user has to use the mouse all the time. EVERYTHING should accessible via shortcuts.

    Just a quick question. How can you rename a file without touching the mouse?

  • About document previews: I think there should be a floating preview thingy when the user hovers the mouse over an item like in Windows Photo Gallery. I think Quicklook in Mac OS X is broken because it acts as a preview application. If the user hits Space to preview a document then Quicklook window opens and the user can't stand using it as a self-contained application. For instance it's too easy to use Quicklook instead of iTunes to listen to music and when the user switches to another window then Quicklook stops playing. Plus Quicklook is not fast enough.

    About Exposé: In fact it's not copying because Microsoft Research worked on a project called Task Gallery way before Mac OS X.

    They made some demos in 1998:

    About drag&drop: It's uncomfortable to drag an item onto the taskbar and wait for the window to get focus then continue dragging the item onto the window and drop it. The taskbar and the alt+tab and Flip 3D switchers should be able to accept drag&drops without giving focus to the window.

    There's another annoyance in Windows that it easily forgets window placements. When the user's desktop is full with windows and wants to drag and item from the desktop then all windows have to be minimized  (as Raymond Chen described on his blog) with Win+D (show desktop) or Win+M (minimize all). If the user clicking on any window then it's not possible to restore all windows to their original state. In my opinion the windows shouldn't change at all when the user wants to switch to the desktop. Maybe this could be borrowed from Exposé (show desktop with F12).

  • Exposè not work fine!

    the management of the desktop OS X from Dock and 'illogical and irrational, for me and 'irritating that if I have two or more' open windows of the same application must go to attempts to find what I try, or should know in advance if what I try and 'minimized or not .

    Windows Vista in this and 'simple, clean, rational and consistent.

  • @ kchaits123

    I'd imagine there's plenty of time for them to add features into W7, whether or not they are any good is the question.

    @ Mike Mol

    >> It took some getting used to, but I've grown sufficiently attached to it that I've been considering writing my own tiling window manager for Windows.

    Do it. : )

    I agree 100% about keyboard shortcuts for panes. The lack of shortcuts is the reason I've never used any of them, that and the fact that the preview pane generally sucks. It doesn't work with most of my document formats (odt, ods, doc, xls), most of my video files (avi), doesn't even have an option to preview most of my audio library (mp3), and, unless you make/add a preview handler, won't handle many, many other file formats which can be quite common (psd, for example). On top of all that, as you said, lyesmith, the location is not ideal for all file types. Users should be able to undock the pane and place it on the any other side of their explorer window. Being able to place it on the top edge would be a nice way of replicating XP's thumbnail strip while keeping Vista's style.

    The details pane doesn't report selection size when a folder is within the selection, which makes it slightly less useful as well. The status bar, however, does not have this behavior. Having both up at the same time is a waste of scene real estate as the status bar has one function which isn't replicated by the Details pane.

    And does anyone else think that more customization options in W7 will only compound the issue that XP and Vista had with remembering folder settings? It's only going to get worse when it takes you 20~30 seconds to re-configure you folder exactly the way you want it, assuming it doesn't match any of your presets (All Items, Documents, etc...). While I enjoy this blog, the more I think and hear about Windows XP, Vista, and W7, the less I like them.

    ...and F2, silly. :)

  • Their should be a Folder structure preview of their sub-folder by just a mouse-hover on that folder in a Gridview Format. Its really help full for user to see the content within folder without acctualy opens it up..

  • next thing about windows sizes is resolution change. it's extremally annoying for the ones which uses the projector. after changing the resolution all window sizes are made small to fit it. then you need to resize all the window to your size... more over - windows sometimes forgets that you disconnected the device and changes resoultion for some test or something... grrr

    and the solution is so simple: keep the window sizes as percentage. layouts are well known in java and .net languages - so it's dynamic and auto-adjustable for the screen size. y don't give such a possibilty for system windows?

    another idea is to keep few window sizes so each resolution has it parameter. last the easies way would be some option to disable auto-window-resize - easy and effective.

Page 1 of 9 (121 items) 12345»