summaryrefslogtreecommitdiff
path: root/src/xcb.h
AgeCommit message (Collapse)Author
2013-12-14Revert "Remove xcb_ge_event_t from xcb.h"Uli Schlachter
This reverts commit f4d5b84800f960831e4fbb3ad9848bbb701020be. The version of this struct that the code generator produces breaks the API, because it gives the fields different (albeit better) names. Thus, we need to restore the old version of this struct. Additionally to the revert, this struct is documented as being deprecated. The replacement was added to xcb-proto. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=71502 Signed-off-by: Uli Schlachter <psychon@znc.in> Signed-off-by: Julien Cristau <jcristau@debian.org>
2013-11-07Add event queue splittingKeith Packard
This allows apps to peel off certain XGE events into separate queues for custom handling. Designed to support the Present extension Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-By: Uli Schlachter <psychon@znc.in>
2013-11-07Add xcb_send_fd APIKeith Packard
This uses sendmsg to transmit file descriptors from the application to the X server Signed-off-by: Keith Packard <keithp@keithp.com> Reviewed-By: Uli Schlachter <psychon@znc.in>
2013-11-07Remove xcb_ge_event_t from xcb.hKeith Packard
xcb proto now publishes this structure from an XML description Signed-off-by: Keith Packard <keithp@keithp.com>
2013-09-08Fix documentation of xcb_poll_for_event()Uli Schlachter
In commit 8eba8690adac2, the API documentation for xcb_poll_for_event() was fixed to remove an argument that was previously removed in commit 34168ab549. However, that commit only removed the first line of the documentation, leaving behind a spurious half-sentence. That commit happened seven years ago and now finally someone noticed... Thanks to Benjamin Herr for reporting this on IRC. v2: Thanks again to Benjamin Herr for noticing that my commit message blamed the wrong commit. Signed-off-by: Uli Schlachter <psychon@znc.in>
2012-08-29Return connection failure if display string specifies non-existent screenAlan Coopersmith
Matches the behaviour of Xlib - if you set DISPLAY to :0.1 but only have one screen, closes connection and returns error. This introduces a new connection error code: XCB_CONN_CLOSED_INVALID_SCREEN Signed-off-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com> Reviewed-by: Jeremy Huddleston Sequoia <jeremyhu@apple.com> Reviewed-by: Josh Triplett <josh@joshtriplett.org>
2012-08-25Fix "sppported" typo in doxygen comment for XCB_CONN_CLOSED_EXT_NOTSUPPORTEDAlan Coopersmith
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
2012-01-11Added more error states and removed global error_connectionArvind Umrao
Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=41443 Fixes: https://bugs.freedesktop.org/show_bug.cgi?id=42304 I have added more xcb connection error states at xcb.h header. Also I have removed global error_connection variable, and added an interface that returns connection error state. TBD: I will segregate errors states in a separate header file and try to provide more precise error states, in future. Also I will give patch for libX11, in that patch xcb_connection_t::has_error will be passed to default io handler of libX11. This value can then be used for displaying error messages. Reviewed-by: Rami Ylimäki <rami.ylimaki@vincit.fi> Reviewed-by: Uli Schlachter <psychon@znc.in> Signed-off-by: Arvind Umrao <arvind.umrao@oracle.com>
2011-04-12Revert "Introduce xcb_wait_for_event_until, for consuming responses in ↵Jamey Sharp
wire-order." This function was intended to allow libX11 to fix a multi-threaded hang, but the corresponding libX11 patch caused single-threaded apps to spin sometimes. Since I've retracted that patch, this patch has no users and shouldn't go into a release unless/until that changes. This reverts commit 2415c11dec5e5adb0c17f98aa52fbb371a4f8f23. Conflicts: src/xcb.h src/xcb_in.c Signed-off-by: Jamey Sharp <jamey@minilop.net>
2011-04-12Introduce a variant of xcb_poll_for_event for examining event queue.Rami Ylimäki
In some circumstances using xcb_poll_for_event is suboptimal because it checks the connection for new events. This may lead to a lot of failed nonblocking read system calls. Signed-off-by: Rami Ylimäki <rami.ylimaki@vincit.fi> Signed-off-by: Jamey Sharp <jamey@minilop.net>
2011-03-18Introduce xcb_wait_for_event_until, for consuming responses in wire-order.Jamey Sharp
Signed-off-by: Jamey Sharp <jamey@minilop.net> Reviewed-by: Josh Triplett <josh@freedesktop.org>
2010-03-29windefs.h is now called xcb_windefs.h - changed all includes to reflect ↵Jeetu Golani
that.Replaced one instance ofWIN32 with _WIN32 in each xcb_in.c and xcb_conn.c
2010-03-26Win32 code for xcb-1.5Jeetu Golani
2010-02-11Support xcb_discard_replyPeter Harris
This function is useful for dynamic language garbage collectors. Frequently a GC cycle may run before you want to block wainting for a reply. This function is also marginally useful for libxcb apps that issue speculative requests (eg. xlsclients). Reviewed-by: Jamey Sharp <jamey@minilop.net> Tested-by: Eamon Walsh <efw@eamonwalsh.com> Signed-off-by: Peter Harris <pharris@opentext.com>
2009-07-15Add majorCode, minorCode and resourceID fields to X generic errorArnaud Fontaine
2008-05-21Add xcb_ge_event_t and handling for long events.Peter Hutterer
GenericEvent can be more than 32 bytes long. Ensure that the required data is pulled off the wire and tack it onto the event. Due to the structure of the xcb_generic_event_t, the data is appended AFTER the full_sequence field.
2006-11-18Provide xcb_prefetch_maximum_request_length counterpart to ↵Jamey Sharp
xcb_get_maximum_request_length.
2006-10-20fix doxy docTORRI Vincent
2006-10-07Document xcb_generate_id.Ian Osgood
2006-10-07Move xcb_generate_id from xcbext.h to xcb.hJosh Triplett
Since extensions no longer provide type-specific XID-generation functions, xcb_generate_id now forms part of the xcb client API, rather than the extension API; move it from xcbext.h to xcb.h accordingly.
2006-10-06Remove the 'int *error' out-parameter for xcb_poll_for_event.Jamey Sharp
2006-09-23More fixups for incorrect API conversions by api_conv.plJosh Triplett
2006-09-23Fix some mis-conversions by api_conv.pl, and remove the now-unused Xmd typesJosh Triplett
2006-09-23The Great XCB RenamingJosh Triplett
Rename API to follow a new naming convention: * XCB_CONSTANTS_UPPERCASE_WITH_UNDERSCORES * xcb_functions_lowercase_with_underscores * xcb_types_lowercase_with_underscores_and_suffix_t * expand all abbreviations like "req", "rep", and "iter" Word boundaries for the names in the protocol descriptions fall: * Wherever the protocol descriptions already have an underscore * Between a lowercase letter and a subsequent uppercase letter * Before the last uppercase letter in a string of uppercase letters followed by a lowercase letter (such as in LSBFirst between LSB and First) * Before and after a string of digits (with exceptions for sized types like xcb_char2b_t and xcb_glx_float32_t to match the stdint.h convention) Also fix up some particular naming issues: * Rename shape_op and shape_kind to drop the "shape_" prefix, since otherwise these types end up as xcb_shape_shape_{op,kind}_t. * Remove leading underscores from enums in the GLX protocol description, previously needed to ensure a word separator, but now redundant. This renaming breaks code written for the previous API naming convention. The scripts in XCB's tools directory will convert code written for the old API to use the new API; they work well enough that we used them to convert the non-program-generated code in XCB, and when run on the old program-generated code, they almost exactly reproduce the new program-generated code (modulo whitespace and bugs in the old code generator). Authors: Vincent Torri, Thomas Hunger, Josh Triplett
2006-09-21Provide a "has error" property for XCBConnection.Jamey Sharp
2006-09-12Remove deprecated public API functions in preparation for 1.0 release. ↵Jamey Sharp
Xlib-specific deprecation remains.
2006-07-30Add XCBRequestCheck function needed for Plan 7.Josh Triplett
2006-07-25Replace HAVE_* tests with just checking for (__solaris__)Eric Anholt
The installed headers can't be relying on the presence of the internal config.h defines, and it was breaking the xcb build for me as well due to config.h not being included early enough.
2006-07-07Fix build on Solaris (use inttypes.h)Ian Osgood
2006-07-01Finally remove X.h from xcb.h, fix broken image tests.Ian Osgood
2006-06-15Remove arbitrary division between xcb_types and xproto by mergingJosh Triplett
xcb_types.xml into xproto.xml.
2006-06-08fix compilation with c++ compilers. Remove some trailing spacesTORRI Vincent
2006-05-30Deprecate XCBSync, move to XCBAuxSync.Ian Osgood
2006-04-28Move the remainder of the constants in X.h into XML enumerations.Ian Osgood
Fix xcb_auth to use one of the new enumerations.
2006-04-27Fix a comment for the renaming of XCBConnSetupSuccessRep to XCBSetup, and ↵Josh Triplett
fix another comment which had a copy-paste error.
2006-04-26Rename ConnSetup* to Setup*, Setup*Rep to Setup*, and SetupSuccess* to ↵Jamey Sharp
Setup*. Provide deprecated backwards-compatability functions and typedefs for the old names, to be removed before 1.0.
2006-04-19Add XCBPollForReply and deprecate XCBGetRequestRead and XCBGetQueuedRequestRead.Jamey Sharp
2006-03-16The typedefs replacing Xmd.h conflict with Xmd.h. Here is a hacky ↵Jamey Sharp
workaround: FIXME!
2006-03-15Remove proto/X11 dependencies from xcb-demo.Ian Osgood
2006-03-14Remove xcb-util dependency on proto/X11Ian Osgood
by moving many defs from X.h to <enum>s in xproto.xml
2006-03-14doxygen documentation of the APITORRI Vincent
2006-03-13Remove dependencies on Xmd.h and X.hIan Osgood
(Still including X.h until defs are moved to xproto.xml and xcb-util and xcb-demo are fixed to use them.)
2006-03-11Portability fixes. Should help DragonFly and Solaris, and should not hurt ↵Jamey Sharp
anything else. Tested only on linux so far though.
2006-03-03Add 32-bit full_sequence fields to generic errors and events, so callers can ↵Jamey Sharp
always correlate events and errors with requests correctly.
2006-02-18Remove xcl and CVSROOT.Josh Triplett