picom/src
Yuxuan Shui 0c4b690b2b
First step of split backend into modules
This commit introduced a new, modular backend interface. The interface
is not very good, since I don't think I fully understand all the
requirements writing a backend have. But this is a good first step.

This commit also includes an initial xrender backend written using the
new interface, and some opengl backend related helper functions, which
are taken from the old opengl backend.

However, there is not integration with the core compton yet. compton
will still use the old backend code. This commit is here so we can get
the automated build test.

What is implemented in the new xrender backend:

* Windows with transparency
* Shadow
* Opacity
* Wallpaper (getting the root pixmap)
* Blur

Known problem with the xrender backend:

* It is slower

Things that still need to be figured out:

* What is the better way to add vsync to the new backends

Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com>
2018-12-22 00:50:25 +00:00
..
backend First step of split backend into modules 2018-12-22 00:50:25 +00:00
c2.c Clean up options/config file parsing 2018-12-21 17:21:52 +00:00
c2.h Clean up options/config file parsing 2018-12-21 17:21:52 +00:00
common.h First step of split backend into modules 2018-12-22 00:50:25 +00:00
compiler.h Add compiler dependent macros for thread_local 2018-12-20 00:46:38 +00:00
compton.c First step of split backend into modules 2018-12-22 00:50:25 +00:00
compton.h Convert printf_errf/dbgf in several files 2018-12-20 16:54:51 +00:00
config_libconfig.c Make --logpath work again 2018-12-21 22:59:21 +00:00
config.c Clean up options/config file parsing 2018-12-21 17:21:52 +00:00
config.h Clean up options/config file parsing 2018-12-21 17:21:52 +00:00
dbus.c Clean up options/config file parsing 2018-12-21 17:21:52 +00:00
dbus.h Remove a couple of unwanted options 2018-12-20 23:44:38 +00:00
diagnostic.c Use libxdg-basedir for finding config files 2018-12-15 19:53:16 +00:00
diagnostic.h Add --diagnostics option 2018-11-03 22:37:18 +00:00
kernel.c Convert printf_* in vsync.c 2018-12-20 17:19:41 +00:00
kernel.h Enable -Werror in CI 2018-12-19 23:41:58 +00:00
log.c Append to log file, not overwrite 2018-12-21 23:02:19 +00:00
log.h Remove printf_* macros 2018-12-20 17:36:23 +00:00
meson.build First step of split backend into modules 2018-12-22 00:50:25 +00:00
opengl.c Clean up options/config file parsing 2018-12-21 17:21:52 +00:00
opengl.h Convert printf_* in opengl.h 2018-12-20 17:24:03 +00:00
options.c Mark fallthrough switch case 2018-12-21 23:04:51 +00:00
options.h Make --logpath work again 2018-12-21 22:59:21 +00:00
region.h Convert print_errf/dbgf in win.c and compton.c 2018-12-20 03:56:31 +00:00
render.c Make make_shadow() public 2018-12-22 00:30:45 +00:00
render.h Make make_shadow() public 2018-12-22 00:30:45 +00:00
string_utils.c Move rendering related functions out of compton.c 2018-12-16 00:50:46 +00:00
string_utils.h Improved allocation failure reporting 2018-12-20 14:19:10 +00:00
types.h Fix signedness of x properties 2018-11-01 11:12:46 +00:00
utils.c Improved allocation failure reporting 2018-12-20 14:19:10 +00:00
utils.h Improved allocation failure reporting 2018-12-20 14:19:10 +00:00
vsync.c Fix vsync-drm 2018-12-21 17:25:24 -05:00
vsync.h Move rendering related functions out of compton.c 2018-12-16 00:50:46 +00:00
win.c First step of split backend into modules 2018-12-22 00:50:25 +00:00
win.h First step of split backend into modules 2018-12-22 00:50:25 +00:00
x.c Some new x helper functions 2018-12-21 23:47:31 +00:00
x.h Some new x helper functions 2018-12-21 23:47:31 +00:00
xrescheck.c Convert printf_errf/dbgf in several files 2018-12-20 16:54:51 +00:00
xrescheck.h Sort out license problems 2018-10-03 22:14:51 +01:00