Bug 43844

Summary: На XOrg без поддержки RGBA мусор в фоне значков апплетов
Product: Sisyphus Reporter: Vitaly Lipatov <lav>
Component: mate-panelAssignee: Valery Inozemtsev <shrek>
Status: NEW --- QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: iv, shrek
Version: unstable   
Hardware: x86_64   
OS: Linux   
See Also: https://bugzilla.xfce.org/show_bug.cgi?id=14577
https://github.com/ArcticaProject/nx-libs/issues/337
Attachments:
Description Flags
Пример проблемы none

Description Vitaly Lipatov 2022-09-22 13:47:11 MSK
Исходные данные: дистрибутив с установленным MATE.
У пользователя не должно быть запущенного графического сеанса, т.к. в этом случае второй сеанс MATE не запустится. Удобно воспроизводить с другой машины в сети, имея два ssh-терминала на тестовый стенд.

Терминал 1 (обязательно с поддержкой иксов):
$ nxagent -ac :1

Терминал 2:
$ DISPLAY=:1 mate-session

Результат: в окне nxagent, запускаемом из первого терминала, запускается сеанс MATE для пользователя. Иконки в системном трее (настройки MATE, регулятор громкости, менеджер буфера обмена, апплет NetworkManager) будут отображаться не правильно из-за некорректного отображения прозрачного фона.
Comment 1 Vitaly Lipatov 2022-09-22 13:49:16 MSK
Created attachment 11554 [details]
Пример проблемы

Что интересно, проблема касается только значков апплетов панели. Со значками приложений в трее всё нормально.
Comment 2 Vitaly Lipatov 2022-09-22 14:03:44 MSK
Есть обсуждение в nx-libs:
https://github.com/ArcticaProject/nx-libs/issues/337
Comment 3 Vitaly Lipatov 2022-09-26 10:17:53 MSK
Воспроизведение на Xnest:

$ Xnest -ac :55
В другом шелле:
$ export DISPLAY=:55; dbus-launch mate-session


Воспроизведение на Xephyr:
$ Xephyr -extension composite -ac :55
В другом шелле:
$ export DISPLAY=:55; dbus-launch mate-session
Comment 4 Ivan A. Melnikov 2022-09-27 19:52:01 MSK
(In reply to Vitaly Lipatov from comment #0)
> Терминал 1 (обязательно с поддержкой иксов):
> $ nxagent -ac :1
> 
> Терминал 2:
> $ DISPLAY=:1 mate-session

У меня на Сизифе так не работает, сыпятся ошибки:

(mate-panel:237564): Gdk-ERROR **: 20:34:52.669: The program 'mate-panel' received an X Window System error.
This probably reflects a bug in the program.
The error was 'BadRequest (invalid request code or no such operation)'.
  (Details: serial 873 error_code 1 request_code 148 (X-Resource) minor_code 4)
  (Note to programmers: normally, X errors are reported asynchronously;
   that is, you will receive the error a while after causing it.
   To debug your program, run it with the GDK_SYNCHRONIZE environment
   variable to change this behavior. You can then get a meaningful
   backtrace from your debugger if you break on the gdk_x_error() function.)


(In reply to Vitaly Lipatov from comment #3)
> Воспроизведение на Xnest:
> 
> $ Xnest -ac :55
> В другом шелле:
> $ export DISPLAY=:55; dbus-launch mate-session

И так какая-то странная ерунда происходит, половины виджетов не видно.

> Воспроизведение на Xephyr:
> $ Xephyr -extension composite -ac :55
> В другом шелле:
> $ export DISPLAY=:55; dbus-launch mate-session

А вот так очень даже прилично работает, и ошибка воспроизводится. Можно попробовать её исправить как-то так: https://git.altlinux.org/people/iv/packages/?p=mate-panel.git;a=commitdiff;h=a0c5a85d9a1b1f9b2df129a082a14f5eac365cb6