yshui / picom

A lightweight compositor for X11 with animation support
https://picom.app/
Other
4.04k stars 583 forks source link

flickering with glx backend, regression from compton #627

Open sandsmark opened 3 years ago

sandsmark commented 3 years ago

Platform

Archlinux

GPU, drivers, and screen setup

xf86-video-intel 1:2.99.917+916+g31486f40-1

Single display, 60 fps.

Environment

i3

picom version

Version: vgit-dac85

Extensions:

Misc:

Drivers (inaccurate):

Intel

Configuration:

--backend glx

Steps of reproduction

  1. Start picom: picom --backend glx
  2. Try running something with small, rapid repaints, e. g. scrolling the cursor in vim in konsole, or moving the cursor vertically in QtCreator.

Expected behavior

Consistently visible cursor, as in compton.

Current Behavior

Cursor flickers.

Other details

As mentioned above this issue does not happen with "old" compton (316eac0613bf342ff91cc645a6c3c80e6b9083fb), with same options.

With picom it happens with and without experimental-backends, with and without glx-no-stencil, with and without use-damage, with and without glx-no-rebind-pixmap, and with and without xrender-sync-fence.

It does not happen with forcing 120 fps (double the display) and sw-opti, but this causes tearing. Also does not happen with the xrender backend, but this also causes tearing.

yshui commented 3 years ago

Hmm, picom isn't responsible for rendering the cursor. This sounds more like a driver problem.

Have you tried using the modesetting driver? You can try that simply by removing xf86-video-intel.

nick87720z commented 3 years ago

It's not about X11 mouse cursor (pointer), but about terminal text cursor (though I guess, could be in text editor too). Well, not that I can reproduce it - full command I tried: picom --backend glx --config /dev/null

Forgot, I also retried with --experimental-backends option (or blur doesn't work), both with config and /dev/null, but blinking cursor in urxvt/vim blinks as usually.