Add project files, to merge from upstream
Update of XposedBridged (not required, but matched source)
Added core-classes, from GravityBox, to avoid error when loading: java.lang.IllegalAccessError: Class ref in pre-verified class resolved to unexpected implementation
(some hardcoded paths for now)

Increased Android version to 4.4
Ignore missing translation Lint error
Add action "switch to previous app"
Prepare to add more actions: Application, KeyCode, Intent
Some rewrite to prepare for more functionality
Multi-key default did not dispatch both keys
Minor cleanup
New (unimplemented) action "application" was not hidden
Reorder code, so down is seen before up
Common.java
* Prepare to remove license check from PhoneWindowManager.java only to Common.java (so no separate paths in PhoneWindowManager.java)
* Commented out some code that did not compile but were unused (for haptic feedback)
* Temporary changes marked //TODO: Temporary
  - This file cannot be compiled by default. These functions seem mostly unused.
  - Debug is enabled by default
  - Pro license temporary unlocked, until 2014-01-31
Removed unused code
Initial commit of key remapping rewrite.
A lot has been changed in PhoneWindowManager.java
Some of the old code is still in this commit, for reference.

Added action SwitchToPrevious app.

Consistent handling of actions:
 * Longpress is detected if keys are pressed for the longpress timeout, cancelled if any key is up.
 * Click is detected if not longpress and no other keys pressed.
 * Double tap detected if keys are pressed twice in sequence. The action is executed when the keys are down (this is different from click).

This adds the possibility to get Longpress detection also for mapped actions. Previously all key codes were mapped to single clicks. The up key event is sent at next up event. If there are no more up events, it is sent immediately.
This means that Single key Click always have immediate up. All other events can get both single click and longpress.

An example, using actions using Menu key where click is mapped to Settings and longpress to Search.

If for example Vol+ is set to Menu, Click will always result in a single click on Menu. Longpress on Vol+ will give Menu with normal Longpress, Search if Vol+ is down for Lonpress*2.
Double tap holding the key at second down will result in a Longpress.

With multi-key setup, for example Vol+-Home, click action is executed if one of the keys is up before longpress timeout. As the Menu up is relayed to the system at the second up, both actions are possible. Similarly can multi long press and double tap give click/longpress.

In general, the key handling is restructured to be more "protocol" handled. Implementation as previously partly in BeforeQueing partly in BeforeDispatching, now only in BeforeQueueing.
There

License handling is now removed from PhoneWindowManager.java, only in Common.java

Major restructuring for key detection and replace.

The default action when adding a new key for double-tap is now default, which means that double click is not monitored. Default for Click/Longpress is to relay the action to other receivers.

Not done:
Gingerbread testing - to be dropped?
Remove code related to "dispatch original event". (commented out in previous commit but some traces still there)
This did not work for multi key events
Removed unneeded code