Pierre Ossman
66f1db543b
Clean up internal clipboard handling
We now filter incoming data, which means we can start assuming the
clipboard data is always null terminated. This allows us to clean
up a lot of the internal handling.
преди 5 години
Pierre Ossman
546b2ad80a
Make sure clipboard uses \n line endings
This is required by the protocol so we should make sure it is
enforced. We are tolerant of clients that violate this though and
convert incoming clipboard data.
преди 5 години
Pierre Ossman
1143ee66e4
Use STL list for encoding list
This is a lot safer and cleaner. The old code had a fixed size that
we didn't properly keep track of.
преди 6 години
Pierre Ossman
9672835662
Make arguments explicit in all message writer methods
Make sure all methods only write what is given as arguments, and
avoid side effects by getting data from parameter objects. This keeps
things readable in the calling code.
преди 6 години
Pierre Ossman
b14a6bc1aa
Split out ServerParams from ConnParams
We need to track different things in the server and client, so
separate things to two independent structures to keep things more
clear.
преди 6 години
Pierre Ossman
9312b0e3e1
Encapsulate screen layout storage in ConnParams
Avoid direct access to the screen dimensions and layout so that we
can make sure it stays sane. This also makes sure the layout is
properly updated when we only get the screen dimensions from the
server.
преди 6 години
Pierre Ossman
59da99f650
Stop abusing InputHandler class for write class
The handler is for incoming data and we should not be abusing that
class for the writer class. Do proper write prototypes for the
relevant functions.
преди 8 години
Pierre Ossman
a00a87db4f
Fix wrong argument for CMsgWriter::clientCutText()
As a result we weren't overloading properly.
преди 7 години
Pierre Ossman
5ae282135f
Basic support for QEMU Extended Key Events
This adds the basic infrastructure and handshake for the QEMU
Extended Key Events extension. No viewer or server makes use of
the extra functionality yet though.
преди 7 години
Pierre Ossman
2fa63f8576
Add client support for LED state sync
преди 7 години
Pierre Ossman
a8ecb793b2
Send cursor pseudo-encodings in order of preference
Some servers respect the ordering of pseudo-encodings as well, so
make sure we list the best one first.
преди 6 години
Steve Kondik
ff69074635
rfb: Fix inheritance in CMsgWriter
InputHandler declares the second parameter of clientCutText
as an int.
Fixes:
/home/shade/dev/tigervnc/common/rfb/CMsgWriter.h:60:18: error: 'rfb::CMsgWriter::clientCutText' hides overloaded virtual function [-Werror,-Woverloaded-virtual]
virtual void clientCutText(const char* str, rdr::U32 len);
^
/home/shade/dev/tigervnc/common/rfb/InputHandler.h:36:18: note: hidden overloaded virtual function 'rfb::InputHandler::clientCutText' declared here: type mismatch at 2nd parameter ('int' vs 'rdr::U32' (aka 'unsigned int'))
virtual void clientCutText(const char* str, int len) {}
^
преди 7 години
Pierre Ossman
a4c0aac639
Client support for cursors with full alpha
преди 7 години
Pierre Ossman
6b68f97788
Client support for X Cursor
преди 7 години
Pierre Ossman
d704e4ae77
Handle CopyRect like any other encoding
Avoids having to special case things. Keeps the code simpler.
преди 10 години
Pierre Ossman
7638e9c5b1
Merge the "V3" message classes into the normal ones
We have no need for this abstraction so let's keep things simple.
преди 10 години
Pierre Ossman
a22459d356
Remove magic JPEG variables from ConnParams
Custom compression level and JPEG on/off are not inherent parts of
the protocol negotiation so they do not belong in ConnParams. Let the
UI frontend handle such things instead.
преди 10 години
Pierre Ossman
316a32498b
Get rid of the register mechanism for encoders and decoders
We have no use for it, so let's keep things simple.
преди 10 години
Pierre Ossman
c898d9af83
Basic infrastructure for continuous updates.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4801 3789f03b-4d11-0410-bbf8-ca57d06f2519
преди 12 години
Pierre Ossman
c754cceeca
Basic infrastructure to support fences.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@4798 3789f03b-4d11-0410-bbf8-ca57d06f2519
преди 12 години
Pierre Ossman
49f8822a8f
Minimal client side support for the extended desktop size protocol.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@3699 3789f03b-4d11-0410-bbf8-ca57d06f2519
преди 15 години
Pierre Ossman
090e7d6fb3
Make sure we list fallback encodings in a preferable order.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@3661 3789f03b-4d11-0410-bbf8-ca57d06f2519
преди 15 години
Pierre Ossman
3d2ccc4b63
The quality setting goes from 0 to 9, not 1 to 9.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@3659 3789f03b-4d11-0410-bbf8-ca57d06f2519
преди 15 години
Adam Tkac
acf6c6b9ac
[Bugfix] Use rdr::U32 type for length of strings handled by *CutText functions.
This avoids big buffer overflow when memcpy is called with "-1" argument.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@3607 3789f03b-4d11-0410-bbf8-ca57d06f2519
преди 15 години
Peter Åstrand
c39e078968
Implemented support for DesktopName pseudo encoding, which allows
updating the desktop name on the fly.
Tested in ThinLinc since 2008-01-07.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@3549 3789f03b-4d11-0410-bbf8-ca57d06f2519
преди 15 години
Constantin Kaplinsky
a2adc8d4cf
Migrating to new directory structure adopted from the RealVNC's source tree. More changes will follow.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@589 3789f03b-4d11-0410-bbf8-ca57d06f2519
преди 18 години
Constantin Kaplinsky
de179d4ed7
The "rfb" library merged with VNC 4.1.1 code.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/branches/merge-with-vnc-4.1.1@522 3789f03b-4d11-0410-bbf8-ca57d06f2519
преди 18 години
Peter Åstrand
2dd021bb81
Lowest JPEG quality should be 1.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@61 3789f03b-4d11-0410-bbf8-ca57d06f2519
преди 19 години
Peter Åstrand
365427ae87
Added options CompressLevel and CustomCompressLevel
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@58 3789f03b-4d11-0410-bbf8-ca57d06f2519
преди 19 години
Peter Åstrand
ed9d4ae46e
Added command line option -QualityLevel
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@21 3789f03b-4d11-0410-bbf8-ca57d06f2519
преди 19 години
Peter Åstrand
a6bb770435
JPEG decompression support
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@20 3789f03b-4d11-0410-bbf8-ca57d06f2519
преди 19 години
Peter Åstrand
462753d02c
Added basic almost-functional Tight support, from tightrealvnc project. Decoder only.
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@14 3789f03b-4d11-0410-bbf8-ca57d06f2519
преди 19 години
Constantin Kaplinsky
47ed8d321c
Initial revision
git-svn-id: svn://svn.code.sf.net/p/tigervnc/code/trunk@2 3789f03b-4d11-0410-bbf8-ca57d06f2519
преди 19 години