yshui / picom Goto Github PK
View Code? Open in Web Editor NEWA lightweight compositor for X11
License: Other
A lightweight compositor for X11
License: Other
Kubuntu Desktop 18.04 amd64
After installing all the dependencies, it would take a little bit and compile fine
It spits out the this error
Archlinux - latest
intel - hd630
just X and minimal wrapper to call X
v4-rc1-14-gf834cf2
Really doesn't matter.
[ 281.243] (II) systemd-logind: got pause for 13:66
[ 281.243] (II) systemd-logind: got pause for 13:64
[ 281.243] (II) systemd-logind: got pause for 13:72
[ 281.243] (II) systemd-logind: got pause for 13:65
[ 281.243] (II) systemd-logind: got pause for 13:73
ps aux | grep compton
compton can also be woke up in an consistent way.
sometime and somehow put X into sleep mode also make we losing compton function.
I use KMS mode, no intel kernel options when booting, no fastboot, also disabled fastboot in bios.
I use silent boot options in kernels - but I don't think these options bring problem.
I haven't tested to kill compton and manually re-call it when issue happens.
I start compton in .xinitrc
: compton --config $HOME/.config/compton.conf &>/dev/null 2>&1 &
Arch Linux
Intel UHD Graphics 620, two monitors configured side-by-side with xrandr
v2.0
windows should follow mouse cursor without too much lag
Arch Linux x86_64
NVidia GTX 1060, nvidia 410.57, single monitor.
git-v1-103-gaa2098e-2018-10-13
# Shadow
shadow = true;
no-dnd-shadow = true;
no-dock-shadow = true;
clear-shadow = true;
shadow-radius = 16;
shadow-offset-x = -24;
shadow-offset-y = -24;
shadow-opacity = 0.5;
shadow-exclude = [
"class_g = 'Conky'",
"class_g ?= 'xfce-notifyd'",
"_GTK_FRAME_EXTENTS@:c"
];
shadow-exclude-reg = "x20+0+0";
# Opacity
alpha-step = 0.06;
# Blur
blur-background = true;
blur-kern = "15,15,0.256376,0.307108,0.357801,0.405442,0.446840,0.478973,0.499352,0.506336,0.499352,0.478973,0.446840,0.405442,0.357801,0.307108,0.256376,0.307108,0.367879,0.428604,0.485672,0.535261,0.573753,0.598165,0.606531,0.598165,0.573753,0.535261,0.485672,0.428604,0.367879,0.307108,0.357801,0.428604,0.499352,0.565840,0.623615,0.668461,0.696902,0.706648,0.696902,0.668461,0.623615,0.565840,0.499352,0.428604,0.357801,0.405442,0.485672,0.565840,0.641180,0.706648,0.757465,0.789693,0.800737,0.789693,0.757465,0.706648,0.641180,0.565840,0.485672,0.405442,0.446840,0.535261,0.623615,0.706648,0.778801,0.834806,0.870325,0.882497,0.870325,0.834806,0.778801,0.706648,0.623615,0.535261,0.446840,0.478973,0.573753,0.668461,0.757465,0.834806,0.894839,0.932912,0.945959,0.932912,0.894839,0.834806,0.757465,0.668461,0.573753,0.478973,0.499352,0.598165,0.696902,0.789693,0.870325,0.932912,0.972604,0.986207,0.972604,0.932912,0.870325,0.789693,0.696902,0.598165,0.499352,0.506336,0.606531,0.706648,0.800737,0.882497,0.945959,0.986207,0.986207,0.945959,0.882497,0.800737,0.706648,0.606531,0.506336,0.499352,0.598165,0.696902,0.789693,0.870325,0.932912,0.972604,0.986207,0.972604,0.932912,0.870325,0.789693,0.696902,0.598165,0.499352,0.478973,0.573753,0.668461,0.757465,0.834806,0.894839,0.932912,0.945959,0.932912,0.894839,0.834806,0.757465,0.668461,0.573753,0.478973,0.446840,0.535261,0.623615,0.706648,0.778801,0.834806,0.870325,0.882497,0.870325,0.834806,0.778801,0.706648,0.623615,0.535261,0.446840,0.405442,0.485672,0.565840,0.641180,0.706648,0.757465,0.789693,0.800737,0.789693,0.757465,0.706648,0.641180,0.565840,0.485672,0.405442,0.357801,0.428604,0.499352,0.565840,0.623615,0.668461,0.696902,0.706648,0.696902,0.668461,0.623615,0.565840,0.499352,0.428604,0.357801,0.307108,0.367879,0.428604,0.485672,0.535261,0.573753,0.598165,0.606531,0.598165,0.573753,0.535261,0.485672,0.428604,0.367879,0.307108,0.256376,0.307108,0.357801,0.405442,0.446840,0.478973,0.499352,0.506336,0.499352,0.478973,0.446840,0.405442,0.357801,0.307108,0.256376";
blur-background-exclude = [
"window_type = 'dock'",
"window_type = 'desktop'",
"_GTK_FRAME_EXTENTS@:c",
"class_g = 'slop'",
];
resize-damage = 7;
# Fading
fading = true;
fade-in-step = 0.08;
fade-out-step = 0.08;
no-fading-destroyed-argb = true;
# Other
backend = "glx";
vsync = "opengl-swc";
mark-wmwin-focused = true;
mark-ovredir-focused = true;
use-ewmh-active-win = true;
detect-rounded-corners = true;
detect-client-opacity = true;
paint-on-overlay = true;
unredir-if-possible = true;
unredir-if-possible-delay = 1000;
detect-transient = true;
detect-client-leader = true;
# GLX
glx-no-stencil = true;
glx-no-rebind-pixmap = true;
glx-swap-method = "copy";
glx-use-gpushader4 = true;
xrender-sync = true;
xrender-sync-fence = true;
# Window type settings
wintypes:
{
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; };
};
No artifacts or trails on window dragging
Window leaves a flickering trail of afterimages which clears itself after being dragged for a while, then starts again
I've nailed the problem down to that one commit after a bisect, I'm not familiar with this project's code so I don't know why this has started happening and how it could be fixed.
Arch Linux kernel 4.19.2
Radeon RX 560 driving two monitors configured in xconf (main running on 144Hz and other on 60Hz).
xf86-video-amdgpu 18.1.0-1 and mesa 18.2.5-1
Output of glxinfo -B
:
name of display: :0
display: :0 screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
Vendor: X.Org (0x1002)
Device: Radeon RX 560 Series (POLARIS11, DRM 3.27.0, 4.19.2-ck1-custom2, LLVM 7.0.0) (0x67ff)
Version: 18.2.5
Accelerated: yes
Video memory: 4096MB
Unified memory: no
Preferred profile: core (0x1)
Max core profile version: 4.5
Max compat profile version: 4.4
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.2
Memory info (GL_ATI_meminfo):
VBO free memory - total: 3926 MB, largest block: 3926 MB
VBO free aux. memory - total: 4091 MB, largest block: 4091 MB
Texture free memory - total: 3926 MB, largest block: 3926 MB
Texture free aux. memory - total: 4091 MB, largest block: 4091 MB
Renderbuffer free memory - total: 3926 MB, largest block: 3926 MB
Renderbuffer free aux. memory - total: 4091 MB, largest block: 4091 MB
Memory info (GL_NVX_gpu_memory_info):
Dedicated video memory: 4096 MB
Total available memory: 8192 MB
Currently available dedicated video memory: 3926 MB
OpenGL vendor string: X.Org
OpenGL renderer string: Radeon RX 560 Series (POLARIS11, DRM 3.27.0, 4.19.2-ck1-custom2, LLVM 7.0.0)
OpenGL core profile version string: 4.5 (Core Profile) Mesa 18.2.5
OpenGL core profile shading language version string: 4.50
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL version string: 4.4 (Compatibility Profile) Mesa 18.2.5
OpenGL shading language version string: 4.40
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 18.2.5
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
I'm running i3-gaps with a polybar instance
compton v4
Output of compton --diagnostics
:
**Version:** v4
### Extensions:
* Name Pixmap: Yes
* Shape: Yes
* XRandR: Yes
* Present: Present
### Misc:
* Use Overlay: Yes
#################################
#
# Backend
#
#################################
# Backend to use: "xrender" or "glx".
# GLX backend is typically much faster but depends on a sane driver.
backend = "xrender";
#################################
#
# GLX backend
#
#################################
### glx-no-stencil = true; ###
# GLX backend: Copy unmodified regions from front buffer instead of redrawing them all.
# My tests with nvidia-drivers show a 10% decrease in performance when the whole screen is modified,
# but a 20% increase when only 1/4 is.
# My tests on nouveau show terrible slowdown.
# Useful with --glx-swap-method, as well.
### glx-copy-from-front = false; ###
# GLX backend: Use MESA_copy_sub_buffer to do partial screen update.
# My tests on nouveau shows a 200% performance boost when only 1/4 of the screen is updated.
# May break VSync and is not available on some drivers.
# Overrides --glx-copy-from-front.
# glx-use-copysubbuffermesa = true;
# GLX backend: Avoid rebinding pixmap on window damage.
# Probably could improve performance on rapid window content changes, but is known to break things on some drivers (LLVMpipe).
# Recommended if it works.
# glx-no-rebind-pixmap = true;
# GLX backend: GLX buffer swap method we assume.
# Could be undefined (0), copy (1), exchange (2), 3-6, or buffer-age (-1).
# undefined is the slowest and the safest, and the default value.
# copy is fastest, but may fail on some drivers,
# 2-6 are gradually slower but safer (6 is still faster than 0).
# Usually, double buffer means 2, triple buffer means 3.
# buffer-age means auto-detect using GLX_EXT_buffer_age, supported by some drivers.
# Useless with --glx-use-copysubbuffermesa.
# Partially breaks --resize-damage.
# Defaults to undefined.
### glx-swap-method = "undefined"; ###
#################################
#
# Shadows
#
#################################
# Enabled client-side shadows on windows.
shadow = true;
# Don't draw shadows on DND windows.
no-dnd-shadow = true;
# Avoid drawing shadows on dock/panel windows.
no-dock-shadow = true;
# Zero the part of the shadow's mask behind the window. Fix some weirdness with ARGB windows.
clear-shadow = true;
# The blur radius for shadows. (default 12)
shadow-radius = 5;
# The left offset for shadows. (default -15)
shadow-offset-x = -5;
# The top offset for shadows. (default -15)
shadow-offset-y = -5;
# The translucency for shadows. (default .75)
shadow-opacity = 0.5;
# Set if you want different colour shadows
# shadow-red = 0.0;
# shadow-green = 0.0;
# shadow-blue = 0.0;
# The shadow exclude options are helpful if you have shadows enabled. Due to the way compton draws its shadows, certain applications will have visual glitches
# (most applications are fine, only apps that do weird things with xshapes or argb are affected).
# This list includes all the affected apps I found in my testing. The "! name~=''" part excludes shadows on any "Unknown" windows, this prevents a visual glitch with the XFWM alt tab switcher.
shadow-exclude = [
"! name~=''",
"name = 'Notification'",
"name = 'Plank'",
"name = 'Docky'",
"name = 'Kupfer'",
"name = 'xfce4-notifyd'",
"name *= 'VLC'",
"name *= 'compton'",
"name *= 'Chromium'",
"name *= 'Chrome'",
"class_g = 'Conky'",
"class_g = 'Kupfer'",
"class_g = 'Synapse'",
"class_g ?= 'Notify-osd'",
"class_g ?= 'Cairo-dock'",
"class_g ?= 'Xfce4-notifyd'",
"class_g ?= 'Xfce4-power-manager'",
"_GTK_FRAME_EXTENTS@:c"
];
# Avoid drawing shadow on all shaped windows (see also: --detect-rounded-corners)
shadow-ignore-shaped = false;
#################################
#
# Opacity
#
#################################
menu-opacity = 1;
inactive-opacity = 1;
active-opacity = 1;
frame-opacity = 1;
inactive-opacity-override = false;
alpha-step = 0.06;
# Dim inactive windows. (0.0 - 1.0)
# inactive-dim = 0.2;
# Do not let dimness adjust based on window opacity.
# inactive-dim-fixed = true;
# Blur background of transparent windows. Bad performance with X Render backend. GLX backend is preferred.
# blur-background = true;
# Blur background of opaque windows with transparent frames as well.
# blur-background-frame = true;
# Do not let blur radius adjust based on window opacity.
blur-background-fixed = false;
blur-background-exclude = [
"window_type = 'dock'",
"window_type = 'desktop'"
];
#################################
#
# Fading
#
#################################
# Fade windows during opacity changes.
fading = true;
# The time between steps in a fade in milliseconds. (default 10).
fade-delta = 4;
# Opacity change between steps while fading in. (default 0.028).
fade-in-step = 0.03;
# Opacity change between steps while fading out. (default 0.03).
fade-out-step = 0.03;
# Fade windows in/out when opening/closing
# no-fading-openclose = true;
# Specify a list of conditions of windows that should not be faded.
fade-exclude = [ ];
#################################
#
# Other
#
#################################
# Try to detect WM windows and mark them as active.
mark-wmwin-focused = true;
# Mark all non-WM but override-redirect windows active (e.g. menus).
mark-ovredir-focused = true;
# Use EWMH _NET_WM_ACTIVE_WINDOW to determine which window is focused instead of using FocusIn/Out events.
# Usually more reliable but depends on a EWMH-compliant WM.
use-ewmh-active-win = true;
# Detect rounded corners and treat them as rectangular when --shadow-ignore-shaped is on.
detect-rounded-corners = true;
# Detect _NET_WM_OPACITY on client windows, useful for window managers not passing _NET_WM_OPACITY of client windows to frame windows.
# This prevents opacity being ignored for some apps.
# For example without this enabled my xfce4-notifyd is 100% opacity no matter what.
detect-client-opacity = true;
# Specify refresh rate of the screen.
# If not specified or 0, compton will try detecting this with X RandR extension.
refresh-rate = 0;
# Set VSync method. VSync methods currently available:
# none: No VSync
# drm: VSync with DRM_IOCTL_WAIT_VBLANK. May only work on some drivers.
# opengl: Try to VSync with SGI_video_sync OpenGL extension. Only work on some drivers.
# opengl-oml: Try to VSync with OML_sync_control OpenGL extension. Only work on some drivers.
# opengl-swc: Try to VSync with SGI_swap_control OpenGL extension. Only work on some drivers. Works only with GLX backend. Known to be most effective on many drivers. Does not actually control paint timing, only buffer swap is affected, so it doesn’t have the effect of --sw-opti unlike other methods. Experimental.
# opengl-mswc: Try to VSync with MESA_swap_control OpenGL extension. Basically the same as opengl-swc above, except the extension we use.
# (Note some VSync methods may not be enabled at compile time.)
vsync = "opengl-swc";
# Enable DBE painting mode, intended to use with VSync to (hopefully) eliminate tearing.
# Reported to have no effect, though.
dbe = false;
# Painting on X Composite overlay window. Recommended.
paint-on-overlay = true;
# Limit compton to repaint at most once every 1 / refresh_rate second to boost performance.
# This should not be used with --vsync drm/opengl/opengl-oml as they essentially does --sw-opti's job already,
# unless you wish to specify a lower refresh rate than the actual value.
sw-opti = true;
# Unredirect all windows if a full-screen opaque window is detected, to maximize performance for full-screen windows, like games.
# Known to cause flickering when redirecting/unredirecting windows.
# paint-on-overlay may make the flickering less obvious.
unredir-if-possible = true;
# Specify a list of conditions of windows that should always be considered focused.
focus-exclude = [ ];
# Use WM_TRANSIENT_FOR to group windows, and consider windows in the same group focused at the same time.
detect-transient = true;
# Use WM_CLIENT_LEADER to group windows, and consider windows in the same group focused at the same time.
# WM_TRANSIENT_FOR has higher priority if --detect-transient is enabled, too.
detect-client-leader = true;
#################################
#
# Window type settings
#
#################################
wintypes:
{
tooltip =
{
# fade: Fade the particular type of windows.
fade = true;
# shadow: Give those windows shadow
shadow = false;
# opacity: Default opacity for the type of windows.
opacity = 0.85;
# focus: Whether to always consider windows of this type focused.
focus = true;
};
};
Compton should continue operation like before
Compton crashes because of the 144Hz monitor
Console log:
ev_screen_change_notify(): Refresh rate detection failed, --sw-opti disabled.Floating point exception (core dumped)
Archlinux 4.18.16-arch1-1-ARCH
Intel HD 5500, xf86-video-intel 1:2.99.917+853+g0932a6b3-1, mesa 18.2.3-1
qtile-python3
v3-rc2-18-gc0d7f9d
backend = "glx";
glx-no-stencil = true;
glx-copy-from-front = false;
glx-use-copysubbuffermesa = false;
glx-no-rebind-pixmap = false;
glx-swap-method = "undefined";
shadow = false;
no-dnd-shadow = false;
no-dock-shadow = true;
clear-shadow = true;
shadow-radius = 0;
shadow-offset-x = -5;
shadow-offset-y = -5;
shadow-opacity = 0;
shadow-exclude = [
"! name~=''",
"name = 'Notification'",
"name = 'Plank'",
"name = 'Docky'",
"name = 'Kupfer'",
"name = 'xfce4-notifyd'",
"name *= 'VLC'",
"name *= 'compton'",
"name *= 'Chromium'",
"name *= 'Chrome'",
"class_g = 'Conky'",
"class_g = 'Kupfer'",
"class_g = 'Synapse'",
"class_g ?= 'Notify-osd'",
"class_g ?= 'Cairo-dock'",
"class_g ?= 'Xfce4-notifyd'",
"class_g ?= 'Xfce4-power-manager'",
"_GTK_FRAME_EXTENTS@:c"
];
shadow-ignore-shaped = false;
menu-opacity = 1;
inactive-opacity = 1;
active-opacity = 1;
frame-opacity = 1;
inactive-opacity-override = false;
alpha-step = 0.06;
blur-background-fixed = false;
blur-background-exclude = [
"window_type = 'dock'",
"window_type = 'desktop'"
];
fading = true;
fade-delta = 5
fade-in-step = 0.05;
fade-out-step = 0.05;
fade-exclude = [ ];
mark-wmwin-focused = true;
mark-ovredir-focused = true;
use-ewmh-active-win = true;
detect-rounded-corners = true;
detect-client-opacity = true;
refresh-rate = 0;
vsync = "opengl";
dbe = false;
paint-on-overlay = true;
sw-opti = false;
unredir-if-possible = false;
focus-exclude = [ ];
detect-transient = true;
detect-client-leader = true;
wintypes:
{
tooltip =
{
fade = true;
shadow = false;
opacity = 0.85;
focus = true;
};
};
Compton fades windows in and out and does vsyncing
The screen flickers and parts of windows are not redrawn.
Here is a video showing the artifacts. v2 worked fine for me with this config.
Possible duplicate of #33 but that issue specifically mentioned nouveau so I thought I'd open a new one.
Shadow of fullscreen window is drawn over docks and bars. This is unlikely what the user wants.
Fedora 29
Graphics:
Device-1: Intel Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics
driver: i915 v: kernel
Display: x11 server: Fedora Project X.org 1.20.3 driver: modesetting
unloaded: fbdev,vesa resolution: 1920x1080~60Hz
OpenGL: renderer: Mesa DRI Intel Haswell Desktop v: 4.5 Mesa 18.2.4
XFCE 4.12
Latest. Compiled from next branch.
# Shadow
shadow = true;
shadow-opacity = 0.5;
shadow-radius = 5;
shadow-offset-x = -5;
shadow-offset-y = -5;
shadow-exclude = [
"n:e:Notification",
"n:e:Docky",
"g:e:Synapse",
"g:e:Conky",
"n:w:*Firefox*",
"n:w:*Chromium*",
"n:w:*dockbarx*",
"class_g ?= 'Cairo-dock'",
"class_g ?= 'Xfce4-notifyd'",
"class_g ?= 'Xfce4-power-manager'",
"class_g ?= 'Notify-osd'",
"_GTK_FRAME_EXTENTS@:c"
];
no-dock-shadow = true;
no-dnd-shadow = true;
# Fading
fading = true;
# fade-delta = 30;
fade-in-step = 0.15;
fade-out-step = 0.15;
# no-fading-openclose = true;
# no-fading-destroyed-argb = true;
fade-exclude = [ ];
# Other
backend = "glx";
vsync = "opengl";
# OpenGL
glx-no-stencil = true;
glx-swap-method = "-1";
# xrender-sync = true;
# xrender-sync-fence = true;
# Window type settings
wintypes:
{
tooltip = { fade = true; shadow = true; opacity = 0.90; focus = true; full-shadow = false; };
dock = { shadow = false; }
dnd = { shadow = false; }
popup_menu = { opacity = 0.95; }
dropdown_menu = { opacity = 0.95; }
};
With fading enabled start, close or minimize, unminimize windows (borders will always appear before actual window content)
All window content nicely fading either in or out.
Window decorator isn't affected by fading.
compton
's options to have same effects as window on windows10 professional ver 1803?
Arch Linux x86_64
NVidia GTX 1060, nvidia 410.57, single monitor, openbox + tint2
git-vNext-10-ge58de49-2018-10-02
# Shadow
shadow = true;
no-dnd-shadow = true;
no-dock-shadow = true;
clear-shadow = true;
shadow-radius = 16;
shadow-offset-x = -24;
shadow-offset-y = -24;
shadow-opacity = 0.5;
shadow-exclude = [
"class_g = 'Conky'",
"class_g ?= 'xfce-notifyd'",
"_GTK_FRAME_EXTENTS@:c"
];
shadow-exclude-reg = "x20+0+0";
# Opacity
alpha-step = 0.06;
# Blur
blur-background = true;
blur-kern = "15,15,0.256376,0.307108,0.357801,0.405442,0.446840,0.478973,0.499352,0.506336,0.499352,0.478973,0.446840,0.405442,0.357801,0.307108,0.256376,0.307108,0.367879,0.428604,0.485672,0.535261,0.573753,0.598165,0.606531,0.598165,0.573753,0.535261,0.485672,0.428604,0.367879,0.307108,0.357801,0.428604,0.499352,0.565840,0.623615,0.668461,0.696902,0.706648,0.696902,0.668461,0.623615,0.565840,0.499352,0.428604,0.357801,0.405442,0.485672,0.565840,0.641180,0.706648,0.757465,0.789693,0.800737,0.789693,0.757465,0.706648,0.641180,0.565840,0.485672,0.405442,0.446840,0.535261,0.623615,0.706648,0.778801,0.834806,0.870325,0.882497,0.870325,0.834806,0.778801,0.706648,0.623615,0.535261,0.446840,0.478973,0.573753,0.668461,0.757465,0.834806,0.894839,0.932912,0.945959,0.932912,0.894839,0.834806,0.757465,0.668461,0.573753,0.478973,0.499352,0.598165,0.696902,0.789693,0.870325,0.932912,0.972604,0.986207,0.972604,0.932912,0.870325,0.789693,0.696902,0.598165,0.499352,0.506336,0.606531,0.706648,0.800737,0.882497,0.945959,0.986207,0.986207,0.945959,0.882497,0.800737,0.706648,0.606531,0.506336,0.499352,0.598165,0.696902,0.789693,0.870325,0.932912,0.972604,0.986207,0.972604,0.932912,0.870325,0.789693,0.696902,0.598165,0.499352,0.478973,0.573753,0.668461,0.757465,0.834806,0.894839,0.932912,0.945959,0.932912,0.894839,0.834806,0.757465,0.668461,0.573753,0.478973,0.446840,0.535261,0.623615,0.706648,0.778801,0.834806,0.870325,0.882497,0.870325,0.834806,0.778801,0.706648,0.623615,0.535261,0.446840,0.405442,0.485672,0.565840,0.641180,0.706648,0.757465,0.789693,0.800737,0.789693,0.757465,0.706648,0.641180,0.565840,0.485672,0.405442,0.357801,0.428604,0.499352,0.565840,0.623615,0.668461,0.696902,0.706648,0.696902,0.668461,0.623615,0.565840,0.499352,0.428604,0.357801,0.307108,0.367879,0.428604,0.485672,0.535261,0.573753,0.598165,0.606531,0.598165,0.573753,0.535261,0.485672,0.428604,0.367879,0.307108,0.256376,0.307108,0.357801,0.405442,0.446840,0.478973,0.499352,0.506336,0.499352,0.478973,0.446840,0.405442,0.357801,0.307108,0.256376";
blur-background-exclude = [
"window_type = 'dock'",
"window_type = 'desktop'",
"_GTK_FRAME_EXTENTS@:c",
"class_g = 'slop'",
];
resize-damage = 7;
# Fading
fading = true;
fade-in-step = 0.08;
fade-out-step = 0.08;
no-fading-destroyed-argb = true;
# Other
backend = "glx";
vsync = "opengl-swc";
mark-wmwin-focused = true;
mark-ovredir-focused = true;
use-ewmh-active-win = true;
detect-rounded-corners = true;
detect-client-opacity = true;
paint-on-overlay = true;
unredir-if-possible = true;
unredir-if-possible-delay = 1000;
detect-transient = true;
detect-client-leader = true;
# GLX
glx-no-stencil = true;
glx-no-rebind-pixmap = true;
glx-swap-method = "copy";
glx-use-gpushader4 = true;
xrender-sync = true;
xrender-sync-fence = true;
# Window type settings
wintypes:
{
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; };
};
Shadows don't draw over the 20 top pixels of the screen (where my tint2 is)
Shadows still draw there (note: that's a shadow, my tint2 is flat shaded).
If I kill and restart compton, things work correctly, at least until I iconify and restore windows.
Use these two together without any --vsync
, and with a low --refresh-rate
can cause screen to be updated more frequent than the refresh-rate.
In swopti_handle_timeout
, the timeout calculation is flawed. It can't handle the case when it's called with little time in between. Because SWOPTI_TOLERANCE
makes it think those two calls are in the same refresh slot.
unredir-if-possible
shows brief flickering when switching compositing on and off. This is harmless when exiting or entering to a fullscreen window e.g. via alt + tab.
But when an overlay of the desktop environment is shown while in fullscreen, e.g. KDE Plasma volume slider evoked via a keyboard button, the brief flickering is very obvious and ugly.
The user may find it's the lesser evil to lose transparency functionality in such situations instead of having to experience flicker. For such reasons, please implement an option to turn off transparency functionality so that compositing remains turned off when an overlay element is rendered on top off a fullscreen window with unredir-if-possible = yes
.
If the user wants to retain transparency functionality for fullscreen windows, they can also use unredir-if-possible-exclude
, which is better anyway as it prevents stutter when the overlay appears.
Arch Linux amd64
i3-gaps 4.15
Intel HD Graphics 5500
mode-setting driver, but it's the same with xf86-video-intel
one 1920x1080 monitor
v2.0
Default one that comes with Arch except no-fading-openclose = true
backend = "glx";
glx-no-stencil = true;
glx-copy-from-front = false;
glx-swap-method = "undefined";
shadow = true;
no-dnd-shadow = true;
no-dock-shadow = true;
clear-shadow = true;
shadow-radius = 5;
shadow-offset-x = -5;
shadow-offset-y = -5;
shadow-opacity = 0.5;
shadow-exclude = [
"! name~=''",
"name = 'Notification'",
"name = 'Plank'",
"name = 'Docky'",
"name = 'Kupfer'",
"name = 'xfce4-notifyd'",
"name *= 'VLC'",
"name *= 'compton'",
"name *= 'Chromium'",
"name *= 'Chrome'",
"class_g = 'Conky'",
"class_g = 'Kupfer'",
"class_g = 'Synapse'",
"class_g ?= 'Notify-osd'",
"class_g ?= 'Cairo-dock'",
"class_g ?= 'Xfce4-notifyd'",
"class_g ?= 'Xfce4-power-manager'",
"_GTK_FRAME_EXTENTS@:c"
];
shadow-ignore-shaped = false;
menu-opacity = 1;
inactive-opacity = 1;
active-opacity = 1;
frame-opacity = 1;
inactive-opacity-override = false;
alpha-step = 0.06;
blur-background-fixed = false;
blur-background-exclude = [
"window_type = 'dock'",
"window_type = 'desktop'"
];
fading = true;
fade-delta = 4;
fade-in-step = 0.03;
fade-out-step = 0.03;
no-fading-openclose = true;
fade-exclude = [ ];
mark-wmwin-focused = true;
mark-ovredir-focused = true;
use-ewmh-active-win = true;
detect-rounded-corners = true;
detect-client-opacity = true;
refresh-rate = 0;
vsync = "opengl-swc";
dbe = false;
paint-on-overlay = true;
sw-opti = true;
unredir-if-possible = true;
focus-exclude = [ ];
detect-transient = true;
detect-client-leader = true;
wintypes:
{
tooltip =
{
fade = true;
shadow = false;
opacity = 0.85;
focus = true;
};
};
No artifacts
Background flashes for a bit when switching to Chromium, sometimes is more, sometime is less noticable, but if you switch back and forth you will notice
It doesn't happen with compton disabled, or I can't notice it.
Also it does not happen when there are even 1px border around window.
Disabling hardware acceleration in Chromium also seems to solve it.
It's very strage that 1px border solves it, what's the difference?, can I simulate same rendering for borderless windows without having to add border?
Hi @yshui,
As your fork seems to be really active and fixes a lot of bugs and performance issues that compton has, did you have asked @chjj to be the new maintainer of compton?
If you want to continue to maintain compton in the near future, it would be really beneficial for the community, as his repo has more users than yours.
Thanks a lot for your work!
Arch Linux
Radeon RX580, amdgpu
i3-git
Latest -git (v3-rc2-3-ga47f112 as of this writing)
backend = "glx"
paint-on-overlay = true
unredir-if-possible = true
glx-no-stencil = true
glx-no-rebind-pixmap = true
glx-swap-method = "copy"
opacity-rule = [
"0:_NET_WM_STATE@:32a *= '_NET_WM_STATE_HIDDEN'"
];
The following vsync modes were tested, with GALLIUM_HUD=fps
to have real numbers to compare:
opengl-swc
/opengl-mswc
: massive stutter when dragging windows even though the HUD reads 60 fps. These are enabled by default with mesa and libdrm, so the rest requires vblank_mode=0
in the environment to prevent that from interfering.opengl
or drm
: smooth, (almost) no tearing, slight dips when switching workspaces.opengl-oml
: fails to vsync.NVIDIA GTX 1060, driver version: 410.73
git-v0.1_beta2-87-g316eac0-2017-04-30
backend = "xrender";
blur-background = true;
clear-shadow = true;
Start compton, place a transparent window on top of another window that updates frequently
No artifacts
Artifacts, see attached clip
This bug is caused by incorrect handling of pixels at the edge of damage area in compton's blur code.
I submitted a bug at mate-desktop/marco#414, but it may be related to compton, so I'll leave this here.
Arch Linux x86_64
Intel HD Graphics 630, i915 driver, one monitor
v2.0
$ grep -vE '^\s*(#|$)' /etc/xdg/compton.conf
backend = "glx";
glx-no-stencil = true;
glx-copy-from-front = false;
glx-swap-method = "undefined";
shadow = true;
no-dnd-shadow = true;
no-dock-shadow = true;
clear-shadow = true;
shadow-radius = 5;
shadow-offset-x = -5;
shadow-offset-y = -5;
shadow-opacity = 0.5;
shadow-exclude = [
"! name~=''",
"name = 'Notification'",
"name = 'Plank'",
"name = 'Docky'",
"name = 'Kupfer'",
"name = 'xfce4-notifyd'",
"name *= 'VLC'",
"name *= 'compton'",
"name *= 'Chromium'",
"name *= 'Chrome'",
"class_g = 'Conky'",
"class_g = 'Kupfer'",
"class_g = 'Synapse'",
"class_g ?= 'Notify-osd'",
"class_g ?= 'Cairo-dock'",
"class_g ?= 'Xfce4-notifyd'",
"class_g ?= 'Xfce4-power-manager'",
"_GTK_FRAME_EXTENTS@:c"
];
shadow-ignore-shaped = false;
menu-opacity = 1;
inactive-opacity = 1;
active-opacity = 1;
frame-opacity = 1;
inactive-opacity-override = false;
alpha-step = 0.06;
blur-background-fixed = false;
blur-background-exclude = [
"window_type = 'dock'",
"window_type = 'desktop'"
];
fading = true;
fade-delta = 4;
fade-in-step = 0.03;
fade-out-step = 0.03;
fade-exclude = [ ];
mark-wmwin-focused = true;
mark-ovredir-focused = true;
use-ewmh-active-win = true;
detect-rounded-corners = true;
detect-client-opacity = true;
refresh-rate = 0;
vsync = "opengl-swc";
dbe = false;
paint-on-overlay = true;
sw-opti = true;
unredir-if-possible = true;
focus-exclude = [ ];
detect-transient = true;
detect-client-leader = true;
wintypes:
{
tooltip =
{
fade = true;
shadow = false;
opacity = 0.85;
focus = true;
};
};
check mate-desktop issue above
check mate-desktop issue above
Is it possible to have kawasi blend mode with your fork?
https://github.com/tryone144/compton
newest archlinux system, up-to-date
intel hd630
compton --version
:
v3-rc1-3-gf84336a
I tested with:
compton --config /dev/null --backend glx &
setup sxhkd with wmv
and you will see images saved in background of spaces that the window is just moved out, like not respond of windows xp when you moving not responding window using mouse.
Robust when moving windows, no leave images in spaces after moving windows.
Archlinux
GPU, drivers, and screen setup: i915 (intel i5-4210U CPU @ 1.70GHz)
modsettings
i3 on xorg(xorg-server 1.20.1-1), mesa 18.2.2-1
v3-rc1-3-gf84336a ( compton-git 2:566_Next.1.gf84336a_2018.10.16-1 )
N/A
On Floating mode in i3 windows xp like Visual Artifacts can be seen in certain windows while moving.
https://ptpb.pw/YjfZ (Bad audio warning)
Manjaro Linux x86_64 unstable
AMD RX 580 with latest mesa-git
KDE Plasma with Compton as compositor
git-master and git-next have the issue
v2.0-2 (from official manjaro repo) doesn't
Tried switching every config possible and bug still triggers, even with default everything
Open any GTK application under KDE Plasma, then open any other window that covers it. If you switch back to GTK app it's window stay partly blank/unrefreshed until you move it.
https://www.youtube.com/watch?v=trB5aqFAMOM&feature=youtu.be - video of reproduction
I don't show in the video, but if I hover the cursor slowly over the taskbar, wait the thumbnail to appear and then click again to switch the bug doesn't trigger at all.
Arch Linux
Nvidia GTX 1080 ti, nvidia-drivers 410.66, mesa 18.2.4-1
—— glxinfo -B
name of display: :0
display: :0 screen: 0
direct rendering: Yes
Memory info (GL_NVX_gpu_memory_info):
Dedicated video memory: 11264 MB
Total available memory: 11264 MB
Currently available dedicated video memory: 10118 MB
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GTX 1080 Ti/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 410.66
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL version string: 4.6.0 NVIDIA 410.66
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)
OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 410.66
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
AwesomeWM
—— compton --version
v3-rc2-18-gc0d7f9d
#
# Backend
#
backend = "glx";
glx-no-stencil = true;
glx-swap-method = "copy";
glx-no-rebind-pixmap = true;
xrender-sync-fence = true;
#
# Fading
#
fading = true;
fade-delta = 4;
fade-in-step = 0.02;
fade-out-step = 0.02;
fade-exclude = [];
#
# Shadows
#
shadow = true;
no-dnd-shadow = true;
clear-shadow = true;
shadow-radius = 15;
shadow-offset-x = -15;
shadow-offset-y = -15;
shadow-opacity = 0.95;
shadow-exclude = [
"_GTK_FRAME_EXTENTS@:c",
"class_g = 'Bspwm' && class_i = 'presel_feedback'"
];
#
# Opacity
#
opacity-rule = [
"50:class_g = 'Bspwm' && class_i = 'presel_feedback'"
];
#
# Other
#
paint-on-overlay = true;
unredir-if-possible = true;
#
# Window type
#
wintypes: {
tooltip = {
fade = true;
shadow = false;
opacity = 0.85;
};
};
vim
and notice that the screen will stop updatingThe screen is always updated on input
The screen isn't updated when it should be
This issue didn't start happening until these options were removed:
xrender-sync-fence = true;
xrender-sync = true;
per this commit.
Ubuntu 18.04
Master build
asciidoc has a lot require packages (800+ mb). So I went to install via apt-get --no-install-recommends install asciidoc
for smaller packages. The log from ninja-build
[1/11] cc -Isrc/compton@exe -Isrc -I../src -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -O3 -std=c11 '-DCOMPTON_VERSION="v3"' -DNDEBUG -D_GNU_SOURCE -Wall -Wextra -Wno-unused-parameter -Wnonnull -Wshadow -DCONFIG_XSYNC -DCONFIG_XINERAMA -DCONFIG_LIBCONFIG -DCONFIG_REGEX_PCRE -DCONFIG_REGEX_PCRE_JIT -DCONFIG_OPENGL -DCONFIG_DBUS -MD -MQ 'src/compton@exe/win.c.o' -MF 'src/compton@exe/win.c.o.d' -o 'src/compton@exe/win.c.o' -c ../src/win.c
[2/11] cc -Isrc/compton@exe -Isrc -I../src -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -O3 -std=c11 '-DCOMPTON_VERSION="v3"' -DNDEBUG -D_GNU_SOURCE -Wall -Wextra -Wno-unused-parameter -Wnonnull -Wshadow -DCONFIG_XSYNC -DCONFIG_XINERAMA -DCONFIG_LIBCONFIG -DCONFIG_REGEX_PCRE -DCONFIG_REGEX_PCRE_JIT -DCONFIG_OPENGL -DCONFIG_DBUS -MD -MQ 'src/compton@exe/x.c.o' -MF 'src/compton@exe/x.c.o.d' -o 'src/compton@exe/x.c.o' -c ../src/x.c
[3/11] cc -Isrc/compton@exe -Isrc -I../src -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -O3 -std=c11 '-DCOMPTON_VERSION="v3"' -DNDEBUG -D_GNU_SOURCE -Wall -Wextra -Wno-unused-parameter -Wnonnull -Wshadow -DCONFIG_XSYNC -DCONFIG_XINERAMA -DCONFIG_LIBCONFIG -DCONFIG_REGEX_PCRE -DCONFIG_REGEX_PCRE_JIT -DCONFIG_OPENGL -DCONFIG_DBUS -MD -MQ 'src/compton@exe/config.c.o' -MF 'src/compton@exe/config.c.o.d' -o 'src/compton@exe/config.c.o' -c ../src/config.c
[4/11] cc -Isrc/compton@exe -Isrc -I../src -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -O3 -std=c11 '-DCOMPTON_VERSION="v3"' -DNDEBUG -D_GNU_SOURCE -Wall -Wextra -Wno-unused-parameter -Wnonnull -Wshadow -DCONFIG_XSYNC -DCONFIG_XINERAMA -DCONFIG_LIBCONFIG -DCONFIG_REGEX_PCRE -DCONFIG_REGEX_PCRE_JIT -DCONFIG_OPENGL -DCONFIG_DBUS -MD -MQ 'src/compton@exe/c2.c.o' -MF 'src/compton@exe/c2.c.o.d' -o 'src/compton@exe/c2.c.o' -c ../src/c2.c
[5/11] cc -Isrc/compton@exe -Isrc -I../src -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -O3 -std=c11 '-DCOMPTON_VERSION="v3"' -DNDEBUG -D_GNU_SOURCE -Wall -Wextra -Wno-unused-parameter -Wnonnull -Wshadow -DCONFIG_XSYNC -DCONFIG_XINERAMA -DCONFIG_LIBCONFIG -DCONFIG_REGEX_PCRE -DCONFIG_REGEX_PCRE_JIT -DCONFIG_OPENGL -DCONFIG_DBUS -MD -MQ 'src/compton@exe/config_libconfig.c.o' -MF 'src/compton@exe/config_libconfig.c.o.d' -o 'src/compton@exe/config_libconfig.c.o' -c ../src/config_libconfig.c
[6/11] cc -Isrc/compton@exe -Isrc -I../src -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -O3 -std=c11 '-DCOMPTON_VERSION="v3"' -DNDEBUG -D_GNU_SOURCE -Wall -Wextra -Wno-unused-parameter -Wnonnull -Wshadow -DCONFIG_XSYNC -DCONFIG_XINERAMA -DCONFIG_LIBCONFIG -DCONFIG_REGEX_PCRE -DCONFIG_REGEX_PCRE_JIT -DCONFIG_OPENGL -DCONFIG_DBUS -MD -MQ 'src/compton@exe/opengl.c.o' -MF 'src/compton@exe/opengl.c.o.d' -o 'src/compton@exe/opengl.c.o' -c ../src/opengl.c
[7/11] cc -Isrc/compton@exe -Isrc -I../src -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -O3 -std=c11 '-DCOMPTON_VERSION="v3"' -DNDEBUG -D_GNU_SOURCE -Wall -Wextra -Wno-unused-parameter -Wnonnull -Wshadow -DCONFIG_XSYNC -DCONFIG_XINERAMA -DCONFIG_LIBCONFIG -DCONFIG_REGEX_PCRE -DCONFIG_REGEX_PCRE_JIT -DCONFIG_OPENGL -DCONFIG_DBUS -MD -MQ 'src/compton@exe/compton.c.o' -MF 'src/compton@exe/compton.c.o.d' -o 'src/compton@exe/compton.c.o' -c ../src/compton.c
[8/11] /usr/bin/a2x --format manpage ../man/compton-trans.1.asciidoc -D /home/dikiaap/.local/src/compton/build/man
FAILED: man/compton-trans.1
/usr/bin/a2x --format manpage ../man/compton-trans.1.asciidoc -D /home/dikiaap/.local/src/compton/build/man
a2x: ERROR: "xmllint" --nonet --noout --valid "/home/dikiaap/.local/src/compton/build/man/compton-trans.1.xml" returned non-zero exit status 4
[9/11] cc -Isrc/compton@exe -Isrc -I../src -I/usr/include/pixman-1 -I/usr/include/libdrm -I/usr/include/dbus-1.0 -I/usr/lib/i386-linux-gnu/dbus-1.0/include -fdiagnostics-color=always -pipe -D_FILE_OFFSET_BITS=64 -Wall -Winvalid-pch -O3 -std=c11 '-DCOMPTON_VERSION="v3"' -DNDEBUG -D_GNU_SOURCE -Wall -Wextra -Wno-unused-parameter -Wnonnull -Wshadow -DCONFIG_XSYNC -DCONFIG_XINERAMA -DCONFIG_LIBCONFIG -DCONFIG_REGEX_PCRE -DCONFIG_REGEX_PCRE_JIT -DCONFIG_OPENGL -DCONFIG_DBUS -MD -MQ 'src/compton@exe/dbus.c.o' -MF 'src/compton@exe/dbus.c.o.d' -o 'src/compton@exe/dbus.c.o' -c ../src/dbus.c
[10/11] /usr/bin/a2x --format manpage ../man/compton.1.asciidoc -D /home/dikiaap/.local/src/compton/build/man
FAILED: man/compton.1
/usr/bin/a2x --format manpage ../man/compton.1.asciidoc -D /home/dikiaap/.local/src/compton/build/man
a2x: ERROR: "xmllint" --nonet --noout --valid "/home/dikiaap/.local/src/compton/build/man/compton.1.xml" returned non-zero exit status 4
ninja: build stopped: subcommand failed.
Hi,
I'm maintaining the compton package for Arch Linux, and someone reported this bug: https://bugs.archlinux.org/task/60647
I have a Nvidia card and am using the Nouveau driver and i3wm. compton-2.0-2 runs well on my system.
When running compton 3.0-1 in an X session (i3wm), the screen flickers erratically and the system is unusable.
The following message is printed repeatedly: 'delayed_draw_callback(): 0.000000'
Additional Information:
- Kernel: 4.18.16-arch1-1-ARCH
- Package Version: 3.0-1
- Steps to reproduce: Start compton
Feature request:
Could the delayed_draw_callback()
messages be less verbose, or silenced?
The default Arch Linux configuration for compton does not trigger the message, but many people will upgrade compton and continue to use their old configuration which does trigger this behavior.
With shadow = true
, Compton draws a shadow below the transparent autoscroll cursor of Firefox, which looks really ugly. This not just because it is undesired, it's also because the shadow is a perfect square, while the cursor has the shape of a circle.
This can be easily worked around by using shadow-exclude = "class_g = 'Firefox' && argb"
or shadow-exclude = "class_g = 'Nightly' && argb"
.
I just wonder if there is a way to exclude the cursor automatically?
Though I really like that Compton by default always draws shadows. kwin_x11 lacks them for GTK UIs, which is way more annoying than excluding some elements.
ArchLinux
GTX 1060, single monitor
v1-57-g97cd342
Reproducible with /dev/null
--config /dev/null --backend glx
Xorg CPU usage shots up, and there is visible lag.
Xrender doesn't seem to have the lag, although Xorg is still using a lot of CPU in Xrender backend.
Archlinux 4.18.16-arch1-1-ARCH
NVIDIA GTX1050Ti NVIDIA Driver Version:410.66
Fluxbox
v3-rc2-18-gc0d7f9d
# Shadow
shadow = true; # Enabled client-side shadows on windows.
no-dock-shadow = true; # Avoid drawing shadows on dock/panel windows.
no-dnd-shadow = true; # Don't draw shadows on DND windows.
# window. Fix some weirdness with ARGB windows.
shadow-radius = 7; # The blur radius for shadows. (default 12)
shadow-offset-x = -7; # The left offset for shadows. (default -15)
shadow-offset-y = -7; # The top offset for shadows. (default -15)
# shadow-opacity = 0.7; # The translucency for shadows. (default .75)
# shadow-red = 0.0; # Red color value of shadow. (0.0 - 1.0, defaults to 0)
# shadow-green = 0.0; # Green color value of shadow. (0.0 - 1.0, defaults to 0)
# shadow-blue = 0.0; # Blue color value of shadow. (0.0 - 1.0, defaults to 0)
shadow-exclude = [ "n:e:Notification" ]; # Exclude conditions for shadows.
# shadow-exclude = "n:e:Notification";
shadow-ignore-shaped = true; # Avoid drawing shadow on all shaped windows
# (see also: --detect-rounded-corners)
# Opacity
menu-opacity = 1.0; # The opacity for menus. (default 1.0)
inactive-opacity = 1.0; # Default opacity of inactive windows. (0.0 - 1.0)
# active-opacity = 0.8; # Default opacity for active windows. (0.0 - 1.0)
frame-opacity = 0.9; # Opacity of window titlebars and borders. (0.1 - 1.0)
# inactive-opacity-override = true; # Let inactive opacity set by 'inactive-opacity' overrides
# value of _NET_WM_OPACITY. Bad choice.
alpha-step = 0.06; # XRender backend: Step size for alpha pictures. Increasing
# it may result in less X resource usage,
# Yet fading may look bad.
#inactive-dim = 0.2; # Dim inactive windows. (0.0 - 1.0)
# inactive-dim-fixed = true; # Do not let dimness adjust based on window opacity.
blur-background = true; # Blur background of transparent windows.
# Bad performance with X Render backend.
# GLX backend is preferred.
blur-background-frame = true; # Blur background of opaque windows with transparent
# frames as well.
blur-background-fixed = false; # Do not let blur radius adjust based on window opacity.
blur-background-exclude = [ "window_type = 'dock'", "window_type = 'desktop'" ];
# Exclude conditions for background blur.
# Fading
fading = false; # Fade windows during opacity changes.
# fade-delta = 30; # The time between steps in a fade in milliseconds. (default 10).
fade-in-step = 0.03; # Opacity change between steps while fading in. (default 0.028).
fade-out-step = 0.03; # Opacity change between steps while fading out. (default 0.03).
# no-fading-openclose = true; # Avoid fade windows in/out when opening/closing.
fade-exclude = [ ]; # Exclude conditions for fading.
# Other
backend = "glx" # Backend to use: "xrender" or "glx". GLX backend is typically
# much faster but depends on a sane driver.
mark-wmwin-focused = true; # Try to detect WM windows and mark them as active.
mark-ovredir-focused = true; # Mark all non-WM but override-redirect windows active (e.g. menus).
use-ewmh-active-win = false; # Use EWMH _NET_WM_ACTIVE_WINDOW to determine which window is focused
# instead of using FocusIn/Out events. Usually more reliable but
# depends on a EWMH-compliant WM.
detect-rounded-corners = true; # Detect rounded corners and treat them as rectangular when --shadow-ignore- shaped is on.
detect-client-opacity = true; # Detect _NET_WM_OPACITY on client windows, useful for window
# managers not passing _NET_WM_OPACITY of client windows to frame
# windows.
refresh-rate = 0; # For --sw-opti: Specify refresh rate of the screen. 0 for auto.
vsync = "opengl"; # "none", "drm", "opengl", "opengl-oml", "opengl-swc", "opengl-mswc"
# See man page for more details.
dbe = false; # Enable DBE painting mode. Rarely needed.
paint-on-overlay = true; # Painting on X Composite overlay window. Recommended.
sw-opti = false; # Limit compton to repaint at most once every 1 / refresh_rate.
# Incompatible with certain VSync methods.
unredir-if-possible = false; # Unredirect all windows if a full-screen opaque window is
# detected, to maximize performance for full-screen windows.
focus-exclude = [ ]; # A list of conditions of windows that should always be considered
# focused.
detect-transient = true; # Use WM_TRANSIENT_FOR to group windows, and consider windows in
# the same group focused at the same time.
detect-client-leader = true; # Use WM_CLIENT_LEADER to group windows.
invert-color-include = [ ]; # Conditions for windows to be painted with inverted color.
# GLX backend # GLX backend fine-tune options. See man page for more info.
glx-no-stencil = true; # Recommended.
glx-copy-from-front = false; # Useful with --glx-swap-method,
#glx-use-copysubbuffermesa = true; # Recommended if it works. Breaks VSync.
glx-no-rebind-pixmap = true; # Recommended if it works.
glx-swap-method = "undefined"; # See man page.
# Window type settings
wintypes:
{
tooltip = { fade = true; shadow = false; opacity = 0.75; focus = true; };
# fade: Fade the particular type of windows.
# shadow: Give those windows shadow
# opacity: Default opacity for the type of windows.
# focus: Whether to always consider windows of this type focused.
};
compton &
in ./fluxbox/startupOpens menu with submenus.
Shows only root menu and most of submenus collapsed (not all). Looks like size of submenu windows is zero.
Compton v2 works just fine.
If i kill compton and restart it manually, all works fine.
Shadow of window bleeds into adjacent screen, this looks wrong.
~ >>> inxi -bM [1]
System: Host: mjb Kernel: 4.19.2-1-MANJARO x86_64 bits: 64 Desktop: KDE Plasma 5.14.3 Distro: Manjaro Linux
Machine: Type: Desktop System: Gigabyte product: N/A v: N/A serial:
Mobo: Gigabyte model: B150M-D3H DDR3-CF v: x.x serial: UEFI: American Megatrends v: F6
date: 03/14/2016
CPU: Quad Core: Intel Core i5-6400 type: MCP speed: 3302 MHz min/max: 800/3300 MHz
Graphics: Device-1: Advanced Micro Devices [AMD/ATI] Ellesmere [Radeon RX 470/480/570/570X/580/580X] driver: amdgpu v: kernel
Display: x11 server: X.Org 1.20.3 driver: amdgpu unloaded: modesetting resolution: 1920x1080~60Hz
OpenGL: renderer: Radeon RX 580 Series (POLARIS10 DRM 3.27.0 4.19.2-1-MANJARO LLVM 7.0.0)
v: 4.5 Mesa 19.0.0-devel (git-7e9fc11ff8)
Network: Device-1: Intel Ethernet I219-V driver: e1000e
Drives: Local Storage: total: 1.59 TiB used: 86.70 GiB (5.3%)
Info: Processes: 199 Uptime: 34m Memory: 15.60 GiB used: 1.31 GiB (8.4%) Shell: zsh inxi: 3.0.27
v4-rc1-14-gf834cf2
--backend=glx --vsync=opengl
Menu is showed correctly, as it does with no compositor or in other DEs.
Nothing happens.
It happens only on Plasma for some reason, not in xfce or gnome. When compton is on, the icon itself goes from ugly (black background) to beautiful but it stops working and if you close steam without exiting it stays on systray forever until you kill wine.
While starting and it's setting desktop wallpaper, without no issue but with compton wallpaper splash in background before setting picture.
Like pixels been saved in between moving.
I use arch in a virtualbox VM on my work laptop. With the chjj official repo, I can not get 3D acceleration working, and leave compton disabled at any resolution past 1920x1200 due to very low performance. But starting with compton-2.0-1-x86_64.pkg.tar.xz acceleration started working, and my CPU usage dropped way down to 8% at 2560x1600 and no visual keyboard lag.
But with compton 3.0-1-x86_64.pkg.tar.xz and newer, the CPU usage increased and there is noticeable keyboard lag when typing (and ~16-25% CPU usage reported by top, so a bit more than double),.
I can reproduce this also with head of your branch, but I have not yet started git-bisecting this to try and narrow it down, but will as time allows.
Arch Linux as a Virtual Box guest
Virtualbox running at 250x1600, mesa 18.2.4, and glxinfo -B:
name of display: :0
display: :0 screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
Vendor: VMware, Inc. (0xffffffff)
Device: llvmpipe (LLVM 7.0, 256 bits) (0xffffffff)
Version: 18.2.4
Accelerated: no
Video memory: 16039MB
Unified memory: no
Preferred profile: core (0x1)
Max core profile version: 3.3
Max compat profile version: 3.1
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.0
OpenGL vendor string: VMware, Inc.
OpenGL renderer string: llvmpipe (LLVM 7.0, 256 bits)
OpenGL core profile version string: 3.3 (Core Profile) Mesa 18.2.4
OpenGL core profile shading language version string: 3.30
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL version string: 3.1 Mesa 18.2.4
OpenGL shading language version string: 1.40
OpenGL context flags: (none)
OpenGL ES profile version string: OpenGL ES 3.0 Mesa 18.2.4
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.00
Plasma + i3-gaps
backend = "glx";
vsync = "none";
glx-copy-from-front = false;
glx-swap-method = "1";
glx-no-stencil = true;
glx-no-rebind-pixmap = false;
dbe = false;
detect-transient = true;
detect-client-leader = true;
invert-color-include = [ ];
mark-wmwin-focused = true;
mark-ovredir-focused = true;
focus-exclude = [ "class_g = 'Cairo-clock'" ];
detect-rounded-corners = false;
detect-client-opacity = true;
refresh-rate = 0;
wintypes :
{
dock :
{
opacity = 1.0;
shadlow = false;
};
tooltip :
{
fade = true;
shadow = false;
opacity = 0.95;
focus = true;
};
menu :
{
fade = true;
shadow = false;
};
dropdown_menu :
{
shadow = false;
};
popup_menu :
{
shadow = false;
};
utility :
{
shadow = false;
};
};
opacity-rule = [
"95:class_g = 'yakuake'",
"95:class_g = 'konsole'",
"95:class_g = 'Terminator'",
"95:class_g = 'dolphin'",
];
menu-opacity = 0.95;
inactive-opacity = 1.0;
active-opacity = 1.0;
frame-opacity = 1.0;
inactive-opacity-override = false;
shadow = true;
no-dnd-shadow = true;
no-dock-shadow = true;
shadow-radius = 16;
shadow-offset-x = -24;
shadow-offset-y = -22;
shadow-opacity = 1;
shadow-red = 0.0;
shadow-green = 0.0;
shadow-blue = 0.0;
shadow-exclude = "!I3_FLOATING_WINDOW@:c";
alpha-step = 0.06;
inactive-dim = 0.0;
blur-kern = "3x3box";
blur-background = true;
blur-background-frame = true;
blur-background-exclude = [ "window_type = 'dock'", "window_type = 'desktop'" ];
fading = false;
fade-in-step = 0.05;
fade-out-step = 0.05;
fade-exclude = [ ];
no-fading-openclose = false;
I set my blur radius to '0' and I still have fizzy edges to the shadows. Is there any way to make them sharp like xcompmgr?
Since CMake has been tossed, we can remove these files:
From e35f9555cf75e09dd594b9e708a3e461cf0897e4 Mon Sep 17 00:00:00 2001
From: Stephen Gregoratto <[email protected]>
Date: Sat, 15 Dec 2018 02:58:10 +1100
Subject: [PATCH] Remove unused CMake files
---
man/CMakeLists.txt | 46 ---------------------------------------------
tests/cmake-test.sh | 36 -----------------------------------
2 files changed, 82 deletions(-)
delete mode 100644 man/CMakeLists.txt
delete mode 100755 tests/cmake-test.sh
diff --git a/man/CMakeLists.txt b/man/CMakeLists.txt
deleted file mode 100644
index 76bb603..0000000
--- a/man/CMakeLists.txt
+++ /dev/null
@@ -1,46 +0,0 @@
-option(NEW_DOC "Build new man pages and HTML documentation" ON)
-
-# == Build documentation ==
-# Stolen from https://issues.apache.org/jira/secure/attachment/12455612/AVRO-470.patch
-if (NEW_DOC)
- set (MAN_SRC
- compton.1.asciidoc
- compton-trans.1.asciidoc
- )
-
- find_program(ASCIIDOC_EXEC asciidoc)
- find_program(ASCIIDOC_A2X_EXEC a2x)
- if (ASCIIDOC_EXEC AND ASCIIDOC_A2X_EXEC)
- foreach(_file ${MAN_SRC})
- # get_filename_component() does not handle ".1.asciidoc"
- # correctly
- string(REPLACE ".asciidoc" "" _file_we "${_file}")
- set(_file_path "${CMAKE_CURRENT_SOURCE_DIR}/${_file}")
- set(_html_out "${_file_we}.html")
- set(_man_out "${_file_we}")
- add_custom_target(compton_man_${_file_we} ALL
- COMMAND ${ASCIIDOC_A2X_EXEC} --format manpage
- "${_file_path}"
- DEPENDS "${_file_path}"
- )
- add_custom_command(
- OUTPUT "${_html_out}"
- COMMAND ${ASCIIDOC_EXEC} -o "${_html_out}" "${_file_path}"
- DEPENDS "${_file_path}"
- )
- add_custom_target(compton_html_${_file_we} ALL
- DEPENDS "${_html_out}"
- )
- endforeach(_file)
- else(ASCIIDOC_EXEC AND ASCIIDOC_A2X_EXEC)
- message(WARNING "asciidoc/a2x not found. New man pages and HTML documentation will not be built.")
- endif(ASCIIDOC_EXEC AND ASCIIDOC_A2X_EXEC)
-endif(NEW_DOC)
-
-# == Install ==
-include(GNUInstallDirs)
-
-install(FILES
- "compton.1"
- "compton-trans.1"
- DESTINATION "${CMAKE_INSTALL_MANDIR}/man1" COMPONENT doc)
diff --git a/tests/cmake-test.sh b/tests/cmake-test.sh
deleted file mode 100755
index fedcb46..0000000
--- a/tests/cmake-test.sh
+++ /dev/null
@@ -1,36 +0,0 @@
-#!/bin/bash
-
-# Test script for CMake build
-
-BASE_DIR=$(dirname "$0")/..
-. "${BASE_DIR}/functions.sh"
-
-BUILD_DIR="build"
-
-cmake_prepare() {
- [ ! -e "CMakeLists.txt" ] && ln -s {_,}CMakeLists.txt
-}
-
-cmake_build() {
- einfo Building compton with cmake $@
-
- [ -e "${BUILD_DIR}" ] && rm -r "${BUILD_DIR}"
- mkdir "${BUILD_DIR}" && cd "${BUILD_DIR}" || die
- cmake ${@} .. || die
- make VERBOSE=1 -B || die
- cd -
-
- einfo Build completed successfully
-}
-
-show_build_help_msg() {
- "${BUILD_DIR}/compton" -h | less
-}
-
-main() {
- cmake_prepare
- cmake_build "${@}"
- # show_build_help_msg
-}
-
-main "${@}"
--
2.20.0
At first: Thanks a lot for maintaining Compton, yshui. I don't know what I would do without it with free drivers and an Xorg session.
glx-no-rebind-pixmap
It doesn't do any harm for me with proprietary Nvidia drivers and Mesa (RadeonSI). It doesn't increase performance in my benchmarks either. Perhaps it's only measurable with really slow GPUs? Safe to activate it by default, though?
vsync
My opinion would be to make opengl
the default setting since it shows lower input latency than the other modes with Mesa drivers (apart from DRM, which is currently not activated by default when compiling). Sometimes people tend to force other vsync modes on top of compositing (like that forcecompositionpipeline mess with Nvidia), but I don't see why an application shouldn't care for vsync on its own, assuming driver bugs aren't normal. And it's plausible to assume that a compositor should enable vsync by default.
glx-swap-method
I notice that setting it to buffer-age
helps my GPU driver to stick to lower clocks to save power, contrary to any other possible value. I've also never encountered any problem with it and also other compositors use it by default. I always wonder why so many people don't have it in their configs. Perhaps because its description is a bit misleading?
paint-on-overlay
Is said to help against flickering with unredir-if-possible
and doesn't seem to cause any issues?
unredir-if-possible
Gnome-Mutter automatically turns off compositing for fullscreen windows for best performance. However, it also offers applications to block turning off compositing in fullscreen, which Compton does not. If it's enabled by default, I think it would be a good idea to also exclude at least browsers by default too via unredir-if-possible-exclude
to maintain transparency features etc.
ArcoLinux Xfce
v2.0
// If you can reliably reproduce this bug, please describe the quickest way to do so
// This information will greatly help us diagnosing and fixing the issue.
You can right menu click on the whiskermenu (once installed) and open menulibre to open/change the menu.
Out all applications only Compton.desktop is reported to be... you see the images.
I have tried to fiddle around with the .desktop file. Somewhere it must be missing something to show up on this report of menulibre.
Not urgent but annoying.
I've noticed your notes on trying out Vulkan and EGL. Here are my personal findings on the matter.
The DRI3 extension can export X Pixmaps as kernel dma-buf objects. This is very useful, as you can use a pair of extensions in EGL and Vulkan to import those objects and use them for texturing.
This is the same mechanism that is used by PRIME for multi-GPU systems (eg integrated + discrete graphics) to share buffers between devices, and by Wayland for both multi-GPU support and compositing.
Unfortunately NVIDIA's proprietary driver does not support dma-buf (for licensing reasons), so DRI3 is not available either on that driver. They do support another, standard, EGL_KHR_stream extension which is completely different. I don't know if that can be used to export X11 Pixmaps in the same way.
All relevant DRM-based (i915/i965, radeon/amdgpu, nouveau) drivers support dma-buf and DRI3. It's not clear whether they support EGL_KHR_stream.
This is a problem for Wayland compositors as well, as it requires a lot of duplicate effort to support both extensions, and most of them have decided not to support the proprietary driver at all.
Things apparently look a little better for Vulkan, but I'm not entirely sure if that helps us at all on X.
Relevant extensions:
frame opacity setting not working in openbox
(other opacity settings seems to be ok ..ie inactive, menu etc)
Arch (Obarun)
NVIDIA Corporation GT218 [GeForce 210]
nvidia-340xx 340.107-43 and mesa 18.2.5-1
glxinfo -B
name of display: :0
display: :0 screen: 0
direct rendering: Yes
Memory info (GL_NVX_gpu_memory_info):
Dedicated video memory: 1024 MB
Total available memory: 1024 MB
Currently available dedicated video memory: 958 MB
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce 210/PCIe/SSE2
OpenGL core profile version string: 3.3.0 NVIDIA 340.107
OpenGL core profile shading language version string: 3.30 NVIDIA via Cg compiler
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
[ 1603.543313 ] error 152 XCB_DAMAGE_BAD_DAMAGE request 143 minor 2 serial 9005: "152"
OpenGL version string: 3.3.0 NVIDIA 340.107
OpenGL shading language version string: 3.30 NVIDIA via Cg compiler
OpenGL context flags: (none)
OpenGL profile mask: (none)
openbox
compton --diagnostics
Version: v4
# Shadow
shadow = true;
no-dnd-shadow = true;
no-dock-shadow = true;
#clear-shadow = true;
shadow-radius = 7;
shadow-offset-x = -7;
shadow-offset-y = -7;
# shadow-opacity = 0.7;
# shadow-red = 0.0;
# shadow-green = 0.0;
# shadow-blue = 0.0;
shadow-exclude = [
"name = 'Notification'",
"class_g = 'Conky'",
"class_g ?= 'Notify-osd'",
"class_g = 'Cairo-clock'",
"_GTK_FRAME_EXTENTS@:c",
"class_g = 'Firefox' && argb"
];
# shadow-exclude = "n:e:Notification";
# shadow-exclude-reg = "x10+0+0";
# xinerama-shadow-crop = true;
# Opacity
menu-opacity = 0.8;
#inactive-opacity = 0.8;
# active-opacity = 0.8;
frame-opacity = 0.7;
inactive-opacity-override = false;
alpha-step = 0.06;
# inactive-dim = 0.2;
# inactive-dim-fixed = true;
# blur-background = true;
# blur-background-frame = true;
blur-kern = "3x3box";
# blur-kern = "5,5,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1";
# blur-background-fixed = true;
blur-background-exclude = [
"window_type = 'dock'",
"window_type = 'desktop'",
"_GTK_FRAME_EXTENTS@:c"
];
# opacity-rule = [ "80:class_g = 'URxvt'" ];
# Fading
fading = true;
# fade-delta = 30;
fade-in-step = 0.03;
fade-out-step = 0.03;
# no-fading-openclose = true;
# no-fading-destroyed-argb = true;
fade-exclude = [ ];
# Other
backend = "xrender";
mark-wmwin-focused = true;
mark-ovredir-focused = true;
# use-ewmh-active-win = true;
detect-rounded-corners = true;
detect-client-opacity = true;
refresh-rate = 0;
vsync = "none";
dbe = false;
#paint-on-overlay = true;
# sw-opti = true;
# unredir-if-possible = true;
# unredir-if-possible-delay = 5000;
# unredir-if-possible-exclude = [ ];
focus-exclude = [ "class_g = 'Cairo-clock'" ];
detect-transient = true;
detect-client-leader = true;
invert-color-include = [ ];
# resize-damage = 1;
# GLX backend
# glx-no-stencil = true;
# glx-no-rebind-pixmap = true;
glx-swap-method = "undefined";
# glx-use-gpushader4 = true;
# xrender-sync = true;
# xrender-sync-fence = true;
# Window type settings
wintypes:
{
tooltip = { fade = true; shadow = true; opacity = 0.75; focus = true; };
};
// If you can reliably reproduce this bug, please describe the quickest way to do so
// This information will greatly help us diagnosing and fixing the issue.
1.set "frame-opacity = 0.7;" in compton.conf
2.run compton --config /path/to/compton.conf
window frame (title bar) should be semi-transparent
it's not
The sigint_handler
calls exit()
, which calls some exit hooks. The NVIDIA driver registers some exit hooks that calls Xlib functions. Some of the Xlib functions are not reentrant, so if you press Ctrl-C at an unfortunate timing, it will cause compton to freeze.
Solution is to use an ev_async
.
While now config detection can read ~/.compton.conf
and ~/.config/compton.conf
, adding ~/.config/compton/compton.conf
to the order list is very helpful for some users who prefer to put config in a ~/.config/$x
folder.
archlinux latest
intel
latest from aur compton-git 2:Next.r3.g9654d0b_2018.10.04-1
--backend glx
I just want to disable compton on urxvt or exterm for example, completely.
Hi,
The commit d7cff56 seems to have introduced a regression: urxvt font drawing becomes very slow. More specifically, urxvt with the font 7x13 and window size of about 1920x2160 takes about 300-500ms to draw its contents with mc
running in it.
Arch Linux (x64)
RX Vega 64, AMDGPU drivers (Linux 4.18.7)
Arch Linux
Intel graphics (Skylake), modesetting driver, mesa 18.2.4
name of display: :0.0
display: :0 screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
Vendor: Intel Open Source Technology Center (0x8086)
Device: Mesa DRI Intel(R) HD Graphics 520 (Skylake GT2) (0x1916)
Version: 18.2.4
Accelerated: yes
Video memory: 3072MB
Unified memory: yes
Preferred profile: core (0x1)
Max core profile version: 4.5
Max compat profile version: 3.0
Max GLES1 profile version: 1.1
Max GLES[23] profile version: 3.2
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) HD Graphics 520 (Skylake GT2)
OpenGL core profile version string: 4.5 (Core Profile) Mesa 18.2.4
OpenGL core profile shading language version string: 4.50
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL version string: 3.0 Mesa 18.2.4
OpenGL shading language version string: 1.30
OpenGL context flags: (none)
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 18.2.4
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
XFCE
Version: v4-rc1-6-gb18d46b
backend = "glx";
vsync = "opengl-swc";
detect-client-opacity = true;
paint-on-overlay = true;
Screen does not flicker horribly
Screen flickers horribly
Bisected:
# bad: [403d170f326e7d11d73bd89c687ee312f715c8f6] Merge branch 'next'
# good: [316eac0613bf342ff91cc645a6c3c80e6b9083fb] GitHub: Add an issue template
git bisect start 'master' '316eac0613bf342ff91cc645a6c3c80e6b9083fb'
# bad: [18022181ee8f198146fe26479cf56af382af015d] Make sure to clear the rectangles
git bisect bad 18022181ee8f198146fe26479cf56af382af015d
# bad: [209b751b2524ce7eb93fa3c50aebe823ddf800ab] Port more stuff to xcb
git bisect bad 209b751b2524ce7eb93fa3c50aebe823ddf800ab
# good: [cac8094ce12cd40706fb48f9ab35354d9ee7c48f] Update manpage
git bisect good cac8094ce12cd40706fb48f9ab35354d9ee7c48f
# good: [c37c6c41edd3008f1cf0c663688ae058f6b65deb] Fix Makefile dependency
git bisect good c37c6c41edd3008f1cf0c663688ae058f6b65deb
# good: [2adfdfa897a43dbd1466e172eca6e0b7783328fe] Clear prototypes
git bisect good 2adfdfa897a43dbd1466e172eca6e0b7783328fe
# good: [967d9f32eaadb64961ec6638cc478ca3403b0329] Workaround for what seems to be a race in Xserver
git bisect good 967d9f32eaadb64961ec6638cc478ca3403b0329
# bad: [7af815a0aaaffc02e114e1d0adccb5f87dcc3548] Proper fix for screen freeze
git bisect bad 7af815a0aaaffc02e114e1d0adccb5f87dcc3548
# skip: [43f3744fea075e5fdc6e01a0e66a00b15833cddb] Revert "Workaround for what seems to be a race in Xserver"
git bisect skip 43f3744fea075e5fdc6e01a0e66a00b15833cddb
# only skipped commits left to test
# possible first bad commit: [7af815a0aaaffc02e114e1d0adccb5f87dcc3548] Proper fix for screen freeze
# possible first bad commit: [43f3744fea075e5fdc6e01a0e66a00b15833cddb] Revert "Workaround for what seems to be a race in Xserver"
Arch Linux, Kernel: 4.18.16-arch1-1-ARCH x86_64
NVIDIA GM204 [GeForce GTX 970] driver: nvidia v: 410.66
Openbox 3.6.1
v2/v3
Removing this option has an unpleasant side effect.
# Firefox dropdown menus: proper shadow just without clear-shadow
clear-shadow = false;
wintypes:
{
dropdown_menu = { shadow = false; };
};
... but I'd be pleased if we got the clear-shadow option back.
Thank you for your great work. Please let me know if I can help by providing any additional information or performing tests.
Linux arch 4.18.16-1-ck-skylake #1 SMP PREEMPT Sat Oct 20 08:37:58 EDT 2018 x86_64 GNU/Linux
130 chris@arch ~/dotfiles/compton (git)-[master] % glxinfo | grep -i vendor
server glx vendor string: SGI
client glx vendor string: Mesa Project and SGI
Vendor: Intel Open Source Technology Center (0x8086)
OpenGL vendor string: Intel Open Source Technology Center
chris@arch ~/dotfiles/compton (git)-[master] % lspci -k | grep -EA3 'VGA|3D|Display' :(
lspci: Unable to load libkmod resources: error -12
00:02.0 VGA compatible controller: Intel Corporation HD Graphics 530 (rev 06)
DeviceName: Onboard IGD
Subsystem: Hewlett-Packard Company HD Graphics 530
Kernel driver in use: i915
XFCE4
v3 and v3-rc2-16-g06d8792
Default configuration and /etc/xdg/compton.conf.example
Tried any combination of options
Windows to be visible
Screen becomes empty
I remember having this problem on your fork a long while ago, then it was fixed for a while, now it is back again.
// The template below is for reporting bugs. For feature requests and others, feel free to delete irrelevant entries.
Arch Linux
Intel, don't know, two monitors configured side-by-side with xrandr
Openbox
// You can run compton --version
to get that
v3-rc2-18-gc0d7f9d
// Paste your configuration here
# Shadows
# -------
shadow = true;
no-dnd-shadow = true;
no-dock-shadow = true;
clear-shadow = true;
shadow-radius = 7;
shadow-offset-x = -8;
shadow-offset-y = -4;
shadow-opacity = 0.7;
shadow-exclude = [
"! name~=''",
"name = 'Notification'",
"name = 'xfce4-notifyd'",
"name *= 'VLC'",
"name *= 'albert'",
"name *= 'compton'",
"name *= 'Chromium'",
"name *= 'Chrome'",
"class_g = 'Conky'",
"class_g ?= 'Notify-osd'",
"class_g ?= 'Xfce4-notifyd'",
"class_g ?= 'Xfce4-power-manager'"
];
# Opacity
# -------
menu-opacity = 0.9;
frame-opacity = 0.9;
inactive-opacity = 0.9;
active-opacity = 1.0;
#inactive-opacity-override = true;
opacity-rule = [
"100:name *?= 'vlc'",
"100:class_g *= 'Xfce4-terminal'",
"100:class_g *= 'gthumb'"
];
# Other
# -----
paint-on-overlay = true;
# Window type settings
# --------------------
wintypes:
{
tooltip =
{
shadow = false;
opacity = 0.95;
focus = true;
};
};
// If you can reliably reproduce this bug, please describe the quickest way to do so
// This information will greatly help us diagnosing and fixing the issue.
inactive-opacity doesn't apply on certain apps' windows
Every inactive windows are applied transparent.
// If your problem is visual, you are encouraged to record a short video when the problem occurs and link to it here.
Arch Linux (4.18.16-arch1-1-ARCH)
v3-rc2-18-gc0d7f9d
Default
composite manager runs and provides compositing
Severe rendering issues; rapid flickering; window frequently disappears (see video)
Link to video (Google Drive - download if stream doesn't work) of behaviour: compton_issue.mp4
The program vlc is running in the active window as an example.
archlinux in virtualbox
vboxvideo
openbox and mate
v3 with additional commits
https://git.archlinux.org/svntogit/community.git/commit/trunk?h=packages/compton&id=611a4d7d3012745b7243df25e1036f0e50ec7f78
and latest git
# running with empty config file
Login to a desktop environment and start compton &
no lag, no performance issues
the whole desktop gets almost unusable with a really bad lag.
I´m using archlinux and the problem started with version 3.0-2 which cherrypicked a commit from github. The latest git version still has the issue. Downgrading the package to 3.0-1 solves it.
According to the changes made it must be related to changes before that point.
--config /dev/null --backend glx
Video play smoothly
There is a noticeable frame loss when the popup menu opens/closes
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.