TopDesk: Expose Clone for Windows (and capturing video from DirectX)
Finally, my search for a decent Windows Task Switcher is over. Sure, there's TaskSwitchXP, which kicks the Windows Power Toy Task Switcher's booty.
But, no, I'm not talking about an Alt-Tab replacement. I'm talking about the pure sex that is Mac OS X Expose, but on Windows, and written in DirectX. It's TopDesk, and it's the bomb. And it's US$9.95? Sold. He sure ain't doing it for the money.
It has been around a bit, but it used OpenGL and it was pretty buggy. The author recently rewrote the whole thing in DirectX, adding a bunch of new features, including floating buttons for TabletPC support and corner hotspots.
Oh, and it supports multi-monitor, too? Awesome.
I set it up with the very corners of my monitors as "hotspots" to start the taskswitcher. Since I'm a developer, I also changed the default hotkey from the Mac default of F9 to a more reasonable Alt-F9.
Here's a Windows Media 9 encoded video of it in action on my machine. I used Fraps (another awesome util) to do the DirectX capture to AVI, FYI. Then I used RiverPast Video Cleaner to make an Animated GIF from that AVI. Then I used GifWorks.com's Online Animated GIF Editor to make it loop.
I sure love utils.
About Scott
Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.
About Newsletter
That's odd, I'm just running on a crappy laptop, and a pretty regular ATI card at home. That makes me wonder if you have DirectX9 or a DirectX9 driver?
"One cause of the problem you're seeing is that DirectX and hardware acceleration are disabled by default. There's a description of how to enable them at http://www.msfn.org/win2k3/hardwareacc.htm, and we're currently updating out FAQ with information about this issue."
I run a dual-head ATI and the default MS driver had DirectX enabled on one output and disabled on the other. Downloaded the latest drivers and all is well. Bravo!
Jeff - Great to see that that solved the problem.
Mark - The issue you're seeing may be related to the issue Jeff was seeing. TopDesk will only run on outputs that have hardware acceleration enabled, so if your second monitor has it turned off or doesn't support it, you'll only see TopDesk running on one monitor (Windows XP is a lot more forgiving DirectX-wise than w2k3).
Scott - Never fear, we've got a Windows 3.1 version in development, due for release in 2009 ;)
If anyone has any issues with TopDesk, don't hesitate to shoot me an email.
Which sucks because I've been looking for an Expose clone for Windows. I use it so much on my Mac that I instinctively hit f9 at work and expect it to do something. I tried another Expose clone under windows, but it was so slow on my machine that it was practically a slideshow. I use Quicksilver on my Mac too, so I have slickrun hidden but the hotkeyt is tied to window-space (mimicing the command-space hotkey on my mac).
Well, at least WinPlosion still works with 3 monitors..
In other words monitor #3 just sits there as-is while monitors #1 and #2 do their fancy window dance.
This does work OK in WinPlosion, for what that's worth. I emailed you directly with this info + screenshot of display properties.
The update doesn't happen at regular intervals because the Windows XP PrintWindow() API function used to grab window images is very slow (0.25 to 0.5 seconds for a fullscreen window, even on a fast machine). So if TopDesk were to update at a regular interval, you'd see your system "pause" for several seconds every time TopDesk did its thing. Obviously, it isn't acceptable for an application to interfer with the the use of the system like that.
I'd like to improve the window grabbing speed (and would really appreciate it if any Microsoft engineers could give me any suggestions on how to do so :)), but at the moment I'm limited by the speed of PrintWindow().
Comments are closed.