Xinerama Problems


great to hear that sawfish development may not be dead after all. This
reminds me of a bug or missing feature in sawfish when having more
than one monitor.

I have a laptop (1024x768) and an external monitor (1280x1024). I use
xrandr to switch between these two resolutions. When doing this,
sometimes sawfish can not maximize a window anymore. Some switches
later it works again. For some even stranger reason this does not
affect maximize horizontal and vertical only. So to maximize I can use
maximize horizontal and maximize vertical as two functiosn but not as

Now to the missing feature: I also want to use both displays in
xinerama mode. The layout looks like this:

|             |          |
|  1080x1024  | 1024x768 |
|             |          |
|             ------------
|             |

The maximize functions work, they only maximize in the current
display. But the grow-pack stuff does not work as expected. When I
have an empty desktop and a window on the left of the left display and
I press pack-right I want it to be on the right side of the left
display but it goes to the right of the right display. IMHO the pack
functions should not only stop on other windows, it should also stop
on display border.

Another bug is when the window is in the right, smaller display. When
I use gro-pack to move it down it goes down with the bottom at 1024
because the X screen itself is a rectangle. This results in a half
visisble window.

I also have some ideas for better xinerama support for people who
change the layout for a running X. If I have the layout from above and
turn of the external monitor the screen goes down to 1024x768 and many
windows are not visisble anymore. It would be a cool feature if
sawfish had an option to move all windows to the left and to the top
until they are visisble again. An even cooler feature I guess no wm
has would be if sawfish can remember the old window position. If I
don't move a window that was moved because my resolution went down
they could move back if I switch xinerama back on.

My problem is that my lisp knowledge is limited and my free hacking
time belongs to Freevo. I will test some code but it would be great if
someone else could write it.


You did something because it had always been done, and the explanation was
"but we've always done it this way." A million dead people can't have been
wrong, can they?
        -- (Terry Pratchett, The Fifth Elephant)

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]