Thursday 28 January 2016

KP2A plugin migration

InputStick Plugin for KP2A is now published on Google Play on "InputStick" developer account. This will allow for more frequent and faster updates. Current release of the plugin (published by "Croco Apps") will no longer be updated and will soon be removed from Google Play store. At this moment both releases offer the same functionality, but it is highly recommended to migrate to the new release as soon as possible.

How to migrate:

  1. Download new release from Google Play store. Alternatively for can download .apk file. Source code is available on GitHub.
  2. Run new app. It will ask you to remove old version of the plugin (to avoid duplicated actions in Keepass2Android).
  3. Remember to configure new app ("Configure as plugin", set keyboard layout, etc.).

More details:

InputStick Plugin for KP2A was initially developed by the author of Keepass2Android application - Philipp Crocoll (Croco Apps). Soon after it was released on Google Play, I took over further development of the plugin. In order to release an update on Google Play, I had to send it first to Philipp, so that he can sign it with his certificate and then publish on Play store. Releasing the plugin on my developers account (InputStick) will allow for more frequent and faster updates. Small changes should no longer pile up for "big" updates.
At this moment migration to the new release should be relatively easy and will take just a few minutes. Now that it is possible to assign a custom macro for each entry in KP2A database, I believe is the last moment when such migration can be done in a way relatively painless for the users.

Philipp will soon release update which will ask users to migrate to a new release. After some time, InputStick plugin will be removed from "Croco Apps" account, just to avoid confusion.

What's new in the latest version:

Clipboard/Google Authenticator support:

It is now possible to type text from system clipboard - once activated, any text that is copied to clipboard will be typed using InputStick. Please note that any text that is already present in the clipboard at the moment of activation will not be typed. Typing from clipboard is auto-disabled after text is typed or after 30 seconds passes since activation. By default Google Authenticator app is launched when this option is selected, but this can be disabled in settings. You can also enable option to automatically add enter key after text is typed. Usage example:
  1. Select Clipboard/Authenticator option.
  2. Google Authenticator is automatically launched (can be disabled)
  3. Select account in the Authenticator app (long press).
  4. Choose '"copy to clipboard" option.
  5. One-time password is not typed using InputStick.
  6. (optionally) Enter key is pressed.
Copy code to clipboard to type it using InputStick.


You can now create a macro for each entry. Macros can be used to automatize login procedures. For example:
  1. Type URL field.
  2. Press Enter key (you should skip this step if Enter key is automatically sent after typing URL).
  3. Type user name field.
  4. Press Tab key.
  5. Type password field. 
  6. Press Enter key.
 There are two execution modes for macros:
  • Manual execution: each step must be manually confirmed (by pressing "Execute" button). You can also skip a step if necessary. It is recommended to use this mode for web accounts.
  • Background execution: all actions will be automatically executed one after another, without displaying any interface. Be EXTREMELY careful when using this mode: after running such macro there is no way to stop the execution, until all steps are completed! Also, when using this mode it will most likely be necessary to add additional delays between actions (for example to make sure that your PC has enough time to load webpage or launch application). This mode can be used when running command line tools.
You can save a macro as template in order to assign it to any other Keepass entry that requires the same order of actions. There are 5 template slots available.

Note: plugin does NOT save any field data. Values of %user, %pass and %url actions are substituted at runtime from currently opened entry.

Macro editor.

Manual macro execution.

Macro templates.

"Show all actions" action:

You can now access any action without having to enable it in settings first. It is no longer necessary to display rarely used actions in "entry" menu.

Now every action can be accessed with just 3 clicks.

Setup Wizard:

When application is launched for the very first time, you must go through setup wizard, which will make sure that the plugin is properly configured. Setup wizard will ask you to:
  • remove previous release (if installed),
  • install InputStickUtility (if not already installed),
  • install Keepass2Android (if not already installed),
  • enable the plugin in Keepass2Android,
  • select keyboard layout (you can also test it at this point),
  • it will also display some basic information showing how to use the plugin.

Setup Wizard will make sure the everything is properly configured.

Select and test keyboard layout.

Other changes:

  • UI options are now grouped into 5 groups (instead of individual checkboxes): "General actions", "Entry actions" and "Field actions" (separately for primary and secondary keyboard layouts). 
  • Added "Connect" and "Disconnect" actions - it is now possible to manually manage InputStick connection if necessary.
  • Masked password - starting index is now 1 instead of 0.
  • Uses updated InputStick API.
  • Fixed Swedish keyboard layout bug.
  • Should now work properly with 10inch and larger devices.