Uli Schlachter and Yuxuan Shui
b2bfbcdfb0
Convert XGetAtomName to XCB
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2018-10-10 10:49:52 +01:00
Uli Schlachter and Yuxuan Shui
ca148c8f15
Fix printf format with DEBUG_EVENTS
...
Xlib uses unsigned long for XIDs, but xcb always uses uint32_t. Thus,
this needs the format string for uint32_t now.
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-10-10 10:46:39 +01:00
Uli Schlachter and Yuxuan Shui
7e71f46401
Convert XInternAtom to XCB
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2018-10-10 10:46:34 +01:00
Uli Schlachter and Yuxuan Shui
2da0ecdf66
Convert XSelectInput() to XCB
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
Signed-off-by: Yuxuan Shui <yshuiv7@gmail.com >
2018-10-10 10:42:12 +01:00
Uli Schlachter and Yuxuan Shui
1b1b3456bc
Convert XGetSelectionOwner to XCB
...
This also fixes a memory leak: buf was not freed if another composite
manager was already running.
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-10-10 10:41:40 +01:00
Uli Schlachter and Yuxuan Shui
2dc90e7d4d
Convert XGetInputFocus to XCB
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-10-10 10:41:40 +01:00
Uli Schlachter and Yuxuan Shui
8db6473d32
Convert property management to XCB
...
I removed the error checking in compton.c because it was dead code.
XChangeProperty() always returns 1.
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-10-10 10:41:40 +01:00
Uli Schlachter and Yuxuan Shui
a192bfb130
Replace XSetSelectionOwner with XCB
...
Note that the argument order is different between Xlib and XCB.
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-10-10 10:41:40 +01:00
Uli Schlachter and Yuxuan Shui
0cae42faaa
Replace XDestroyWindow with xcb_destroy_window
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-10-10 10:41:40 +01:00
Uli Schlachter and Yuxuan Shui
e30ff25dd3
Replace XClearArea with xcb_clear_area
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-10-10 10:41:40 +01:00
Uli Schlachter and Yuxuan Shui
28e9488e25
XCBify XCreateGC and XFreeGC
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-10-10 10:41:40 +01:00
Uli Schlachter and Yuxuan Shui
b86190452c
XCBify X{Ung,G}abServer
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-10-10 10:41:40 +01:00
Uli Schlachter and Yuxuan Shui
3c5d7555a4
XCBify X{Unm,M}apWindow
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-10-10 10:41:40 +01:00
Uli Schlachter
385ba2cdf6
Remove unused definition
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-10-02 19:56:47 +02:00
Uli Schlachter
cad786c025
Remove include of X11/Xutil.h
...
It doesn't seem to cause any problems. Perhaps its uses were already
converted to XCB?
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-10-02 19:54:20 +02:00
Uli Schlachter
bc7767e086
Replace Xlib atom constants with XCB ones
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-10-02 19:53:28 +02:00
Uli Schlachter
b2d947a19a
Remove include of Xfixes.h
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-10-02 19:51:37 +02:00
Uli Schlachter
91468c3622
Replace BadRegion with XCB_XFIXES_BAD_REGION
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-10-02 19:51:30 +02:00
Uli Schlachter
7c174cc3b1
Replace XserverRegion with xcb_xfixes_region_t
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-10-02 19:50:27 +02:00
Uli Schlachter
8848676540
Add a function that allocates a pixmap and checks success
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-09-30 09:31:22 +02:00
Uli Schlachter and Yuxuan Shui
aedea014a9
Replace XFixes initialisation with xcb
...
XFixesQueryExtension() does an XFixes QueryVersion request internally,
so one was added here.
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-09-29 17:02:44 +01:00
Uli Schlachter
529306e65f
Convert usage of XCreatePixmap to xcb
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-09-29 12:00:18 +02:00
Uli Schlachter
ea9942b87e
Replace use of XFreePixmap with XCB
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-09-29 11:53:30 +02:00
Uli Schlachter
9dff55540f
Convert Xinerama usage to xcb
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-09-29 11:48:58 +02:00
Uli Schlachter
83a4853419
Convert use of SHAPE extension to XCB
...
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-09-29 11:48:58 +02:00
Uli Schlachter
aa8cb217c8
Fix xcb error ignoring
...
The existing mechanism with set_ignore_next() is (IMHO) ugly and also
does not work with XCB requests. This commit adds a new function
set_ignore_cookie() and fixes callers that were converted to XCB to use
this new function instead.
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-09-29 11:48:58 +02:00
Uli Schlachter
00ae9718ee
Handle asyncronous X11 errors
...
Errors for requests sent via Xlib that expect a reply are handled via
XSetErrorHandler(), which sets up a callback function that Xlib calls.
Errors for requests that do not expect a reply or for errors caused via
unchecked XCB requests show up as events of type 0 in the event handling
function.
Before this commit, errors were ignored here. This commit changes the
code so that the errors are printed instead.
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-09-29 11:48:58 +02:00
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
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
Uli Schlachter and Yuxuan Shui
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
Uli Schlachter and Yuxuan Shui
f8ea3e8668
Don't steal the _NET_WM_CM_Sn selection ( #301 )
...
Before becoming the selection owner for _NET_WM_CM_Sn, compton will now check if
that selection is already owned (which means that another composite manager is
already running). If this check fails, startup will be refused. This behaviour
is required by EWMH / ICCCM.
Because this should catch all composite managers, the error message that was
used before when another manager is already running is reworded to mention that
the other manager does not follow EWMH.
Signed-off-by: Uli Schlachter <psychon@znc.in >
2018-04-16 10:13:55 -04:00