Add alpha blending support to surfaces
diff --git a/vncviewer/Surface_X11.cxx b/vncviewer/Surface_X11.cxx
index e761614..f36976f 100644
--- a/vncviewer/Surface_X11.cxx
+++ b/vncviewer/Surface_X11.cxx
@@ -54,6 +54,23 @@
src_x, src_y, 0, 0, x, y, w, h);
}
+void Surface::blend(int src_x, int src_y, int x, int y, int w, int h)
+{
+ Picture winPict;
+
+ winPict = XRenderCreatePicture(fl_display, fl_window, visFormat, 0, NULL);
+ XRenderComposite(fl_display, PictOpOver, picture, None, winPict,
+ src_x, src_y, 0, 0, x, y, w, h);
+ XRenderFreePicture(fl_display, winPict);
+}
+
+void Surface::blend(Surface* dst, int src_x, int src_y, int x, int y, int w, int h)
+{
+ XRenderComposite(fl_display, PictOpOver, picture, None, dst->picture,
+ src_x, src_y, 0, 0, x, y, w, h);
+}
+
+
void Surface::alloc()
{
XRenderPictFormat* format;