I have just release the first version of a desktop preview module which uses VirtuaWin's desktop image generation feature, my hope is that someone with a greater flare for fancy effects will be able to add some glitz to this or a similar module to implement transition effects etc.
You can download a binary version of this module from our main modules page, the source code is in our CVS repository which can be accessed via sourceforge.
I will definitely give this module a try once I get home from work. I hope that this does go on to inspire future modules to take advantage of VirtuaWin's image generation feature by offering some transition effects.
I will let you know what I think of it later today. Thanks for making this module, and thank you as always for your continuing development of VirtuaWin.
Also, I think you should make a post about this on the main site so that more people will know about it.
Okay, so I just gave it a quick test when my boss wasn't looking. This was on my Windows 7 x64 laptop.
- Quick fullscreen display with hotkey
- Zoom effect looks nice and isn't gimmicky
- The module feels more complete that most, since it has its own settings clearly defined in the module configuration
- Negligible resource consumption, so it integrates as if it were just an optional function of VirtuaWin, itself.
- Desktops are blank until switched to a few times so that a picture can be generated. I realize that this is probably a Windows issue and that nothing can be done about it, but it's a downside nonetheless.
- Tab, Shift+Tab and other keys mentioned in the help file don't seem to work for navigating the fullscreen preview. I didn't have time to try it in windowed mode yet.
- Causing issues with my chat program during desktop switching. This will require further explanation:
I have Window Rules set for Digsby, my chat client, so that the program will show in the taskbar across all desktops. I did this so that I can see when I have a new message and when someone is typing, and I used the "Move" hide option.
When I have VWPreview enabled, I notice that when switching quickly between a desktop with Digsby on it and one without it gives me occasional side effects. When switching to the desktop without Digsby, sometimes it will still show Digsby after the switch for about two seconds. When switching back to the desktop with Digsby, sometimes it will not show Digsby until after about two seconds have past.
This last issue is the only reason why I might hold off on using VWPreview. If it is, indeed, impacting my desktop switching speed/responsiveness, then I'll have to go without it for the time being.
Any clue as to why the Digsby issue might be happening? Having Digsby show in the taskbar across all desktops is a must for me, so I have disabled VWPreview for now to avoid the delays during switching.
Hopefully this was constructive. I will continue to do more thorough testing later tonight, and despite the few quirks that I found thus far, this is definitely one of the best modules available for VirtuaWin… impressive for version 1.0.
Okay, so after further investigation, it seems that VWPreview was NOT having any negative affects on Digsby when switching desktops. After turning off VWPreview, I still experienced the delay once in a while when switching back and forth rapidly. This is simply a side-effect of using the "Move" hide option when keeping the taskbar button visible. But like I said, it only happens when I am rapidly switching back and forth, which is not something I would ever do under normal conditions.
Thanks for doing this. Works great. This thing is a keeper. It would be nice to have the previews automatically updated (refreshed) say every 10 seconds?
ScOULaris - thanks for your feedback and sorry you first impression was not the best! Addressing the Cons:
1) Initially blank: This is a tough one to fix properly but if all desktop images were initialised to the background image rather than black (I use a Win7 machine as well) it would vastly reduce the impact of this problem and this does not seem that hard to do - but fix is needed in VirtuaWin not VWPreview!
2) Keys: These work for me, it sounds like VWPreview window does not have the input focus, if you press Alt-Tab to open Windows process selector which window is left most, i.e. which one had focus?
3) Performance: The use of VWPreview can affect the performance of VW as it requires VirtuaWin to generate a desktop thumbnail before swapping, but only if the user has been on the current desktop for at least a second. In real terms this means there many be a very small initial delay on the first desktop change but this would effect the whole desktop change not an individual window so this is not likely to be the issue you are seeing and personally I've not seen any performance impact (but then I am on a dual quad core).
The issue, as described, is likely caused by Digsby not responding quickly enough to VirtuaWin's 'are you alive?' ping - VW tries desperately not to hang as this is incredibly frustrating (see recent outlook 5sec hang thread!) so before trying to hide/show any window it checks that it is going to respond because if it doesn't it will hang VW as well. It may well be the use of Move hide method is affecting this as it does seem to be more costly in performance and therefore when changing desktops rapidly Digsby may not be able to keep up.
However this is not relevant to VWPreview as such and there's not a lot we can do about this….
Actually, my first impression was great once I got home and got to mess around with it more. Like I said in my follow-up post, I realized that VWPreview was not having any noticeable affect on performance like I had originally thought. And the Digsby delay only happens when I literally cycle back-and-forth between two desktops with shortcuts keys in rapid succession. It never happens during actual usage, only during a stress test like what I was doing.
Overall, this module is a great success for people who like to see all of their desktops at once. I, personally, just use hotkeys to quickly navigate around my 2x2 setup, but I will be happy to continue testing this module to assist its development.
I will see what's going on with the input focus issue when I get home today. During my previous testing, Tab and Shift+Tab were not having an effect on the fullscreen preview.
I am gonna be beta testing the upcoming version of Dexpot soon, but I honestly think that VirtuaWin is currently perfect at its core. The main functionality of the program suits all of my virtual desktop needs, and its more responsive than any other program I have tried. The only thing that could be done to improve it is for more quality modules like this one to be developed by third parties, because any increased functionality will probably be user-specific in nature.
VirtuaWin plus the Win7 2x2 tray icon is just awesome. It feels like my virtual desktops are actually integrated into Windows 7.
andygrus - Yes it would be relatively easy to, but what is your reason for needing an update?
My main aim for this module was a very simple view and select desktop - i.e. no real need for an update as the user will be looking at the preview and not messing with the main desktop so the preview is unlikely to become out of date. If the current desktop was updated it would then have the preview window visible too so if the preview window was rather large your preview of the current desktop would be greatly obscured.
Are you trying to use it as a pager? If so would it be better to add a 'Don't close the window on desktop change' or 'Use as desktop pager' option to the 'Desktop Select (window)' section so that it can be used as a pager?
Or have you got other ideas?
What would a "Use as desktop pager" option do? Would it just keep the preview window open until you closed it manually?
I go back-and-forth between wanting to use a pager and thinking that I have no use for it since I use hotkeys almost exclusively.
Unfortunately, I could not get KvasdoPager to work on my Windows 7 x64. I even tried the supposedly 64-bit compiled version, but I could not register the .dll no matter what I tried. I would love to see a more modern pager module for ViruaWin that integrated into the superbar with an appropriate aero-based look and the ability to drag windows from one desktop to another within the pager. Programs like WindowsPager already do this (minus the aero look), but they don't keep track of input focus on a per-desktop basis like VirtuaWin does, which is crucial for me.
I use you VWpreview in full screen mode only. This gives a somewhat big enough representation of whats going on in the other 3 desktops. It´s not possible to read everything but this is not necessary. It´s just enough to see if some long running jobs/filecopies are yet complete a torrent has finished or a quickpar repair is finished. Two of my desktops are remote desktop connections to heatmaps (color representations of stocks). Colors and progress bars are easily readable in the preview. If VWpreview would show actual information it would help me to decide very quickly where to go next.
It would also be possible to use VWpreview when waiting/talking on the phone. Like a screen saver but with real time information. Thanks for reading.
I think what you're really wishing for is some way for the desktops previews to be live rather than static thumbnails. Would that be possible?
(I'm guessing not.)
bjasspa, quick question…
Since you've shown that you can implement desktop screenshots and the zoom effect with this module, would you be able to maybe make a small transition module that quickly and smoothly slides from one desktop to the other? I know you said that you don't have much experience with 3D effects, but I'm not asking for a cube or breakfast plate type of transition.
I just want it to use full-screen captures to slide between desktops smoothly. If you don't want to attempt that, or you just flat-out can't do it, then that's okay. I just figured I'd ask. : )
Yes live desktops would be wonderful. But (configurable) timer refreshed desktops would still be great. Even a refresh hotkey would be good.
andygrus - Interesting concept, I hadn't thought of this use case. Have you considered using the AutoSwitcher module? It allows you to set a switch speed and has a hotkey to enable/disable so when enabled you can simply sit back and watch the desktops cycle…
WRT VWPreview, to update all desktops is fairly difficult to do well as all windows on desktops other than the current one are hidden so a screen shot can't be taken. The only method I can think of is for the module to slowly cycle through all desktops (like AutoSwitcher but with the Preview window still on top) and once restored it hides the preview window, gets the desktop image updated and then restores the preview window before moving onto the next desktop. This would create a accurate 'live' update but would lead to the screen 'flashing' during the update process (unless someone out there knows a way of avoiding this??).
Would this still be of interest to you?
ScOULaris - To be honest I've never considered it, I've worked with excellent graphics programmers and well aware of my limited knowledge, but then something might be better than nothing.
There's also the question of time of which I have very little, maintaining the core and supporting the group takes more than I have :-(
Perhaps things will be a little quieter now 4.2 is released (which in theory supports Win7 better…), if so I'll see what I can do.
ScOULaris - Where do you get the 64bit version of KvasdoPager from? This is one module I do miss on Win7 64bit! To register the dll you will need to start a cmd As Administrator and run the register command in it, I have managed to register the 32bit dll but it failed to work as its only 32bit. The other thing to also try to to run VirtuaWin as admin otherwise it may not have the require permissions to talk to the dll as its in the elevated explorer.
Would definitely be interested in a 64bit version of the dll!
You can find the 64-bit DLL in this tracker thread. There are further instructions at the bottom that you might need to follow in order for it to register properly through the Admin command prompt.
Even after registering the 64-bit DLL, however, the pager simply doesn't work properly in Win7 x64. It just displays a blank, white toolbar that can be resized. I wish someone with the know-how could get it working right in Windows 7 64-bit. It's probably the best module out there for VirtuaWin, and it works so well in XP.
Oops, forgot to post the link. Here it is:
Wow, I have a working kvasdoPager on my 64bit Win7 machine! To get it working I:
1) Downloaded the standard 4.3a release and copied the exe into the modules folder
2) Downloaded the 64bit version from the thread and used only the dll
3) Downloaded & installed the x64 vc10 runtime package (see thread).
4) In a cmd prompt (run As Administrator) I ran 'regsvr32 vwKvasdoPagerBand.dll', failure of this is likely caused by not installing the vc10 runtime or not running as admin.
5) In VW Setup -> Modules I hit 'Reload' to start KvasdoPager Module.
6) On the toolbar I right clicked and in menu -> Toolbars I enabled KvasdoPager
Currently working a treat, good to get it back! I have not had to run VirtuaWin as Administrator, seems to work fine as a normal process.
Thank you for pointing me to Autoswitcher. I will give it a try. Of course I like VWpreview better because it´s all on one screen the moment you look at it. May be the flickering is not so disturbing on a fast PC with a fast Graphics Card. For me such a feature would be very useful and I would use it all the time. I understand that it is difficult to implement and may be it´s not worth to do only for me.
I did all of the same things you did, and I just got an ugly white toolbar with no desktop previews.
The only thing I did differently was I did not use the regsvr32 command to register the dll. I just opened up an Admin Command Prompt, navigated to the KvasdoPager folder, and ran the install-dll.bat from there. It still confirmed that the dll was registered however, and after enabling the pager I got a warning about it not being designed for my version of Windows followed by a useless white bar.
Could you post a screenshot of how it looks for you in Win7 x64?
Trust me, its working; are you sure you are using the 64bit dll, the 32bit exe and you have reloaded or restarted VirtuaWin with KvasdoPager enabled? Check that the vwKvasdoPager.exe process is running.
I won't be able to try again until I get home. But I will do "regsvr32 /u vwKvasdoPagerBand.dll" to unregister the DLL, and then re-register the 64-bit DLL with the regsvr32 command and try running it again.
But other than using the regsvr32 command, I did everything the same as you described in your post.
But could you post a screenshot of how it looks in Windows 7? Does it have that nasty white border?
So I got it working, and it looks AWFUL in Windows 7. The white borders around the pager look terrible on my transparent taskbar, and the inactive desktops are so lightly colored that they almost look completely white.
This combined with the visual delay when switching desktops with the hotkey (the desktop switches instantly, but the pager takes a second to reflect the change) makes KvasdoPager unusable for me.
What we need is a pager module written to integrate properly with modern OS's like Windows 7.