aboutsummaryrefslogtreecommitdiffstats
path: root/vncviewer/Viewport.h
diff options
context:
space:
mode:
authorPierre Ossman <ossman@cendio.se>2017-01-02 19:49:52 +0100
committerPierre Ossman <ossman@cendio.se>2017-02-10 17:05:20 +0100
commit3d74d88806d09f3a899be5d8f1df8ec20ed9a14d (patch)
treea2a86607aa8dda47559c5be82fadad9247844193 /vncviewer/Viewport.h
parent403ac27d2377df4fed8bf5039125f6d89aaa6955 (diff)
downloadtigervnc-3d74d88806d09f3a899be5d8f1df8ec20ed9a14d.tar.gz
tigervnc-3d74d88806d09f3a899be5d8f1df8ec20ed9a14d.zip
Render on a temporary surface when needed
Some platforms draw directly to the screen, which means that updates will flicker if we draw multiple layers. Prevent this by first composing the update on a hidden surface.
Diffstat (limited to 'vncviewer/Viewport.h')
-rw-r--r--vncviewer/Viewport.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/vncviewer/Viewport.h b/vncviewer/Viewport.h
index ac1ec338..0967fcbb 100644
--- a/vncviewer/Viewport.h
+++ b/vncviewer/Viewport.h
@@ -29,6 +29,7 @@ class Fl_RGB_Image;
class CConn;
class PlatformPixelBuffer;
+class Surface;
class Viewport : public Fl_Widget {
public:
@@ -46,6 +47,8 @@ public:
void setCursor(int width, int height, const rfb::Point& hotspot,
void* data, void* mask);
+ void draw(Surface* dst);
+
// Fl_Widget callback methods
void draw();