Page 1 of 1

Replacing Windows's Window Manager

Posted: Mon Aug 31, 2009 4:32 am
by AndrewAPrice
Around a month ago I posted a concept on a Whiteboard window manager. I want to implement this idea, though I would require hardware accelerated compositing, so I decided to use an already fully featured OS and build on top of that (Windows), not to mention I would have access to tablets and the like.

I remember back in the Win 9x days I had a few utilities that add all sorts of animation effects and graphical enhancements to earlier versions, and I was wondering how they did this, and if it's still possible on Windows XP/Vista? I'm not looking at replacing just the shell, because by I want to strip out the window decorations, use my own methods for moving/resizing/rotating windows.

So, I was wondering if it was possible to write a replacement for the window manager in Windows?

The alternative is I run my window manager as a standard application (which you can full screen), and programs run inside of that.

Re: Replacing Windows's Window Manager

Posted: Mon Aug 31, 2009 8:22 am
by whowhatwhere
MessiahAndrw wrote:Around a month ago I posted a concept on a Whiteboard window manager. I want to implement this idea, though I would require hardware accelerated compositing, so I decided to use an already fully featured OS and build on top of that (Windows), not to mention I would have access to tablets and the like.

I remember back in the Win 9x days I had a few utilities that add all sorts of animation effects and graphical enhancements to earlier versions, and I was wondering how they did this, and if it's still possible on Windows XP/Vista? I'm not looking at replacing just the shell, because by I want to strip out the window decorations, use my own methods for moving/resizing/rotating windows.

So, I was wondering if it was possible to write a replacement for the window manager in Windows?

The alternative is I run my window manager as a standard application (which you can full screen), and programs run inside of that.
There's a key in the registry I set when I used Blackbox for Windows.
http://www.symatech.net/change-shell

Re: Replacing Windows's Window Manager

Posted: Mon Aug 31, 2009 8:24 am
by NickJohnson
I'm not sure how flexible NT-based Windows is in terms of it's window manager. There are definitely programs to redecorate it, but I don't think the functionality can be changed much because the graphics engine runs in kernelmode (and obviously you don't have the source). This is what Wikipedia has to say:
Windows XP allows the user to change a limited number of window management options, limited mainly to the classic Windows 95 look and the newer Luna theme. Alternative shells for Microsoft Windows XP and earlier have also emerged. For example, LiteStep can replace the graphical user interface on Windows 95, 98, or NT with an Afterstep style.[4][5]

However the level of customization which is even possible in Windows XP compared to X is severely limited due to the tight integration of the various components.[citation needed]
Personally, I would try writing a window manager for X instead, which is much more flexible, and also has hardware acceleration (in theory :roll: ). It can also be run within Cygwin, as well as OS X, Linux, *BSD, etc. I've heard the API is strange though - it's actually a client-server setup over loopback internally.

Re: Replacing Windows's Window Manager

Posted: Mon Aug 31, 2009 9:43 am
by Troy Martin
I would be very open to a replacement for Explorer. She is a coldhearted (which means she freezes a lot, hahaha) beeyawtch.

And yes, I would assume it is possible. With the flameguard active, Game Maker 7 (written in Delphi) has some form of ability to hide its menu bar and controls, so I don't see why it wouldn't be possible hide other programs' controls.

Cheers,
--Troy

Re: Replacing Windows's Window Manager

Posted: Mon Aug 31, 2009 9:50 am
by whowhatwhere
Troy Martin wrote:I would be very open to a replacement for Explorer. She is a coldhearted (which means she freezes a lot, hahaha) beeyawtch.

And yes, I would assume it is possible. With the flameguard active, Game Maker 7 (written in Delphi) has some form of ability to hide its menu bar and controls, so I don't see why it wouldn't be possible hide other programs' controls.

Cheers,
--Troy
Flameguard is like....a temporary shield. When you use it for every single post, it wears off really quickly. Use it wisely.

Re: Replacing Windows's Window Manager

Posted: Mon Aug 31, 2009 9:59 am
by Combuster
Subclassing and SetWindowLong ftw. The only thing I don't know is if the first works with remote applications. And then you need a way to collect all hWnd's. (start with figuring out how the task manager assigns windows to processes)

Re: Replacing Windows's Window Manager

Posted: Mon Aug 31, 2009 10:33 am
by madeofstaples
I believe you are looking for documentation on system hooks.