[Vpn-help] windows client: tray icon functionality

Matthew Grooms mgrooms at shrew.net
Wed Dec 12 14:37:50 CST 2007


Thorsten Albrecht wrote:
> Hi,
> is there any chance to extend the functionality of the tray icon
> (to initiate a connection or to show a current connection)? The current
> connection window is quite uncomfortable (e.g. closing the
> window by accident just closes the current connection). It would be nice to
> control everything via the system tray.
> 
> Thorsten
> 

Thorsten,

Thanks for the suggestion. The problem is that the VPN Access Manager 
and VPN Connect windows are currently two separate executables. The 
system tray icon is a part of the VPN Access Manager which has nothing 
to do with communicating with the IKE daemon, which in turn, handles 
communication with a distant peer. This was a conscience design decision 
made at when I began the VPN client development and was driven by a few 
important goals ...

1) Complete process separation
2) Only one Site Manager window open at any point in time
3) Multiple simultaneous VPN connections
4) Ability to launch lightweight VPN connections as a shortcut

This also has some drawbacks. The Site Manager applications don't really 
know what the connection application instances are doing. They could be 
taught to communicate but this would require an IPC mechanism to be 
built so the Access Manager could send control messages to connection 
instances and status messages could be sent back the other direction. 
Not a simple matter. What complicates this issue is that the GUI 
applications on windows are based on a completely different code base 
than the unix version of the client. IPC communications are very 
different on both windows and unix so now we have a not so simple matter 
x2 to deal with. I do plan to move to using QT for all platforms in the 
future, including Mac OSX, but this is an even less trivial change to 
make at present.

So, I would like to make the GUI components more comfortable to use but 
am currently constrained to making only minor modifications to the user 
interface code. Here are some ideas ...

Would it help if the connection window only minimized instead of closing 
when the title bar button is pressed? I don't know if its possible, but 
I could try to find a way to build the window with a single title bar 
button that minimizes the connection window instead of terminating the 
process.

Would it help if the connection window automatically minimized to a 
system tray icon immediately after the connection succeeds? If so, this 
will definitely be an option in the next release. I just haven't got to 
that item on the todo list yet :)

http://www.shrew.net/vpn/todo.php

Thanks,

-Matthew



More information about the vpn-help mailing list