Diary and notebook of whatever tech problems are irritating me at the moment.


Compiz on multi-head setup = multi-problems

I rebuilt up my primary desktop system with Gutsy and tried out Compiz with my non-Xinerama multi-head setup. It didn't handle it well and after a few hours of trying to fix it I switched back to plain-old Gnome. I reported my findings as bug #178341. There were many bug reports about most of the problems I experienced but it seemed like there was some fundamental problem that was causing them.

First, no window borders (ie, decorations) were present on windows in the second head. I had to reload the decorator with "gtk-window-decorator --replace" to get them to show up. Windows can be manipulated using mouse + keyboard but it's annoying.

Second, the Quit button on the second head would show an invisible power/logout window. I could cancel it with Esc or log out with Alt-L. Other people who have encountered this one mistakenly thought it was a desktop freeze and killed X.

Third, the long default menu pop-up delay was really irritating but it only was present on the primary head, not the secondary. Setting gtk-menu-popup-delay=0 in ~/.gtkrc.mine didn't have any effect on either one. The excessive delay makes the system seem slow like Vista. Regardless, it should be the same on both heads and this leads me to believe that the config files are not being read properly on the second head.

Fourth, the workspace switcher applet didn't function correctly. If I changed the number of workspaces on the second head it would affect only the primary head. It didn't get along with Compiz either but it's a known limitation. Minor issue but further proof of something being broken within.

Other than some Nautilus errors in .xsession-errors there was nothing useful in the logs.

I may have to wait until Hardy for Compiz to be usable on my system. It wasn't an easy decision for the Ubuntu dev team to include Compiz because of the known issues with drivers and stability but it will mean more stability for the Hardy LTS (5-year support) version. The problems I encountered are hopefully specific to multi-head setups as they are not typical for most systems; it would create an unfavourable impression on new users.


chrome said...

I just installed hardy alpha 6, and have a Twinview setupt working with compiz. Its pretty sweet, actually. :)

Nvidia card, of course.

jhansonxi said...

I haven't tried Hardy on my desktop system yet but note that I'm not using Twinview. I prefer to use a multi-head configuration where each display acts independently of each other. With Twinview or Xinerama some apps (like old Loki Software games) that don't check for the display extents stretch across both displays. With 3D FPS games this is unusable. By using multi-head they are confined to one display. The disadvantage is that you can't drag an app from one screen to the other. Also, many apps like Firefox only allow one instance to be running and all windows are also confined to the same display. One feature that eliminates the inconvenience a bit is that object dragging (like selected text or files) and the clipboard works across both.

kevin said...

I'm using Hardy and loving it. it's grown up quite alot since Breezey.
Yes i was away for a while. :)
I am also using a dual head setup on an Nvidia 8800 GT, using the seperate X display setting with similar problems. I can only effect the menu delay on my secondary X screen.
Twin view causes SimCity 4 to span both displays, (not good).
And i can't drag windows between displays.
It helps to know that i do not suffer alone on these issues. Other than that ,i enjoy the Ubuntu experience

jhansonxi said...

Not being able to drag an application between screens is normal with multiple heads. They act almost like different computers. However, most desktop environments do support dragging files and text between heads via some back-end communication channel. You might want to try XFCE (xubuntu-desktop, xubuntu-default-settings). I haven't tried Compiz with it yet so I don't know if it will be better. You will have to manually create panels for the second head (Applications > Settings > Settings Manager > Panel). It's primary limitation is that XFCE doesn't have integrated SMB (Windows network) browsing but you can get some access by using fusesmb.

About Me

Omnifarious Implementer = I do just about everything. With my usual occupations this means anything an electrical engineer does not feel like doing including PCB design, electronic troubleshooting and repair, part sourcing, inventory control, enclosure machining, label design, PC support, network administration, plant maintenance, janitorial, etc. Non-occupational includes residential plumbing, heating, electrical, farming, automotive and small engine repair. There is plenty more but you get the idea.