diff --git a/TODO b/TODO index 2e5ee25..cb5cf92 100644 --- a/TODO +++ b/TODO @@ -2,8 +2,8 @@ immediate: ---------- always undraw cursor after sending updates, but do not mark region as modified. -extra_bytes in rfbDrawCharWithClip. -tested mouse buttons make copy rect, but text is not marked as mod. +add automatic tests (plasma?) +if preferredEncoding is set outside of libvncserver, don't override it. later: ------ @@ -15,74 +15,3 @@ authentification schemes (secure vnc) using Hermes library for fast colour translations. CORBA -done: ------ - -.somehow IRIX does not send updates (but when explicitely asked to) if not hextile -.CoRRE, Hextile encoding!!! Regression!!! -.cursor drawing does not get undone prior to sending -.following two items overridden by RealVNC's idea: if there are too many - rectangles (like >50), just use the bounding box. - cursor drawing: set optional grain to mark bigger rectangles as drawn (else - you end up with thousands of one-pixel-rectangles to encode). - documentation - hint that to mark very tiny regions as - modified is possibly inefficient for the encodings. - (a trail of points could better be a small rectangle). - -.viewonly/full password method -.x11vnc: clipboard, cursor (Karl's work) -.autoconf also CARD8,CARD16,... -.autoconf -.internal HTTP tunnelling feature (needs a special GET target and a few -. changes to java applet). -.x11vnc: sometimes XTest fails (but doesn't with x0rfbserver) -.DeferUpdateTime (timing problems!) -.empty cursor sending doesn't work. -.udp (need an rfbClientPtr udpClient in rfbScreen) - input only; nearly untested (don't have the clients). -.font handling: bpp>1 -.test copyRect and pthreads. -.optionally dont draw rich cursors as xcursors -.cursor smears on IRIX with pthreads, then has bus error. has to be a mutex - problem in cursor routines. -.fix bug in http (java) client with big endian server: byte swapping is broken - (was a cursorshape which was sent too soon; java vncviewer assumes - a rich cursor shape to be always 1 byte per pixel, however, framebuffer - updates before setting the pixel format can be server format) -.rfbConnect, ConnectToTcpAddr -.update to newest TridiaVNC version (1.2.1). -.adapt rdp2vnc (rdesktop) -.pthreads concept: How to iterate over rfbClientPtr's? So that it can be - either called from rfbProcessEvents (which locks the list mutex) - or from the main thread (where the background loop sometimes - locks the list mutex). - - cursor drawing! - - cursor setting! - - rfbMarkRectAsModified - (did that by adding a refcount to clients secured by refCountMutex; - it also was necessary to check for cl->sock<0 in SendUpdateBuf) -.translate.c: warning about non 8-bit colourmaps - 16-bit colourmaps are 192k -> no use without fast net. -.rfbCloseClient -.set colourmap -.support 3 bytes per pixel -.cursors -.cutpaste -.httpd -.other encodings -.test drawing of cursors when not using xcursor or rich cursor encoding -fix bug with odd width (depends on client depth: width has to be multiple of server.bytesPerPixel/client.bytesPerPixel). only raw!! -> bug of vncviewer! -.use sraRegion from Wez instead of miregion, because it is much smaller -. - connection gone and then reconnect is a problem - the reason: there are in fact three threads accessing - the clientPtr: input, output and the application thread. - if you kill the viewer or do rfbCloseClient, all of those - three have to be warned that this is happening. - -> rfbClientConnectionGone can only be called by the outer loop - (with background loop, it is input, else it is processEvents). -. fixed pthreads issues: - cursor deadlock, - CopyRect deadlock. -. when copying a region with modified parts, they were not marked - as modified