My favorites | Sign in
Logo
ewm
          
Blogs:
Feeds:
People details
Project owners:
  DeRijcke.Erik

Erik's Window Manager is the code name for a Java based, multi-threaded window manager. It uses a platform independent display(1) interface, written in JNI to C, to communicate with the OS's native display server. All painting is done with JNI to C++.

Features

Multi Threaded

Each client managed by most window managers is basically managed in the same loop as far as moving and resizing goes since the content of a client is not the window managers concern. This means that when a client starts bombarding the window manager with requests, the window manager has to handle all these requests in a single thread. So when a request takes some time for the window manager thread to handle, all other request have to wait as well, regardless of what client they originated from.

Erik's window manager avoids this problem by handling all requests synchronized and per client in parallel. Furthermore, because of the multi-threaded nature of the program, all user input -as well as drawing- is handled in a separate threads. Effectively detaching and isolating independent encumbering operations and thus speeding up the entire application responsiveness.

3D accelerated

Most window managers use X's native 2D drawing mechanism. This means all drawing is limited to 2D and rendered by the CPU. Erik's Window Manager avoids this problems by utilizing the system's native accelerated rendering.

In future releases Ogre3D will be used as the native rendering system and will be implemented in a completely separate drawing engine. This graphics engine will be callable through a completely network separated interface or can be directly launched and accessed in the same Java virtual machine. This allows the elimination of sockets to improve performance when running on the same machine as the window handler.

Extremely Flexible

Because of the loose coupling of the entire program a wide variety of user interaction is possible. Future support for multi pointer X, mirroring 2 independent application's user input, advanced OpenGL rendering, render to html, etc. are only a breeze away.

In short

EWM is still a one man hobby project but will, without doubt, overshadow any window manager every created on this planet ;)

eWM Blog

(1)For now only Linux is supported.









Hosted by Google Code