Jump to content

Winexpos�


Recommended Posts

matonga: WinExpose is awesome. Best Expose clone I've used yet, much much faster than any other, that's for sure.

I sent you an email about this but I guess you didn't get it. I had a few idea to make the app a little nicer:

I'd really like to see the background color that comes up when activating Expose mode be customizable, and to have an alpha slider (to allow a level of transparency, showing the desktop underneath). That or, to give it a bitmap of choice to display instead of a color.

I'd also really like some method to hide the system tray icon. I know that hiding that seems like it would make getting to the options menu troublesome, but most people are going to set it up the way they want it to be and then leave it alone once it's done, so the icon is just wasted space. To restore the icon, you could have it coded to untoggle that option whenever the program is run by the user (but not automatically via a startup menu or registry entry), so that the icon would show up again. That or, a special keystroke to use once the Expose mode was activated that would restore the options (maybe Ctrl+F1 or something like that ?)

I highly recommend that you make it so that pressing the command key to open Expose Mode when Expose Mode is already open *close* expose mode and go back to whatever window was previously selected. The benefit of this is that it's easier to hit a key a second time to undo the mode than it is to move to your mouse, click on the app you want, and then get back to what you were doing. A second press more quickly restores functionality if the first keypress was a mistake.

Thanks again for this great piece of software.

Link to comment
  • Replies 510
  • Created
  • Last Reply

Top Posters In This Topic

@all:

Published a newer version. It will pose the same problem described by Sranshaft, but this time there is a lot more info on WinExpose.log. But, I tried it on another computer, it enumerated the needed texture format and failed to blit... ???? I don't know what can be, but'll be keeping an eye on it (I mean it failed to load textures on a SiS card). If you find the same problem described by Sranshaft, while using version 2006-10-18-b, please send me the log file by private message. Thanks and regards.

@Kaishi:

I received your mail, and answered it... ,':-), maybe it was filtered as spam or whatsoever.

In that mail, I was telling you that the color is the desktop color, and even tries to load the wallpaper (it fails to do so in some computers). Indeed this is a bug of my program, it should show your wallpaper instead of just a plain color.

About the keystroke, I forgot that! I'm adding it to the to-do list ;-)

About transparency levels, it's already in the to-do list.

OK, added about keystroke to to-do list.

Regards, and sorry for inconveniences with the mail.

(I'll have to replace the address in the about box with something else, maybe the url of this thread).

Matías

Link to comment

@Kaishi:

Do you have a wallpaper on your desktop?

Could you run click on "Start""Run", type regedit.exe, click "OK", inside Registry Editor access "My computer""HKEY_CURRENT_USER""Control Panel""Desktop", right click on Desktop folder, "Export", select "...Win9x/NT4" from Type list, save it, and send that file to me? I know it's a bit technical, but it would help me a lot to solve the wallpaper issue.

Regards and hope to hear from you soon,

Matias

Link to comment

New version (yes, three in one day):

- Nothing fixed on video acceleration in this version, sorry.

- Made abstract engine classes, then subclassed the current engine.

- Did another engine, this one is completely software based and should work on all machines.

- However, the software engine does not support transparency, brightness, wallpaper tileing, and it is VERY SLOW (hey! it's been written in about 15 minutes!).

There are two executables now:

- WinExpose.exe: almost the same than version 2006-10-18-b, but may work where the other didn't.

- WinExpose-GDI.exe: VERY SLOW fully software based WinExposé, it must work on all machines. If it doesn't work, it's a bug on the exposeing code itself, not the engine.

I'm considering to write a third version capable of using an external .dll as the engine, and release the API specifications and maybe an example code, so anyone can try and write his/her own engine.

@ViperAFK:

Yes, it restores windows to unmaximized position, if I correctly understand what you tell me. This is because I was lazy and didn't want to write lots of code (well, three or four more lines of code...) :-).

About the lock up on settings while expose-ing, you're right again, I hadn't notice it. It shouldn't show the settings window while exposing... or better it should unexpose windows then show settings (showing the settings window above the exposed windows it's a lot complicated if I want it to look fine).

@vkeios:

good to know it works on ATI, thanks! I hope it keeps working on future versions :-.

@enjoilax:

Yes, that's right. I have the same problem with my dad's computer (S3 video). Shall you send me the WinExpose.log file? I would like to check the texture formats your video board enumerates. Thanks in advance.

@NSS Majin Buu:

Wow! Yes, also I have been reported problems with Yahoo! widgets, WindowBlinds, runme, and a whole bunch of software. But I can't get the program working properly on most video boards, so I have no time to solve these problems yet. I hope once compatibility with most video boards is reached, I will have time to install all these software and kill all those bugs.

Regards,

Matías

Link to comment

Matias: WinExpose runs great on my ATI X1800 GTO, like a dream even.

Yes, I do use a background, it is a BMP (not JPEG or PNG, because I really dislike Active Desktop, and any non-BMP format will require Active Desktop). I did notice that the Expose background color is the same as my desktop background color, which is fine. This is a fine solution to the color question, but I'm kinda curious if there would be an easy way to have a setting for, "Windows Desktop Color or Hex Color Code / Standard Windows Color Selector" in a menu somewhere, so that the user could specify their own color if they didn't want to use the windows background color.

Still, not a big deal. As for the registry information:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USERControl PanelDesktop]

"ActiveWndTrkTimeout"=dword:00000000

"AutoEndTasks"="0"

"CaretWidth"=dword:00000001

"CoolSwitch"="1"

"CoolSwitchColumns"="7"

"CoolSwitchRows"="3"

"CursorBlinkRate"="530"

"DragFullWindows"="1"

"DragHeight"="4"

"DragWidth"="4"

"FontSmoothing"="2"

"FontSmoothingOrientation"=dword:00000001

"FontSmoothingType"=dword:00000002

"ForegroundFlashCount"=dword:00000003

"ForegroundLockTimeout"=dword:00000000

"GridGranularity"="0"

"HungAppTimeout"="5000"

"LowPowerActive"="0"

"LowPowerTimeOut"="0"

"MenuShowDelay"="400"

"PaintDesktopVersion"=dword:00000000

"PowerOffActive"="0"

"PowerOffTimeOut"="0"

"ScreenSaverIsSecure"="0"

"ScreenSaveTimeOut"="600"

"ScreenSaveActive"="0"

"TileWallpaper"="0"

"UserPreferencesMask"=hex:90,12,07,80

"WaitToKillAppTimeout"="20000"

"OriginalWallpaper"="C:Documents and SettingsKaishiLocal SettingsApplication DataMicrosoftWallpaper1.bmp"

"WheelScrollLines"="3"

"SmoothScroll"=dword:00000000

"Pattern Upgrade"="TRUE"

"FontSmoothingGamma"=dword:000003e8

"CTTuneMakeSettingsDefault"=dword:00000000

"ConvertedWallpaper"="C:WINDOWSWebWallpaperWindows XP.jpg"

"ConvertedWallpaper Last WriteTime"=hex:00,50,bf,7c,89,27,c1,01

"WallpaperStyle"="2"

"Wallpaper"="E:ImagesWallpaperAbstractionbitmapsGRAVITYPULL1_0.bmp"

[HKEY_CURRENT_USERControl PanelDesktopWindowMetrics]

"BorderWidth"="-15"

"CaptionFont"=hex:f5,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,00,00,bc,02,00,00,

00,00,00,01,00,00,00,00,41,00,72,00,69,00,61,00,6c,00,00,00,00,00,00,00,00,

00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,

00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

"CaptionHeight"="-270"

"CaptionWidth"="-270"

"IconFont"=hex:f5,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,00,00,90,01,00,00,00,

00,00,01,00,00,00,00,54,00,61,00,68,00,6f,00,6d,00,61,00,00,00,00,00,00,00,

00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,

00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

"IconSpacing"="-1125"

"IconTitleWrap"="1"

"IconVerticalspacing"="-1125"

"MenuFont"=hex:f5,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,00,00,90,01,00,00,00,

00,00,01,00,00,00,00,54,00,61,00,68,00,6f,00,6d,00,61,00,00,00,00,00,00,00,

00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,

00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

"MenuHeight"="-285"

"MenuWidth"="-285"

"MessageFont"=hex:f5,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,00,00,90,01,00,00,

00,00,00,01,00,00,00,00,54,00,61,00,68,00,6f,00,6d,00,61,00,00,00,00,00,00,

00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,

00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

"ScrollHeight"="-195"

"ScrollWidth"="-195"

"Shell Icon BPP"="32"

"SmCaptionFont"=hex:f5,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,00,00,90,01,00,

00,00,00,00,01,00,00,00,00,54,00,61,00,68,00,6f,00,6d,00,61,00,00,00,00,00,

00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,

00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

"SmCaptionHeight"="-225"

"SmCaptionWidth"="-225"

"StatusFont"=hex:f5,ff,ff,ff,00,00,00,00,00,00,00,00,00,00,00,00,90,01,00,00,

00,00,00,01,00,00,00,00,54,00,61,00,68,00,6f,00,6d,00,61,00,00,00,00,00,00,

00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,

00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00,00

"AppliedDPI"=dword:00000060

"Shell Icon Size"="32"

"MinAnimate"="0"

"Shell Small Icon Size"="16"

Link to comment

Okay, a few little things: WinExpose is now restoring windows that hang out on my system tray exclusively. My Antivirus, AVG, is coming up whenever I press my Expose key, such that I manually have to close the window again (but it keeps running in the tray, just the way it should).

Basically, WinExpose needs to be told to ignore windows that are currently hidden by way of System Tray icons somehow.

GDI mode is really fast for me ! Not slow at all, however, still no background image. I don't mind, I'm sure you'll get it all worked out in time. I'm just trying to help you do so, mhmm !

Link to comment

Wow amazing program ! Thanks

-It does seem to cause glitches in some other programs (like Bandwidth Monitor Pro) in which it causes a stackoverflow error to them after they've been 'exposed' but writing an exception and preventing the program from exposing them in the first place solves it.

These are the problems I'm experiencing with it:

OpenOffice - Shows a blank/black screen when exposed (still works if clicked though)

jEdit - Shows a blank/black screen when exposed (still works if clicked though)

Bandwidth Monitor Pro - Causes a stack overflow error and crashes that program

Link to comment

New version:

- Now you can select between DirectX, Software, and Windows GDI, for graphics engine. So, if DirectX engine doesn't work just select Software (it's slower, and still lacks support for tiled wallpapers, but else it looks the same than DirectX engine).

- Anyone who downloaded the October 18, 2006 © version, and now updated to October 19, 2006, feel free to delete WinExpose-GDI.exe, as now all engines are in the same executable (WinExpose.exe).

- Pressing hot-key while windows are being exposed, makes WinExposé to cancel the exposeing (so if you accidentally press the hot-key, just press it again). I did this because more than once it had been suggested to me, and it was easy to implement.

Had no time for other improvements (I have to wake up early tomorrow). I hope to make more enhancements soon.

Good night *-<);-).

Matias

Link to comment

Hello! I'm so stoked to see the development of this app getting even better!! You are awesome, Matias.

I would like to request a feature though...would it be difficult to code in an option whether or not to hide the Explorer Bar?

I'm using ObjectBar, and the wallpaper "shifts" down around 20 pixels or so when WinExpose does its deal. I think keeping the taskbar hidden would solve this, because before that change, the wallpaper remained seamless.

Link to comment

vzact: if you're using hardware accelerated video playback, you're bound to get strange results. It's hard to explain all the technical details but suffice to say that your videocard is taking the video data before it hits the framebuffer and outputting it, in the right place, directly. This means that windows itself doesn't see the video contents, and thereby, WinExpose can't capture them. Also, the videocard probably isn't expecting WinExpose to move things around the way it does, and it probably continues its direct-to-screen output, causing flickers.

It might be possible to eliminate the flickering but you'll never get moving video within the expose mode unless you're using software rendered video output (which is much slower than an Overlay aka Hardware output)

EDIT: Love the new version, Matias. Great work encorporating the different engines into a single executable. The app is nice and fast, which I like. Also, as a workaround for the Tray items that were being restored, I just added their names to my ignore list and they stopped being restored. Having the ignore system the way you currently do does have some benefits, that's for sure, but it's probably still a good idea to allow applications to be blocked based on the .EXE filename, especially mediaplayers, because they change their name based on the song, so it's pretty much impossible to block them currently. That and IM clients who put the user's name into the window (Gaim in particular).

Speaking of Gaim, for everyone out there who uses GTK+ based apps (Gaim, Gimp, there are many others but these are the big two on Windows), keep in mind that because of the way they are written, WinExpose (and anything else that uses a similar method of window capturing, TaskSwitchXP for example) is not going to be able to display them. Unfortunately, it displays the general outline of the window, but the contents are all black white. I'll take a screenshot and show you.

As a method to prevent this, Matias, do you think it might be possible to, eventually, have some code to recognize GTK+ based applications and to draw their Icon at 64x64 or 128x128 instead of trying to capture the window itself (since a normal windows app can't interact with GTK+ and a GTK+ app can't interact with normal windows ones, meaning you couldn't recode WinExpose to use GTK+ or then it would only work with GTK+ applications, which would make it pretty bad). This is the best solution I can think of, and it's what I recommended to the team behind TaskSwitchXP.

Link to comment

This is an absolutely amazing program and it is great to see how frequently you update it. If you are looking for feature recommendations then I thought of a quick one. Some programs that I have used like this allow you to hover the mouse over one of the screens and press the "M" or "Q" key to minimize or exit that application. I think that would be a pretty cool feature...but just keep doing what your doing because this rocks!

Link to comment

mvprj84: not a bad idea, but keyboard shortcuts like that are easy to accidentally press, which could result in a close command sent to a window without the option to save the data. This could be bad. If a function like that were implemented, I'd really like to see the key configurable as well as the ability to disable that function entirely.

Thus far, Matias has done a great job allowing the user to enable and disable functions from WinExpose as they see fit.

The one thing missing still from the Expose clone-job is adding the hovering text over a window. He's already said that's on the way though.

Matias: I have to say, sir, you have done a fantastic job keeping with the pulse of the community on this one. I've shown the app to several friends who don't visit Aqua-Soft who were very impressed and are now users.

Link to comment
@matonga: Maybe this is a bug in my ATI graphics driver, but when in DirectX mode the videos played back in WMP (or other media players) blink on the center of the desktop...is there a way to avoid that?

best,

vzact

No, as far as I know (sadly). Maybe you can workaround it by installing ffdshow and enableing overlay mixing / raw output support on it. I get the same artifact you describe, but in VirtualDub and my card is an nVidia (so it's probably more of a Windows GDI / DirectX problem, not specific to any card).

Link to comment

OK, new version (2006-10-19-B):

- Software engine is MMX accelerated.

But:

- Now it seems to be slower... ??? MMX deaccelerated??? (or I'm very bad coder with MMX)

- Still lacks support for tileing, and also for text blitting (hardware engine now supports text blitting).

Text blitting routines are not being used yet, the idea is to show the window's title bar above the window when you hover over it ("The one thing missing still from the Expose clone-job is adding the hovering text over a window. He's already said that's on the way though.").

About exception list including executable names as well as window captions... I admit I didn't work on that yet... if it proves to be easy to implement I'll try to do that now.

Greets,

Matias

Link to comment

Hey matonga..

just a friendly heads-up to use the 'edit' button on your earlier posts to avoid 'double posting'

This is just a preemptive suggestion so the mods here do not have to weigh in ;)

Did you by any chance check out Smallwindows? there are some really neat things implemented with it, i seem to remember the program even added shadows to the exposed windows. would be worth checking out.

Very nice progress by the way! I absolutely love the 'instant selection' feature which allows you to select a window at anytime (including during animation!)

This feature is unique to your application amongst expose clones (as far as I know.) And it's one of the most usable features for me. thanks again.

Link to comment

Solution to the black-flickering issue that was brought up: tell it not to "update while exposed". This also reduces the CPU usage. The updates don't come often enough to really be useful, anything that is animating quickly will look very very choppy at best. Turning it off gives you solid previews, which means no video flicker, and this uses almost zero CPU usage. It's great.

EDIT: Matias, I'd like to come up with some artwork for you to use with WinExpose. For example, instead of the current highly system on the Corner Selection options pane, I'd like to use something that is independent of skin, because my skin of choice makes it impossible to tell what corners are enabled or disabled. I'd also really like to help the project by cleaning up / redesigning the logo. It's not a bad design but the edges around it could stand to be much much smoother and cleaner looking. Between me and a friend, I know we could come up with something that would work nicely for you, if you'd let us.

Link to comment

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now

×
×
  • Create New...