Uli Schlachter
3ed73b1f8e
Replace last definitions from Xcomposite.h with xcb
...
Note that this adds an include for Xfixes.h, because that header is
still needed and was previously included through Xcomposite.h.
Signed-off-by: Uli Schlachter <psychon@znc.in>
2018-09-29 11:48:57 +02:00
Uli Schlachter
2f49f6f03d
Switch XComposite initialisation to XCB
...
Signed-off-by: Uli Schlachter <psychon@znc.in>
2018-09-29 11:48:57 +02:00
Uli Schlachter
8064eaaa37
Replace more usage of XComposite with xcb
...
Signed-off-by: Uli Schlachter <psychon@znc.in>
2018-09-29 10:38:25 +02:00
Uli Schlachter
79089b0652
Port XCompositeUnredirect{Subw,W}indows to xcb
...
Signed-off-by: Uli Schlachter <psychon@znc.in>
2018-09-29 10:37:53 +02:00
Uli Schlachter
11204e7a44
Port usage of XCompositeNameWindowPixmap to xcb
...
Signed-off-by: Uli Schlachter <psychon@znc.in>
2018-09-29 10:37:29 +02:00
Yuxuan Shui
dbb5a6be83
Fix include path in dep generation
2018-09-28 11:33:37 +01:00
yshui
5efa21e22a
Merge pull request #3 from psychon/xcb_conv
...
Some conversion to XCB
2018-09-28 11:26:00 +01:00
Uli Schlachter
7719dc7325
RENDER: Fix check for convolution filter
...
The X11 server's answer is not \0-terminated, so xcb_str_name() also
does not provide a \0-terminated pointer.
Signed-off-by: Uli Schlachter <psychon@znc.in>
2018-09-28 10:45:16 +02:00
Uli Schlachter
539d62ca93
Port from xrender to xcb-render
...
Signed-off-by: Uli Schlachter <psychon@znc.in>
2018-09-27 18:14:44 +02:00
Uli Schlachter
6d54d6b055
Port from xrandr to xcb-randr
...
Signed-off-by: Uli Schlachter <psychon@znc.in>
2018-09-27 17:38:24 +02:00
Uli Schlachter
62b847323c
Port from xdamage to xcb-damage
...
No functional changes intended. The new xcb_damage_query_version() was
previously done by XDamageQueryExtension() internally.
Signed-off-by: Uli Schlachter <psychon@znc.in>
2018-09-27 17:29:51 +02:00
Uli Schlachter
0a98ef79ef
Fix build with NO_LIBCONFIG=1
...
This got broken in commit fcef5e706d
.
Signed-off-by: Uli Schlachter <psychon@znc.in>
2018-09-27 17:10:43 +02:00
Yuxuan Shui
6ca3152957
Don't include dep files for clean
2018-09-24 10:49:46 +01:00
Yuxuan Shui
4da626639f
Update comments about clear-shadow
2018-09-24 00:20:28 +01:00
Yuxuan Shui
6f59367c00
Remove the clear-shadow option
...
Shadows attached to ARGB/transparent windows are always cleared now.
2018-09-23 23:58:17 +01:00
Yuxuan Shui
209b751b25
Port more stuff to xcb
...
To avoid interoperability issues between xcb and xlib.
2018-09-23 22:58:49 +01:00
Yuxuan Shui
7af815a0aa
Proper fix for screen freeze
...
If an X event is received at a very specific point in time, it can trigger
a race condition in Xlib. Said event will be read, but Xlib will
nonetheless be completely unaware of the event.
This cause compton to sometimes block on select() while there are events
ready to be processed. If the event is a damage report, screen freeze
will happen until some other event is received.
The proper fix is to switch to xcb for event handling, thus avoid this
problem entirely.
2018-09-22 23:57:51 +01:00
Yuxuan Shui
43f3744fea
Revert "Workaround for what seems to be a race in Xserver"
...
This reverts commit 967d9f32ea
.
2018-09-22 19:46:50 +01:00
Yuxuan Shui
967d9f32ea
Workaround for what seems to be a race in Xserver
...
There seems to be a race between DamageAdd (what the client uses
to report damage to Xserver) and DamageSubtract (what compton uses
to clear the reported damage, so it can receive new ones). I am not
sure how to confirm this. But this (terrible) workaround seems to
solve this problem.
2018-09-10 13:46:24 +01:00
Yuxuan Shui
72231098d1
Refactoring
...
* Move code around
* Remove unneeded forward declaration
* Rename win->damaged to win->ever_damaged, to be less confusing
* Expose debug functions even when DEBUG is not enabled. Compiler
would remove the dead code for us anyway.
* Some code cleanup
2018-09-10 13:46:24 +01:00
Yuxuan Shui
2adfdfa897
Clear prototypes
2018-09-10 13:46:24 +01:00
Yuxuan Shui
d2b85dd6af
Fix some null pointer problems
2018-09-10 13:46:24 +01:00
Yuxuan Shui
2e39fc5618
Split out win related functions to win.c
...
Also move static function prototypes out of compton.h. Seems like the
previous developers didn't know what header files are for.
Seems to have bugs after the split.
2018-09-10 13:46:24 +01:00
Yuxuan Shui
a8e29b92c9
Fix makefile dependency, again
...
I guess I have no idea how to write makefile.
2018-09-10 13:46:24 +01:00
Yuxuan Shui
0d6b1627f2
Make gcc happy
2018-09-10 13:46:24 +01:00
Yuxuan Shui
c37c6c41ed
Fix Makefile dependency
2018-09-10 13:46:24 +01:00
Yuxuan Shui
571a6cf15f
Enable everything OpenGL when using OpenGL
...
Remove finer grained macro definitions, just enable everything OpenGL
when we are using OpenGL.
2018-09-10 13:46:24 +01:00
Yuxuan Shui
3ce59930a4
More compiler warning flags
2018-09-10 13:46:22 +01:00
Yuxuan Shui
4940a93f03
c2.h cleanup
...
Move most of the static functions into c2.c itself, and
only keep the public functions in c2.h
2018-09-10 13:46:05 +01:00
Yuxuan Shui
e875f7566f
Bump to C11
2018-09-10 13:46:05 +01:00
Yuxuan Shui
98d4255aee
Add editorconfig
2018-09-10 13:46:05 +01:00
Yuxuan Shui
fcef5e706d
Some cleanup work
...
* Remove NO_C2 option
* Split configuration related functions into their own file
* Drop support for libconfig < 1.4
* Fix dependencies in Makefile
2018-09-10 13:46:05 +01:00
Yuxuan Shui
265dc67717
Update github issue template
2018-09-10 12:27:02 +01:00
Yuxuan Shui
ba780659be
Add repo info to usage string
2018-09-10 12:08:45 +01:00
Yuxuan Shui
c695d06263
Fix cflags for release build
2018-09-09 02:47:26 +01:00
Yuxuan Shui
cac8094ce1
Update manpage
2018-08-14 11:05:28 +01:00
Yuxuan Shui
c8bfbd6b11
Allow setting active/inactive opacity to 0
2018-08-14 11:05:28 +01:00
Yuxuan Shui
15e3c525e3
Expose opacity_is_set, has_opacity_prop over dbus
2018-08-14 11:05:28 +01:00
Yuxuan Shui
bfead72d37
Honor opacity explicitly set by rules
2018-08-14 11:05:28 +01:00
Yuxuan Shui
58a0b9ec39
Honor wintype opacity if set explicitly
...
Also normalize wintype opacity value to [0, 1]
2018-08-14 11:05:28 +01:00
Yuxuan Shui
66785aae99
Honor opacity prop if set
...
If opacity prop is explicitly set on the window, active/inactive opacity
shouldn't kick in.
2018-08-14 11:05:28 +01:00
Yuxuan Shui
91ca387723
Unify opacity_prop and opacity_prop_client
...
Also keep track of whether opacity prop is present on the window
2018-08-14 11:05:28 +01:00
Yuxuan Shui
a1afb76c44
Warn about fallthrough
...
And fix some fallthroughs
2018-08-14 10:59:09 +01:00
Yuxuan Shui
5e1411c5c6
More sanitizer options
2018-08-14 10:36:46 +01:00
Yuxuan Shui
9b24550814
Small clean up of the Makefile
...
CFG_DEV is replaced by BUILD_TYPE. Debug build is fixed,
set BUILD_TYPE to Debug to make a debug build.
Add an option to compile with sanitizers.
2018-05-21 14:25:56 +01:00
Yuxuan Shui
7844634853
Update README
2018-05-21 14:19:48 +01:00
Yuxuan Shui
27fc4a2af4
Clear compiler warnings
...
Thanks to chjj/compton#445
2018-05-17 12:50:22 +01:00
Yuxuan Shui
af8a08e655
Remove blur limit
...
Thanks chjj/compton#414
2018-05-17 12:37:13 +01:00
Yuxuan Shui
bf29b2dd37
Avoid using 10bit FBConfigs
...
Fix weird color issue with Mesa 18.0
2018-04-16 10:13:55 -04:00
Uli Schlachter
1125389910
Exit when compton loses the _NET_WM_CM_Sn selection
...
Again, this behaviour is required by ICCCM.
Signed-off-by: Uli Schlachter <psychon@znc.in>
2018-04-16 10:13:55 -04:00