Winexpos�
#83
Posted 18 October 2006 - 09:57 PM
- 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
#84
Posted 18 October 2006 - 10:11 PM
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"
#85
Posted 18 October 2006 - 10:25 PM
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 !
#86
Posted 18 October 2006 - 10:56 PM
-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
#89
Posted 19 October 2006 - 06:14 AM
- 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
#91
Posted 19 October 2006 - 06:54 AM
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.
#93
Posted 19 October 2006 - 12:30 PM
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.
#94
Posted 19 October 2006 - 02:05 PM
#95
Posted 19 October 2006 - 04:38 PM
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.
#97
Posted 19 October 2006 - 05:38 PM
vzact;425148 said:
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).
#98
Posted 19 October 2006 - 05:48 PM
- 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
#99
Posted 19 October 2006 - 06:10 PM
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.
#100
Posted 19 October 2006 - 07:47 PM
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.








Sign In »
Register Now!
Help



MultiQuote