Move preferred encoding tracking into a server object
Having it in ConnParams made the linker pull all the encoder objects
into vncviewer, making it larger than necessary and giving it extra
parameters in its help output that weren't relevant.
diff --git a/common/rfb/SConnection.h b/common/rfb/SConnection.h
index b6ff7cd..7718f4c 100644
--- a/common/rfb/SConnection.h
+++ b/common/rfb/SConnection.h
@@ -70,6 +70,11 @@
void approveConnection(bool accept, const char* reason=0);
+ // Overridden from SMsgHandler
+
+ virtual void setEncodings(int nEncodings, rdr::S32* encodings);
+
+
// Methods to be overridden in a derived class
// versionReceived() indicates that the version number has just been read
@@ -173,6 +178,8 @@
stateEnum state() { return state_; }
+ rdr::S32 getPreferredEncoding() { return preferredEncoding; }
+
protected:
void setState(stateEnum s) { state_ = s; }
void writeFakeColourMap(void);
@@ -194,6 +201,7 @@
SSecurity* ssecurity;
stateEnum state_;
bool reverseConnection;
+ rdr::S32 preferredEncoding;
};
}
#endif