A lightweight compositor for X11
Go to file
Christopher Jeffrey 5f63244a81 macros to make things more intelligible 2011-11-06 16:34:33 -06:00
.gitignore Add *~ to .gitignore to skip patch/emacs droppings 2007-09-03 05:51:17 -04:00
AUTHORS Autotoolized: 2004-03-25 23:57:55 +00:00
Makefile.am Bug #13073: Fix broken word-wrapping in ChangeLog generation. 2007-11-05 09:32:44 -08:00
Makefile_ add readme 2011-11-04 13:52:05 -05:00
NEWS Autotoolized: 2004-03-25 23:57:55 +00:00
README.md complete frame opacity 2011-11-05 22:58:43 -05:00
autogen.sh New. 2004-03-28 12:02:50 +00:00
configure.ac Bump to 1.1.3 for anholt's named window hack 2005-10-31 17:57:40 +00:00
xcompmgr.1 Added command-line options for changing values relevant to fading. 2004-09-23 07:17:48 +00:00
xcompmgr.c macros to make things more intelligible 2011-11-06 16:34:33 -06:00
xcompmgr.h add readme 2011-11-04 13:52:05 -05:00

README.md

Compton

Compton is a compositor for X, and a fork of xcompmgr-dana.

I was frustrated by the low amount of standalone lightweight compositors. Compton was forked from Dana Jansens' fork of xcompmgr and refactored. I fixed whatever bug I found, and added features I wanted. Things seem stable, but don't quote me on it. I will most likely be actively working on this until I get the features I want. This is also a learning experience for me. That is, I'm partially doing this out of a desire to learn Xlib.

Changes from xcompmgr:

  • inactive window transparency (specified with -i)
  • titlebar/frame transparency (specified with -e)
  • shadows are now enabled for argb windows, e.g. terminals with transparency
  • removed serverside shadows (and simple compositing) to clean the code, the only option that remains is clientside shadows
  • menu transparency (thanks to Dana)

The above features give compton a feature set similar to the xfce compositor.

Compton has only been tested with openbox so far, but frame transparency should work with any window manager that properly sets _NET_FRAME_EXTENTS.

Fixes from the original xcompmgr:

  • fixed a segfault when opening certain window types
  • fixed a memory leak caused by not freeing up shadows (from the freedesktop repo)

License

xcompmgr has gotten around. As far as I can tell, the lineage for this particular tree is something like:

  • Keith Packard (original author)
  • Matthew Hawn
  • ...
  • Dana Jansens
  • Myself

Not counting the tens of people who forked it in between.

Keith Packard's original license remains in the source.

Building

The same dependencies and build as xcompmgr.

Dependencies:

  • libx11
  • libxcomposite
  • libxdamage
  • libxfixes
  • libxrender
  • autoconf

To build, make sure you have the above dependencies:

$ ./autogen.sh
$ make

The above will produce a single binary.

Usage

$ xcompmgr -cC -t -5 -l -5 -r 5 -o 0.4 \
  -fF -I 0.065 -O 0.065 -D 6 -m 0.8 -i 0.6 -e 0.6 &

$ xcompmgr -cC -t -5 -l -5 -r 5 -o 0.4 -i 0.6 -e 0.6 &