Title KRDC (KDE Remote Desktop Connection) - UI Redesign and overall revamp
Student Urs Wolfer
Mentor Bradley John Hards
Abstract
== Project Need ==

KRDC is a KDE client tool for connecting to remote desktop servers. KRDC
supports two protocols, VNC and RDP. In KDE trunk (KDE 4), KRDC is not
functional. It needs some serious love.

The user interface is not very well integrated into the KDE desktop
and could be greatly improved. For example, a tabbed user interface
(see http://bugs.kde.org/136049) would offer substantial benefits to
network administrators who often manage more than a single server at
one time. A tabbed GUI could also bring some additional benefits, such
as a bookmark for remote servers.

In addition to user interface improvements, the implementation of the
two supported protocols could be better, with significant work
required for VNC. The tightvnc library, which is used for the VNC
implementation, is approximately five years behind the upstream
source. The RDP implementation, which is based on an external
runtime dependency on rdesktop, supports very few of the rdesktop
options.

KRDC has not had a real maintainer for several years; and this has
resulted in KRDC has a lot of open bug reports and feature wishes on
http://bugs.kde.org. This needs to change. KRDC is an application that
belongs into a desktop environment, and is a key feature for medium to
large installations.


== Key Points ==

* rewrite the whole userinterface in a modern way and integrate it better
  (-> UI redesign, tabbed UI)
* bring external dependencies up to date and integrate them better
* resolve issues (bugs/feature requests) listed on http://bugs.kde.org
* future maintainership of KRDC


== Benefits of the Project ==

KRDC would get better integrated into a KDE desktop. That means not
just a cleaner and nicer look, but also better usability. A lot of
issues would be resolved and potential new issues could be
prevented. The KDE desktop would become more attractive for a network
administrator, but also for a home user who needs to manage a home
machine from school or work. The application would have a maintainer.