ZED 02.09.2011 06:32

Есть проблема!Compiz и 2 монитора

Столкнулся с серьезными багами компиза в двухмониторной конфигурации с раздельными экранами. Кое-что смог решить, кое-что нет. При этом багов замечаю все больше. Гуглинг выводит на описания решения отдельных проблем 2-3х-летней давности, что намекает, что с тех пор баги никто не фиксил. Отсюда вопрос, добился ли кто-то приемлемой работы компиза с 2-мя мониторами и мышевозным DE (ибо хорошо заточенные типа dwm или awesome я пока не рассматриваю) и какие решения нашел?
Баг с композитом на 2-м моне я заборол (DISPLAY=:0.0 compiz --replace --only-current-screen). Сейчас у меня основные претензии к переключению фокуса при перемещении курсора. Есть еще по мелочи. Хочу понять, стоит ли дальше плодить костыли или отказаться от компиза ваще. В сторону других DE я буду смотреть, но не сейчас (пока Gnome2, xfce4)

Похоже траблы починили в compiz 0.9.2


Тэги: compiz dual monitor
+ 0 -
Похожие Поделиться

mealsforall 02.09.2011 07:27 #
У меня уже три года гном 2 с компизом на двух мониторах, полёт абсолютно нормальный. Раньше был Hardy, теперь Lucid 10.04 x64. Видеокарточка Nvidia.

С фокусом ничего такого не замечал. Какие баги именно?
ZED 02.09.2011 08:59 #
при переходе на другой мон фокус клавиатурного ввода остается на 1-м, т.е. мышка работает нормально, а клава как будто остается на прежнем моне
mealsforall 02.09.2011 14:40 #
Я такое видел, когда мониторы были настроены как отдельные Х-серверы. Как сделано объединение мониторов, Xineramой или TwinView?
ZED 02.09.2011 18:36 #
Нет, я написал что использую раздельные мониторы. В настройках нвидии это означает, что X сервер один, но 2 логических экрана, у каждого свои рабочие столы, можно перемещать мышку, но запуск приложений тоже делается отдельно, перетаскивать как я понял нельзя. Такие у меня реалии, что объединение рабочего пространства мне не подходит.
mealsforall 02.09.2011 19:03 #
А, это интересная конфигурация. Можно посмотреть, какой xorg.conf получился?
ZED 02.09.2011 19:09 #
# nvidia-settings: X configuration file generated by nvidia-settings
# nvidia-settings: version 280.13 (buildd@rutherfordium) Tue Aug 2 02:55:44 UTC 2011


Section "ServerLayout"

# Removed Option "Xinerama" "0"
# Removed Option "Xinerama" "1"
Identifier "Layout0"
Screen 0 "Screen0" 0 0
Screen 1 "Screen1" RightOf "Screen0"
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
Option "Xinerama" "0"
EndSection

Section "Files"
EndSection

Section "InputDevice"

# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"

# generated from default
Identifier "Keyboard0"
Driver "kbd"
EndSection

Section "Monitor"

# HorizSync source: edid, VertRefresh source: edid
Identifier "Monitor0"
VendorName "Unknown"
ModelName "ViewSonic VX2435wm"
HorizSync 30.0 - 82.0
VertRefresh 50.0 - 76.0
Option "DPMS"
EndSection

Section "Monitor"
Identifier "Monitor1"
VendorName "Unknown"
ModelName "BenQ EW2430"
HorizSync 30.0 - 83.0
VertRefresh 50.0 - 76.0
EndSection

Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GT 440"
Option "Coolbits" "4"
BusID "PCI:1:0:0"
Screen 0
EndSection

Section "Device"
Identifier "Device1"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GT 440"
BusID "PCI:1:0:0"
Screen 1
EndSection

Section "Screen"

# Removed Option "metamodes" "DFP-1: 1920x1200 +0+0"
# Removed Option "TwinView" "0"
# Removed Option "TwinViewXineramaInfoOrder" "DFP-1"
# Removed Option "metamodes" "DFP-0: nvidia-auto-select +0+0"
# Removed Option "TwinView" "1"
# Removed Option "metamodes" "DFP-0: nvidia-auto-select +0+0, DFP-1: 1440x900 +1920+0"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "TwinView" "0"
Option "TwinViewXineramaInfoOrder" "DFP-0"
Option "metamodes" "DFP-0: nvidia-auto-select +0+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection

Section "Screen"

# Removed Option "metamodes" "DFP-1: 1440x900 +0+0"
Identifier "Screen1"
Device "Device1"
Monitor "Monitor1"
DefaultDepth 24
Option "TwinView" "0"
Option "metamodes" "DFP-1: 1920x1080 +0+0"
SubSection "Display"
Depth 24
EndSubSection
EndSection
mealsforall 02.09.2011 20:09 #
А если попробовать ScreenLayout разнести на две секции вот так, чтобы явно указать второму скрину, какую клавиатуру использовать:
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
Section "ServerLayout"
        Identifier     "seat0"
        Screen      0  "Screen0" 0 0
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard0" "CoreKeyboard"
EndSection

Section "ServerLayout"
        Identifier     "seat1"
        Screen      1  "Screen1" RightOf "Screen0"
        InputDevice    "Mouse0" "CorePointer"
        InputDevice    "Keyboard1" "CoreKeyboard"
EndSection


Здесь Mouse0 остается та же самая, а клавиатуру добавляем ещё раз как Keyboard1.

1
2
3
4
Section "InputDevice"
  Identifier "Keyboard1"
  Driver "kbd"
EndSection



Просто мысль, сам не пробовал.
ZED 03.09.2011 07:42 #
Это уже конфиг для multi seat насколько я могу судить, это не то.
Есть такая штука как dualscreen-mouse-utils, перенос курсора на другой экран по хоткею, говорят удобно делать изолированные экраны с абсолютным сдвигом чтобы мыша сама не перескакивала. Я еще не пробовал.
Daria 02.09.2011 15:07 #
это и есть тот самый баг?
mealsforall 02.09.2011 18:34 #
Баг в том, что мышка тоже должна сидеть только на одном, если это отдельные X-серверы. А если Xinerama или TwinView, то должно работать как надо.

Как настроено-то?
ZED 02.09.2011 18:39 #
Да, это самый неприятный баг из тех, что не смог пока забороть.
RoDebian 02.09.2011 10:14 #
начальник на бывшей работе решал подобную проблему и успешно, и кстати если не изменяется память ориентация дисплея была разная у моников. На днях должен с ним увидится попробую узнать что да как.
RoDebian 04.09.2011 23:40 #
приношу свои извенения, начальник сказал что уже и не помнит что да как
dront78 06.09.2011 13:04 #
Подобных проблем не замечал. Попробуй прибить keyboard и mouse они давно obsolete и рекомендуется использовать evdev, хотя nvidia и генрит xorg.conf, я обычно грохаю лишнее руками
http://pastebin.com/TJAkSrE7
автодетект второго скрина работает на ура, кроме всего прочего можно еще хоткеи повесить в разделе Extra WM Actions чтобы окно перекидывать с одного монитора на другой, а также fullscreen

пробовал separate screen тоже неплохо, но firefox на 2 экране не запускается, если уже запущен на первом.

Archlinux x86_64, compiz 0.8.8, nvidia
ZED 06.09.2011 15:20 #
так это конфиг для xinerama, а это еще хуже twinview, у меня же отдельные экраны, с объединенным пространством подобных проблем нет (там другие проблемы), я уже молчу что xinerama не дружит с компизом
dront78 06.09.2011 15:25 #
Xinerama 0
ZED 06.09.2011 18:40 #
а, тогда пардон, буду курить, спс
ZED 11.09.2011 20:50 #
Если верить древнему анонсу, траблы починили в compiz 0.9.2:
Not being able to switch between windows on two different X11 screens using the mouse was fixed (input focus is now forced)

Осталось это проверить, ибо для свежих версий компиза почти нет реп или бинарников, или дистровые репы или ручками собирать.