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 8 and 7 and type the answer here:
  • Post
  • @mogi I find KDE to be bloated while Gnome seems to be organised, but that doesn't mean Windows should copy from them :)

  • I have a laptop which I sometimes use with multiple monitors. I often run into a problem where I have an application on the external monitor and then close windows. I later restart without the external monitor connected but when I start some apps, they wind up off the screen and I can't easily get them to appear on my laptop screen. Windows needs to be smart enough to detect when this situation occurs and force windows to not open off screen when not using multiple monitors even if it was the last position the app remembered.

  • I always like to have my explorers open at 7 across by 3 down large tiles. This some times resents though, even though I make sure to close all of them at that size. Another thing that doesn't remember it's state correctly is when choosing the view and type of folder. My music folders keep being reset to picture and video folders and visa versa. Sometimes folder views of two folders in completely different areas become linked. For example if I change a specific folder under pictures to pictures and videos it changes a specific folder on my desktop to the same view state. When I go to change the one on my desktop the pictures folder then mirrors the one on the desktop.

  • Glad to hear that people are bringing up the issue of applications forcefully taking the focus away from the selected window, and that the Windows 7 team is (hopefully) listening. Let me just add myself to the list of people who think that that's anoying & it should be fixed.

    It is most annoying when I'm typing up something and all of a sudden some window pops up asking me something and since I was in the middle of typing, I accidentally hit some shortcut key that I didn't mean to press. GRRR!!!

  • Please make Windows 7 the OS X killer. Let it better than OS X in every aspect.

  • There should be more basic themes for Windows 7. Windows Vista's basic theme looks so sick. Aero is awesome but would be better if Windows 7 will provide more basic themes. Thanks

  • One of the things I would like to see is that when I use the task bar to put two windows side by side it would be nice if I could resize both of them at once by clicking and dragging their common edge.  For example I often have say a spread sheet and a document open at once (my screen is 1920 X 1200) and it would be nice if I could easily give the spread sheet more of the space as it is wider than the document needs to be on the screen.

  • @chakkaradeep: I did not mean the whole environment of course :). I meant the good old workspaces feature only:

    It's really simple. You can create new workspaces, see the status in the panel, drag windows from one to another workspace, switch with a nice default alt+left/right arrow and that's it basically.

    So far, no one has combined these three features into one product for windows:

    1. a view in the taskbar

    2. easy dragging

    3. works without annoyances (some windows do not get restored properly sometimes, instant messaging windows open on wrong workspace, etc.)

    Maybe it's not possible to fully fix the third point, because apps are not aware of workspaces?

  • Mega quote Asesh

    even if we already VISTA is Killer 100% OSX, have done much fud initially when there were problems with drivers , The fud was fueled by microblog and incompetent journalists who in the past have dealt only with agriculture

  • Hallo,

    let us make groups of windows...a sample...i put ie and VS 2008 togehter to 1 windows and it will show up as 1 programm on the taskbar...that will help o organice programms who should work together very easy...

  • Personally my biggest gripe when it comes to managing my windows is similar to one already mentioned. I want my windows to open on particular screens. If I open and close a program on a screen it will usually keep opening there until the next update, restart or other annoying event. Sure, games open on the screen set as primary, but I might want word to always open on one screen, excel on another and (if I have 3 screens) firefox on a third.

    My second gripe at the moment is losing focus of windows in the middle of tasks. The other day I came within a hair's breadth of throwing my computer to the tip (figuratively speaking) because of processes cutting in on each other. A simple 15min task took 30min and 2 relaxation CDs to complete. If programmers can't get it right (I know I don't) then please let the OS have some more control over window focus priorities.

  • From what I've read in the comments and from these posts is that there are just too many cases to handle, even when delegating UI variations to configuration options! The solution I see is to allow users to change their window manager. There are already many, many WMs for linux, each catering to its own niche and many of them have been mentioned in this thread. Why not expose hooks for a replacement WM to partially or completely override the default? The possibility of this sort of modular extensibility is the reason I've been dieing to hear more about the MinWin kernel, whose implementation as I understand it could allow such cutomization.

  • "let us make groups of windows...a sample...i put ie and VS 2008 togehter to 1 windows and it will show up as 1 programm on the taskbar...that will help o organice programms who should work together very easy..."

    I think that's a good point, and one which reflects back to the mention of virtual desktops in the previous posts. You almost always have some kind of grouping of your windows in the first place. As the previous post said, virtual desktops are helpful in organizing "sets" of windows, and this is pretty much more of the same. With or without virtual desktops, this notion of "sets of windows" actually seems to be one that should be pretty fundamental to window management (because windows almost always belong in some conceptual set, because you only use it together with these other windows), and yet, I don't know of any OS or window manager which actually supports this very well. Ideas? :)

    By the way, one thing that absolutely drive me nuts in window management on Windows is the absurd focus and modality rules.

    First, the focus. Hands up, those who have *not* missed important (probably) messages from some application or other, because it popped up in the middle of the screen as you were typing. You hit space (because you were typing), and it takes that as a click on 'ok', and continues, and you didn't even get to see the message. What the hell did I just approve?

    Another, equally ridiculous issue is that even the simple modal dialogs will prevent the computer from shutting down (At least in XP, I don't know if this has been fixed in Vista). Open Notepad, type a couple of letters without saving, and try to close your computer. It'll ask you if you want to save the document (which is a reasonable question), but if you don't answer, it'll hang there forever (which is not reasonable).

    Imagine I'm in a bit of a hurry, I tell my laptop to shut down, close the lid, and stuff it in my bag. 6 hours later, I take it up, to realize that it's been running at full speed this whole time. Boiling temperature? Check. Hardware damage? Perhaps. (Windows update is guilty of something similar, with its ridiculous notion that it should be allowed to wake up the computer)

  • I read about your ideas of Multimonitoring Support in say that you have 2 options:

    - The Taskbar over all Screens

    - 1 Taskbar for each screen

    I think the 2 will be the best option. Every Taskbar is somethink like a single OS GUI...if you open a programm it will just apear on this screen and only on this taskbar...if you move now the window from this screen to an other, the programm will disapear from the taskbar and show up on the screen you move the window on...also you do this with try icons...

  • "There’s a lot of great discussion from the window arranging post.  This really shows how important these details are to people."

    Please open a topic about WHAT the contence of an operating system should be.

    THAT would realy show how important THAT is ;-)

    Or better ask us what we DON'T want in an operating system (things like: mailprogram, Browser, Mediaplayer, Paint ;-) etc)

    Regards Knipoog

Page 4 of 9 (121 items) «23456»