Bug 4139 - vncviewer for android
Summary: vncviewer for android
Status: NEW
Alias: None
Product: ThinLinc
Classification: Unclassified
Component: VNC (show other bugs)
Version: 3.2.0
Hardware: PC Other
: P2 Enhancement
Target Milestone: LowPrio
Assignee: Henrik Andersson
Depends on: 4138
Blocks: 4141
  Show dependency treegraph
Reported: 2012-01-16 13:58 CET by Pierre Ossman
Modified: 2020-04-07 12:54 CEST (History)
0 users

See Also:
Acceptance Criteria:


Description Pierre Ossman cendio 2012-01-16 13:58:52 CET
We should create a native vncviewer for android, based on the TigerVNC Java applet. We should also investigate if we can have libjpeg-turbo as a JNI for performance.

It was discussed to create a client using TigerVNC's C++ code and then have a Java frontend, but we rejected that idea as we believe a pure Java one will get better community uptake. The downside now is of course that we have multiple implementations of the RFB code.
Comment 1 Pierre Ossman cendio 2012-01-17 10:26:47 CET
Time est. should be done now.
Comment 2 Henrik Andersson cendio 2012-01-24 15:05:00 CET
Current tigervnc packages:

this is a zlib implementation and quick search among
android opensource project shows that it is used here
and there... imports java.io

implements general I/O streams for communication, this 
imports and uses jcraft jzlib

implements the core of tigervnc, some parts needs vncviewer
such as the upper-password-getter callback, this should be
refactored so its set into tigervnc core from the vncviewer
then the way around.

this packages depends on awt which doesn't exists in the 
android java framework, so alot of time will be refactoring
to remove awt dependencies from this package, this should
also be done in a favor to work with both the standard java
vncviewer and the android version.

the aim is to get rfb package to share as much code as possible
between the orginal java client and android client.

Imlpements the tigervnc viewer, depends on awt and swing which
is not available on Android so the shortest approach taken here 
which also affect time est. is to rewrite a new vncviewer for
the android application, built out of 2 views.
Some parts of vncviewer holds configuration parts which is 
accessible from com.tigervnc.rfb, this should be refactored into
tiger vnc core to make vncviewer as clean as possible.

First view is the connection dialog which which allows input of
servername, user and password.

Second view is the surface view which will act as consumer of 
pixelbuffer for rendering and event producer for user inputs 
such as keyboard and touchscreen.

Note You need to log in before you can comment on or make changes to this bug.