Early versions of Aero Peek: Aladdin, Bat Signal, and Squeegee


The feature now known as Aero Peek wasn't born that way. It went through several iterations before becoming what eventually shipped in Windows 7.

At the MIX09 conference, Stephan Hoefnagels showed some of the precursors to Aero Peek. Here are the highlights, and the corresponding time codes if you want to jump straight to the demos.

Thumbnails in the taskbar (time code 30:20)

How it worked: Instead of labeled icons, the taskbar showed miniatures of the windows themselves.

How it got its name: Um, it was just named after what it was.

Why it failed: When shrunk to taskbar size, most windows looked the same: white with unreadably tiny text.

Aladdin (time code 42:34)

How it worked: To bring another window into view temporarily, shake the mouse over that window. The longer you shake, the longer the window stays visible.

How it got its name: From the folk tale in which the hero summons a genie by rubbing a magic lamp.

Why it failed: It was too tiresome having to keep shaking the mouse while you read a document.

Bat Signal (time code 31:10)

How it worked: When you hover over a taskbar button, the screen darkens, and a spotlight shines on the corresponding window.

How it got its name: After the distress signal used in the Batman series.

Why it failed: People liked the way it helped them find their windows, but it was too easy to trigger accidentally. Also, people tried to "ride the light beam", which inadvertently canceled the bat signal.

Squeegee (time code 33:10)

How it worked: When you hover over the pop-up thumbnail, the corresponding window comes to the front, and all the other windows turn into glass sheets.

How it got its name: It makes your screen look like somebody took a squeegee to all the other windows and washed all the pixels off them, leaving clean sheets of glass.

Squeegee won the day, and it was given the official name Aero Peek.

Bonus chatter: Although the Wikipedia entry for Batman clocks in at 4.3 Ginsburgs, the entry for Bat-Signal is only 857 milliGinsburgs. Hey, Wikipedians, you're falling down on the job!

Comments (28)
  1. Ian Boyd says:

    I find Squeegee too easy to accidentally trigger. I've never triggered it intentionally, and only ever accidentally triggered it. Once it happens, I become completely frozen with confusion and disorientation of what happened to my windows.

    Randomly moving the mouse clears it up. After a few moments I can reorient myself of where I was and what I was doing.

  2. Joshua Ganes says:

    Personally, I find that Squeegee is a better name than Aero Peek. This is Windows after all. Also, it's a fun word to say.

  3. Mitch says:

    As a native New Yorker who remembers the time period from the 1970's – early 90's, Squeegee brings up a lot of negative connotations. en.wikipedia.org/…/Squeegee_man

  4. Chris B says:

    I'm curious, how are experimental features such as these added to and removed from Windows?

  5. Danny says:

    What's aero? 1st thing I do after install is to change the theme to windows classic.

  6. AC says:

    Back when Aero was introduced in Win Vista, it was ok but not great. Glass looks really nice, but its usage got much better only in Win 7. Although I still wonder why things like Explorer don't have a title in the title-bar.

    Aero Peek is nice, Snap (if that's the name of snapping windows full- or half-screen) is great, but Shake is IMO annoying.

    It's a matter of taste, but personally, I think it's too bad Glass got removed from Win8 and it got a Windows 3.11 style "modern" look to compete with OS X and others, when Glass was already way ahead of competing designs.

  7. Kirby FC says:

    Today's article is 0.22 Ginsbergs.

    [I'm okay with that. This information is nowhere near as significant as Justice Ginsburg. Also: Not hosted on Wikipedia. -Raymond]
  8. Good history. I really like Aero Peek and use it a LOT

  9. Nick says:

    Personally I love the Aero theme: It's a perfect example of eye-candy done right: form follows function.  It makes interacting with windows easier, provides nice and subtle hints to z-order, and just looks clean.  Oh, and no pointless magic lamp effects in sight.  

    The about-face in Windows 8 makes no sense, but I strongly suspect usability was not a driving force behind the change.

  10. Tim says:

    Other operating systems use the thumbnails in the taskbar method, and I'm always confused why they thought it was a good idea. As noted, you just end up with a bunch of identical-looking white rectangles.

  11. Clipboarder Gadget says:

    Too bad that the API for Aero Peek is not public. I wrote a window manager once and had to use undocumented functions to enable Aero Peek there (users actually requested that feature). And in 8.1 that function actually changed, I have to reverse engineer that again… In my opinion that kind of politics is worth much more a lawsuit, rather the thing with windows bundling with ie. (sorry for bad English)

  12. @Clipboarder Gadget: I agree with you… mostly. Sadly, for every legitimate use of those powerful UI APIs, there is at least an illegitimate one. The clearest example is the APIs that manage pinning to Start Menu and Task Bar.

    That the API changed in Windows 8.1 is an unfortunate consequence of it being private. I don't think Microsoft wanted to break your software, given how much effort they put at compatibility (it wouldn't be the first time they faked an undocumented interface to prevent breaking applications! You can get some examples in this very same blog). Instead, I guess they didn't knew the API was being used, and thus they didn't think they would break anything by changing it.

  13. > I wrote a window manager once and had to use undocumented functions to enable Aero Peek there

    Please don't use undocumented functions.

  14. JoeWoodbury says:

    @AC. I agree.

    I recently started using Windows 8. The start screen is very clunky, but once I got rid of all the "active" icons and busy ware I'm coping, to my surprise what I miss the most is Aero. I'm constantly doing double-takes at windows with their big, fat, monochrome borders.

  15. apz says:

    @ Maurits:

    Did you even read the post? The whole point was that Clipboarder was explaining about how he was forced (unfortunately!) to use undocumented functions !

    There's an easy solution to stop people from using undocumented functions -> document and standardise a process !

  16. chentiangemalc says:

    You never have to use undocumented APIs, have some self control and say No to the feature & make stable and long lasting reliable software. Please… SOURCE: fixing hundreds of legacy s#$%t apps that shouldn't have needed fixing if coded properly…

  17. cheong00 says:

    @chentiangemalc: If I have to do something that could only be done using undocumented function, I'll stop and ask the user if they really want it or risk the application break in next OS release. If they say "go ahead", I'll use it because it's their money.

    That's the typical way of doing this in software house, and for most cases you should consider yourself lucky if the developer/PM even bite the bullet to ask you, because the users almost always follow that with argues that they want both the feature be done and not break in the next OS release.

  18. xpclient says:

    Thumbnail previews are a fail for the same reason: most windows look the same with tiny text. Unless you change the thumbnail threshold:

    Windows Registry Editor Version 5.00

    [HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerTaskband]

    "NumThumbnails"=dword:00000001

    and use 7+ Taskbar Tweaker with the "always_show_thumb_labels" option. I also always tweak the Taskbar timings:

    Windows Registry Editor Version 5.00

    [HKEY_CURRENT_USERSoftwareMicrosoftWindowsCurrentVersionExplorerAdvanced]

    ;Time after which thumbnail appears

    "ExtendedUIHoverTime"=dword:00000352

    ;Disable live switching upon hover

    "DisablePreviewWindow"=dword:00000000

    ;Thumbnail Hover Time after which it switches live:

    "ThumbnailLivePreviewHoverTime"=dword:000f4240

    ;Aero Peek Hover Time

    "DesktopLivePreviewHoverTime"=dword:00000190

    "LastActiveClick"=dword:00000001

    The Win+Tab switcher should have also used icons/live tiles, not thumbnails.

  19. 12BitSlab says:

    Those who use undocumented functions hurt all developers.  When MS has no choice but to make the OS larger and larger and full of shims just because someone is mad about an undocumented function being changed, it hurts developers AND users.

  20. @apz Yes, I read the post. My statement stands.

  21. morlamweb says:

    Also, on the subject of using undocumented APIs: one thing I've learned from reading Raymond's posts is  that the use of undocumented APIs, undocumented structure members, reg keys, etc. and the assumption that such undocumented features won't change is the root of most application compatibility problems.  Developers who use such undocumented features have only themselves to blame when their apps break in a new OS build.

  22. morlamweb says:

    Why do people think that the Aero Glass UI elements were removed from Windows 8?  Have they actually used Windows 8 Desktop?  My home laptop runs Windows 8 and all of the now-familiar Aero elements are there, including Peek.  Yes, Aero's not in the Start Screen nor in Metro apps, but that's a whole new UI and thus Aero would be subject to the -100 points rule (dare I call it Raymond's Law?)  The "old-fashioned" desktop is still in windows 8.  I use desktop mode so much that I've almost forgotten about the Start Screen.  Not saying that I don't like the Metro interface at all; it has it's place, I'm just more comfortable working in the desktop.

  23. ender says:

    @morlamweb: there is no Aero Glass in Windows 8 – desktop composition with all the effects it brings is there (well, except for Flip3D – no idea why they had to remove that, IMHO it'd make even more sense with metro apps; and unlike Vista and 7 it can't be disabled), but the glass borders are gone.

  24. morlamweb says:

    @ender: I suppose I should've looked up exactly what constitutes "Aero Glass".  I had always taken it to mean the entirety of the fancy UI elements introduced in Vista and 7, including Peek and Snap, and the default interface theme.  Now I see that Aero Glass is more properly the default UI theme in Vista and 7.  My apologies for the confusion.  Whatever the merits are of Glass vs. Metro themes, yes, Aero Glass is gone in Win 8.  Thankfully Peek and Snap survive.  Snap is my personal favorite "Aero" feature.  I work with multiple monitors, and I frequently move windows around to get a better look at what I'm working on.  Snap makes it much easier to move the windows around.

  25. cheong00 says:

    @12BitSlab & morlamweb: You'll have to teach users to stop punishing developers/PMs for handing out good deeds then.

  26. cheong00 says:

    Refer to my previous comment: Alternatively you can tell Microsoft to produce no feature that have no corresponding documented code to control, so we won't be forced by the users to go that path. But is that really what you want?

  27. morlamweb says:

    @cheong00: wrong.  Developers who use undocumented "anything" assume the risk that the behavior of the undocumented "thing" can change at any time.  That's one of the taxes that developers have to pay when they commit to using undocumented "anything" in production code.  In Clipboarder Gadget's case, it's their own fault if their app breaks because it relies on an undocumented function that changes between 8 and 8.1.

  28. cheong00 says:

    @morlamweb: I agree with you, just that it's not practical in reality. There's no problem to avoid using undocumented way if there is a documented one exist, so the problem is on the "something can only be done using undocumented functions" scenario.

    Developers "should" warn user if that they need relies on undocumented functions that breaks across Windows version. However if they warn the users, the users will just bash for way to both "have the function" and "not break in future builds", putting them in difficult position. So most developers (especially those who work as contracted workers in software vendors because they know they'll be there 2 years top and won't suffers from any consequence because of this) will just default to "just use it, and don't talk" mode.

    The incentive for doing the right thing is so little (self-recognition of doing something right only) but the negetive consequence is so huge (blame by users, blame by PMs, blame by everybody involved in the project) so the logical choice of what to do is obvious. That's why I said it's impractical.

Comments are closed.