Комптон: Неправильное отображение теней (любимые настройки)?

У меня проблемы с теневым отображением композитного менеджера Compton. В определенных ситуациях рамка для теней превышает окно, к которому она применяется, оставляя видимую границу и своего рода прозрачную рамку вокруг нее.

Похоже, это происходит каждый раз, когда наложение окна или фрейма не является совершенно прямоугольным, например, указатель автоматической прокрутки в Firefox или меню-надстройки с маленькими стрелками вверху (для справки см. Скриншот ниже). Есть несколько подобных случаев за пределами моего веб-браузера, но я не могу вспомнить что-либо конкретное в данный момент.

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

Я подумал, что мой файл конфигурации не может быть настроен оптимально, я также попытался добавить опцию detect-rounded-corners = true; к этому, но это не имело никакого значения.

Есть ли решение этой проблемы? И есть ли хорошие конфигурации Compton, которые я мог бы использовать в качестве основы для своих настроек в целом?

Мой файл конфигурации Compton выглядит следующим образом:

#--------------------------------
#-------Backend Settings:--------
#--------------------------------
backend = "glx";                 # Use GLX backend for rendering
vsync = "opengl";                # Use OpenGL to implement vsync
glx-swap-method = 3;             # Use a triple-buffer
paint-on-overlay = true;         # Improves performance (usually) and reduces flickering
glx-no-stencil = true;           # Improves performance
glx-no-rebind-pixmap = true;     # Improves performance with rapid window changes, might not work with some drivers


#--------------------------------
#--------Shadow Settings:--------
#--------------------------------
shadow = true;                   # Enable drawing shadows on windows
shadow-radius = 8;               # The blur radius for shadows
shadow-offset-x = -8;            # The horizontal offset for shadows
shadow-offset-y = -8;            # The vertical offset for shadows
clear-shadow = true;             # Zero the part of the shadow's mask behind the window, may break some applications
no-dock-shadow = true;           # Do not draw shadows on docks/panels
no-dnd-shadow = true;            # Do not draw shadows on DND windows
shadow-exclude = [               # Do not draw shadows on these specific applications:
   #"! name~=''",
    "n:e:Notification",
    "n:e:Plank",
    "n:e:Docky",
    "g:e:Synapse",
    "g:e:Kupfer",
    "g:e:Conky",
    "n:w:*dockbarx*",
   #"n:w:*Firefox*",
   #"n:w:*Chrome*",
   #"n:w:*Chromium*",
    "class_g ?= 'Notify-osd'",
    "class_g ?= 'Cairo-dock'",
    "class_g ?= 'Xfce4-notifyd'",
    "class_g ?= 'Xfce4-power-manager'"
];


#--------------------------------
#--------Fading Settings:--------
#--------------------------------
fading = true;                   # Enable fading windows during opacity changes
fade-delta = 4;                  # The time between steps in a fade in milliseconds
fade-in-step = 0.03;             # The opacity change between steps while fading in
fade-out-step = 0.03;            # The opacity change between steps while fading out
detect-client-opacity = true;    # Prevent opacity from being ignored for some applications


#--------------------------------
#--------Window Settings:--------
#--------------------------------
wintypes:                        # Change behavior for these specific types of windows:
{
    tooltip = { fade = true; shadow = false; };
};

detect-rounded-corners = true;

У меня была другая конфигурация, с которой эта проблема также существовала.

Мое оборудование выглядит следующим образом:

     MB  Gigabyte GA-H97 HD3 
     CPU Intel Xeon E3-1231 (No AGP) 
     RAM 32GB DDR3
     GPU Nvidia Quadro 5000 
     2560x1080 Display, 60 Hz, connected via DisplayPort

1 ответ

Решение

Если вы говорите о Privacy Badger shadow, то эту проблему можно решить, добавив следующую строку в ваш shadow-exclude список:

"class_g = 'Firefox' && argb"

Это удалит тень от таких окон, но оставит это в меню (если не отключено) и главном окне. Источник здесь и здесь. Есть некоторые объяснения по поводу проблемы.

Другие вопросы по тегам