summaryrefslogtreecommitdiff
path: root/src/cairomodule.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/cairomodule.c')
-rw-r--r--src/cairomodule.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/src/cairomodule.c b/src/cairomodule.c
index 386ddab..a83ba49 100644
--- a/src/cairomodule.c
+++ b/src/cairomodule.c
@@ -132,6 +132,11 @@ static Pycairo_CAPI_t CAPI = {
#else
0,
#endif
+#ifdef CAIRO_HAS_XCB_SURFACE
+ &PycairoXCBSurface_Type,
+#else
+ 0,
+#endif
#ifdef CAIRO_HAS_XLIB_SURFACE
&PycairoXlibSurface_Type,
#else
@@ -217,6 +222,10 @@ init_cairo(void)
if (PyType_Ready(&PycairoWin32Surface_Type) < 0)
return;
#endif
+#ifdef CAIRO_HAS_XCB_SURFACE
+ if (PyType_Ready(&PycairoXCBSurface_Type) < 0)
+ return;
+#endif
#ifdef CAIRO_HAS_XLIB_SURFACE
if (PyType_Ready(&PycairoXlibSurface_Type) < 0)
return;
@@ -296,6 +305,12 @@ init_cairo(void)
(PyObject *)&PycairoWin32Surface_Type);
#endif
+#ifdef CAIRO_HAS_XCB_SURFACE
+ Py_INCREF(&PycairoXCBSurface_Type);
+ PyModule_AddObject(m, "XCBSurface",
+ (PyObject *)&PycairoXCBSurface_Type);
+#endif
+
#ifdef CAIRO_HAS_XLIB_SURFACE
Py_INCREF(&PycairoXlibSurface_Type);
PyModule_AddObject(m, "XlibSurface",