aboutsummaryrefslogtreecommitdiffstats
path: root/common/rfb
diff options
context:
space:
mode:
authorPierre Ossman <ossman@cendio.se>2015-11-12 12:20:05 +0100
committerPierre Ossman <ossman@cendio.se>2015-11-27 11:06:59 +0100
commit3da238dee89906d952487fbe0d138dac1f5df3ea (patch)
tree9a5d1ac268bceaa3539f54671ea2e093414875a9 /common/rfb
parent687d52c9afa5b2d7c0b677eb3a27b2a550742d11 (diff)
downloadtigervnc-3da238dee89906d952487fbe0d138dac1f5df3ea.tar.gz
tigervnc-3da238dee89906d952487fbe0d138dac1f5df3ea.zip
Let CConnection intercept more callbacks
We need more callbacks for correct operation of multi-threaded rect decoding.
Diffstat (limited to 'common/rfb')
-rw-r--r--common/rfb/CConnection.cxx23
-rw-r--r--common/rfb/CConnection.h9
2 files changed, 32 insertions, 0 deletions
diff --git a/common/rfb/CConnection.cxx b/common/rfb/CConnection.cxx
index 49b8a82c..2ddfc330 100644
--- a/common/rfb/CConnection.cxx
+++ b/common/rfb/CConnection.cxx
@@ -301,6 +301,29 @@ void CConnection::securityCompleted()
writer_->writeClientInit(shared);
}
+void CConnection::setDesktopSize(int w, int h)
+{
+ CMsgHandler::setDesktopSize(w,h);
+}
+
+void CConnection::setExtendedDesktopSize(unsigned reason,
+ unsigned result,
+ int w, int h,
+ const ScreenSet& layout)
+{
+ CMsgHandler::setExtendedDesktopSize(reason, result, w, h, layout);
+}
+
+void CConnection::framebufferUpdateStart()
+{
+ CMsgHandler::framebufferUpdateStart();
+}
+
+void CConnection::framebufferUpdateEnd()
+{
+ CMsgHandler::framebufferUpdateEnd();
+}
+
void CConnection::dataRect(const Rect& r, int encoding)
{
decoder.decodeRect(r, encoding, framebuffer);
diff --git a/common/rfb/CConnection.h b/common/rfb/CConnection.h
index 7f8dbea0..6bc7a389 100644
--- a/common/rfb/CConnection.h
+++ b/common/rfb/CConnection.h
@@ -92,6 +92,15 @@ namespace rfb {
// Methods overridden from CMsgHandler
+ // Note: These must be called by any deriving classes
+
+ virtual void setDesktopSize(int w, int h);
+ virtual void setExtendedDesktopSize(unsigned reason, unsigned result,
+ int w, int h,
+ const ScreenSet& layout);
+
+ virtual void framebufferUpdateStart();
+ virtual void framebufferUpdateEnd();
virtual void dataRect(const Rect& r, int encoding);