samedi 27 juillet 2013

A convenient window manager

As a Linux user, I have never been a great fan of multidesktop feature. Whenever I put a window on another desktop I have to check all desktops before finding it. And I was often annoyed not to find an application with the Alt + Tab command, because that window was opened in another desktop. So I ended up not using multidesktops at all. Also, I find it's quite a pity that the only way to see several windows at a time is to resize them, so you hide a part of the content of the windows. Consequently to those dissatisfactions, I came up with this idea of a new window manager.


Let there be only one desktop but with variable minimum and maximum coordinates. On startup, it is given a default size.

On opening a new window, it is placed in the center. If there are already open windows, we calculate the center of the desktop and put the new window so that its center is the closest possible to the center of the desktop, without hiding another window.

Everytime a new window opens, we calculate its minimum and maximum coordinates, and the desktop takes as minimum (resp. maximum) coordinates the minimum (resp. maximum) of its former minimum (resp. maximum) coordinates and the minimum (resp. maximum) coordinates of the new window.

We dispose of keyboard / mouse controls to shrink or expand the size of the desktop, that is zoom in / out on the desktop, for example Ctrl + Alt + '+' and Ctrl + Alt + '-'. Another control would be used to translate the coordinates of the desktop, that is shift it, for example Ctrl + Alt + <Arrows>. Yet another one to calculate the minimum and maximum coordinates of the set of winodows and  define the size of the desktop according to them, in order to see all open windows at the same time, for example Ctrl + Alt + '*'. And finally another keyboard control to define the size of the desktop according to those of the window being focused, that is zoom on it, for example Ctrl + Alt + '.'. Of course, the moving and resizing of a single window would remain possible.

The wallpaper and the menus would stay fixed whatever the coordinates of the desktop are.

Every resizing of the desktop would be done with a smooth gradual transition.

Aucun commentaire:

Enregistrer un commentaire