Roundcube Community Forum

SVN Releases => Requests => Topic started by: md3v on August 24, 2011, 11:22:26 PM

Title: Virtual Keyboard
Post by: md3v on August 24, 2011, 11:22:26 PM
I would like to request a solution for implementing a virtual keyboard for the RoundCube login interface. We run all of our RoundCube installations under HTTPS to provide connection security and encryption but a number of users access their webmail from Internet Cafe's and a virtual keyboard will provide them with additional protection against keyloggers.

I found a couple TRAC's regarding this:

#1332933 (Virtual Keyboard - patch included) (http://trac.roundcube.net/ticket/1332933)
#1487448 (Add keyboardInput class to password input field for compatibility with virtual keyboard.) (http://trac.roundcube.net/ticket/1487448)

But the mentioned http://webmail.syn-ack.org/ is no longer online.

I agree this should be a plugin.

Christopher.
Title: Virtual Keyboard
Post by: md3v on August 31, 2011, 08:02:31 AM
I've gone ahead and put together a Virtual Keyboard package for Roundcube 0.5.4, see: Roundcube Virtual Keyboard | m d3velopment (http://www.md3v.com/roundcube-virtual-keyboard)
Title: Virtual Keyboard
Post by: rosali on August 31, 2011, 08:57:16 AM
Why didn't you code it as a plugin? Please provide a patch against default Roundcube.
Title: Virtual Keyboard
Post by: md3v on August 31, 2011, 08:58:53 AM
I'm not a coder. I hacked the solution together. Anyone is welcome pick this up and make a patch.
Title: Virtual Keyboard
Post by: rosali on August 31, 2011, 09:07:28 AM
To port it to a plugin structure shouldn't be too hard. As far as I can see this could be done easily by jQuery (add class "keyboardInput" to "_pass" field, include "keyboard.js" and "keyboard.css").
Title: Virtual Keyboard
Post by: rosali on September 01, 2011, 03:55:11 AM
This hack is now available as plugin.

It is skinable and supports localization. There is a glitch regarding automatic language association. The javascript stuff does not use standard language abbreviations. Maybe I'll adjust this later, but it would need a hack in the third party javascript stuff (I hate hacks making futures updates complicated).

Usage:
(*) Copy 'vkeyboard' into plugins folder
(*) Register in main.inc.php "plugins" array.
(*) Done

Download:

http://svn.mail4us.net/plugins/vkeyboard.zip

The above link will not be alive permanently. I'll bundle the plugin with next MyRoundcube plugins release.

@ Original author: If you want to host the plugin version yourself, just let me know.

EDIT: As you can see it is no magic to use Roundcube's powerful Plugin API instead of hacking around in the source code, which makes it hard to implement and maintain it.