Проблемма с скринсейвером.

С самого перехода на видеокарту hd4870 с geforce начал наблюдаться глюк, скринсейвер когда включается (установлен firework он работает под opengl) видны артефакты на этапе его плавного появления (изменение прозрачности). После того прозрачнасть стала полностью непрозрачная артефакты изчезают, всё работает нормально, но... Когда потом дёргаешь мышу, дабы ввести пассворд для того чтоб выключить скринсейвер, то окна не видно, оно как бы под скринсейвером чтоли... но при это оно есть. Не видя окна вбиваю пароль, нажимаю энтер, скринсейвер закрывается, на доли секунды можно заметить изчезающее окно, в которое вбит пароль.

Голову сломал, гуглу надоел, поможите :-(...

Да, и ещё в вайне когда пускаю COD4 чёрный экран в главном меню, слышно звук, как мыша скачет по пунктам меню... Думается мне, что эти 2 вещи взаимосвязаны...

Телепатов нет

Оконный менеджер хоть какой? Композит/нет?

Обычный kwin (хотя под

Обычный kwin (хотя под compiz-ом тот же эфект), если Вы об этом. Если не об этом, то где глянуть?

- - -

Надо подавить анимацию скринсейвера с помощью регулярных выражений в Compiz'е, или средствами Kwin "Особые параметры окна".
А окно ввода пароля принудительно вывести на передний план теми же средствами. Вычислить характеристики окна можно через xprop,xwininfo,wmctrl
Для удобства я пользуюсь вот таким скриптом:

$ cat /home/SCRIPTS/xprop.sh
#!/usr/local/bin/bash


[ $1 ] \
    && XPROP=`xprop -id $1` \
    || XPROP=`xprop`
echo "type=`echo  "${XPROP}" | grep 'WINDOW_TYPE' | cut -d_ -f10`" ;\
echo "role=`echo  "${XPROP}" | grep 'WM_WINDOW_ROLE(STRING)' | cut -d\\" -f2`" ;\
echo "name=`echo  "${XPROP}" | grep 'WM_CLASS' | cut -d\\" -f2`" ;\
echo "class=`echo "${XPROP}" | grep 'WM_CLASS' | cut -d\\" -f4 `" ;\
echo "title=`echo "${XPROP}" | grep 'WM_NAME(STRING)' | cut -d\\" -f2`" ;\
echo "xid=`echo   "${XPROP}" | grep 'WM_CLIENT_LEADER(WINDOW)' | cut -d' ' -f5`" ;\
echo "state=(Choose one: modal, sticky, maxvert, maxhorz, shaded, skiptaskbar, skippager, hidden, fullscreen, above, below, or demandsattention)" ;\
echo "override_redirect=(http://wiki.compiz-fusion.org/WindowMatching#workarounds)"

Хм...

Спасибо, за совет, попробую. Но в этом ли проблемма, если это происходит только с opengl скринсейверами?

- - -

Wild_Beast написал(а):
Спасибо, за совет, попробую. Но в этом ли проблемма, если это происходит только с opengl скринсейверами?

Ну вы же сами писали:

Wild_Beast написал(а):
видны артефакты на этапе его плавного появления (изменение прозрачности).

Соответственно надо отключить анимацию (в частности "плавного появления") конкретно для скринсейвера (я еще отключаю у mplayer'а и пр. программ работающих в режиме state=fullscreen).
А диалоговое окно ввода пароля жестко заставить быть на переднем плане (хотя, я такое не наблюдал).

Если интересно, то вот мой список регулярных выражений и анимации+время:
grep -E "s0_open_matches|s0_open_durations|s0_open_effects" ~/.config/compiz/compizconfig/Default.ini

s0_open_effects = animation:None;animation:None;animation:Curved Fold;animationaddon:Domino;animationaddon:Beam Up;animation:Curved Fold;animation:Glide 1;animation:None;animation:None;animation:None;animation:None;animation:None;animationaddon:Beam Up;animation:Vacuum;animation:Fade;

s0_open_durations = 50;50;150;50;200;500;400;300;50;0;0;0;600;300;500;

s0_open_matches = 
  class=Plasma & state=fullscreen & !type=. & name=Qt-subapplication & title=Qt-subapplication & override_redirect=0;
  type=Normal & !class=. & !name=. & !title=. & !role=.;
  type=tooltip & class=Kate;
  type=Utility & class=Firefox;
  type=combo;
  !(type=Tooltip) & name=Qt-subapplication & title=Qt-subapplication;
  (type=PopupMenu | DropdownMenu | Menu) | (type=utility & name=VCLSalFrame);
  (title=cairo-dock-dialog);
  class=Stacks_applet.py | class=File-browser-launcher.py  | class=Avant-window-navigator | class=Cairo-dock;
  class=Kaffeine;
  class=MPlayer;
  (type=Utility);
  class=Gmrun | class=krunner;
  (!(class=Kwrite | title=dolphin) & (type=Tooltip | Notification));
  (type=Normal | Dialog | ModalDialog | Utility | Unknown) & !(name=gnome-screensaver) & !((type=Normal | Unknown) & override_redirect=1) & !((type=Dialog) & class=Wine);

*Эффекты, время и условия - соответствуют позициям с разделителем ";"

Всёравно не понимаю.

Анимация для скринсейвера обычного и использующего опенГЛ одинаковая, при том что первый работает как положено, второй с глюками. Это и настораживает.

Пы.Сы. Я у себя чего-то не нашёл ~/.config/compiz/compizconfig/Default.ini...

Спасибо.

- - -

Wild_Beast написал(а):
Анимация для скринсейвера обычного и использующего опенГЛ одинаковая, при том что первый работает как положено, второй с глюками. Это и настораживает.

Но вывод то разный. Анимация OpenGL, применяется к окну с OpenGL содержимым, или к обычному окну - разницу чувствуете? (-;

Wild_Beast написал(а):
Пы.Сы. Я у себя чего-то не нашёл ~/.config/compiz/compizconfig/Default.ini...

compiz-fusion-0.8.2
Это при использовании backend'а "Flat-File Configuration" (рекомендую). Если Вы используете Gconf (не рекомендую), то он правится через gconf-editor. Только я то привел строки только как образец, с разделением записей через "\n".

Откройте ccsm и вносите изменения через GUI.

Результат.

Сделал я как Вы советуете: вырубить анимацию, для скринсейвера. Так вот, плавное появление - это делает сам скринсейвер, анимации Компиза не стало, но проблемму - это не решило, артефакты есть.
Как поднять окно ввода пароля наверх - не понял.

Ещё занятный глюк.

Открываю свойство рабочего стола, чтобы выбрать скринсейвер, там есть место предпросмотра, так вот изображение в этом элементе предпросмотра странно мигает и находится поверх всех окон, хотя само окно, содержащее этот элемент, находится в самом низу. Другими словами, если закрыть окно выбора скринсейвера другим окном, то предпросмотр будет поверх "другого" окна. Вот и окно ввода пароля не видно, т.к. опенГЛ почему-то рисуется поверх всего.
Данная хренотень (Penis-shadow) происходить только с опенГЛ скринсейверами.

- - -

Wild_Beast написал(а):
странно мигает и находится поверх всех окон, хотя само окно, содержащее этот элемент, находится в самом низу.

Тогда надо выяснить - а ATI драйвера вообще умеют выводить окна с OpenGL правильно.

Вот хотелось бы.

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

Настройки просмотра комментариев

Выберите нужный метод показа комментариев и нажмите "Сохранить установки".