Allow hardware overflow key to be show by default.

Currently this is controlled by a system setting, but there is no way to
set a default value for the system setting. This is very useful to have
for devices that have no hardware menu key.

Change-Id: I94212def19d3e2224d79d3a89e1e2d3b2883da21
Framework: Add support to enable/disable Electron Beam (1/2)

Parts were brought over from CM9 but not all of it.  This completes
the port.

Change-Id: I2ab24581ca775ec7af3eecf7e1dcac72c91e3124
Lockscreen : Add custom background overlay

Adds an overlay on top of custom images/colors to better match
stock appearance.

https://jira.cyanogenmod.org/browse/CYAN-1280

Change-Id: I1210d208de912e7f6a1941284f1fe1ff0776ab48
Add missing ACTION_MEDIA_UNMOUNTED intent

When an SD card is removed without the user unmounting, the intent
ACTION_MEDIA_BAD_REMOVAL is fired but is missing the preceeding
ACTION_MEDIA_UNMOUNTED which is needed to keep UI consistency.

Now when bad media removal is detected an ACTION_MEDIA_UNMOUNTED
intent is sent before the ACTION_MEDIA_BAD_REMOVAL.

Change-Id: I133300f42bafab141351e796d7cfc13c15d133e0
SystemUI: NL translation

to complete Dutch translation in TTools

Change-Id: Ib71293dba79c1d3361251cfbc024d7d7b7a620b8
Merge "Framework: Add support to enable/disable Electron Beam (1/2)" into cm-10.1
Pie controls: Fix event handling on chained input filters

Enabling accessibility helpers like "Magnification gestures" while
pie controls are active will result in a system reboot. After this
every input event (touch/key) will cause a system restart directly.

This commit fixes this, by making semantics for
sendInputEvent() with one filter equal to the case where more than
one input filter is installed.

Change-Id: Ie8a319e8c9a63c82c77122332c7d5dd71672cc75
Merge "Pie controls: Fix event handling on chained input filters" into cm-10.1
NavRing : Fix FC on rotate

onAttachToWindow() is not guaranteed to be called prior to the framework
invoking commands on the panel. This patchset moves over initialization
over to onFinishInflate();

Reproduction steps :

1. Activate search panel view (long press home/swipe up from navbar)
2. Rotate device

Change-Id: I37b5b0de180040bdf1b521bcb8fc014b23c238df
Pie controls: Fix flickering nav bar in full screen

On rare occasions the pie service will deadlock. When this
happens, full screen mode can no longer hide the
navigation bar, since it is masked out internally.

This commit switchs from a self cooked mask mechanism within
the WindowManager to the private flag
WindowManager.LayoutParams.PRIVATE_FLAG_FORCE_SHOW_NAV_BAR.

Note that this will avoid flickering when pie service get
stuck in the activation path, but it will not resolve the
deadlock.

Change-Id: I2b64867081b37d9d6070df8086975e4327d97f5d
Pie controls: Catching activation corner cases

As stated before there are still corner cases that may
deadlock pie controls.

This commit makes PieInputFilter respect ACTION_CANCEL,
simplifies monitoring mechanics in PieService and
fixes some corner cases in PieController that allowed that
activations got lost and thus pie controls got stuck.

Test case for PieController:
1) Enable pie controls
2) Enable top/bottom snap position for pie
2) Enable expanded desktop and check if it works
3) Disable expanded desktop
4) Lock your phone
5) Swipe from the top down/bottom up, as if you want to
   activate the pie from that position
6) Dismiss the notification tray and unlock your phone
   again
7) Enable extpanded desktop
8) Pie controls will no longer show up and
   "dumpsys pieservice" will show a active record.

Change-Id: Id9d2df6b2735a743eec2fd1ba809fd72be9474cc
Merge "Allow hardware overflow key to be show by default." into cm-10.1
Merge "Lockscreen : Add custom background overlay" into cm-10.1
Merge "NavRing : Fix FC on rotate" into cm-10.1
Merge "Pie controls: Fix flickering nav bar in full screen" into cm-10.1
Merge "Pie controls: Catching activation corner cases" into cm-10.1
Fix the flipping animation sometimes being played when pulling the quick
settings with two fingers.

Commit c5e8dca7f11d3c085dd1e98692fcc21f1bcc0f6f already tried to fix
this before, but was incomplete (and incorrect). The actual issue is
that on the first pointer down event, a 'peek' animation runs and
expands the notification panel by some pixels (on mako: 160). This
amount of pixels is significantly larger than the handle height (on
mako: 72). Depending on the timing between peek animation and the second
pointer down event, the flip animation would play (if animation already
revealed more than 72 pixels) or not.

Fix that by not playing the flip animation if only peeking, as the
actual panel content is not visible at that point anyway. Also remove
the previous incomplete fix in the process.

Change-Id: I8997dc7b70143940a519f41da29ffd4d738d8d0c
Detect whether overflow button should be shown based on menu key state

Some devices may have hardware keys but not contain a hardware menu key.
Hardware keys are also able to remapped. The overflow button detection logic
currently does not take that into account. This change allows detects
whether any key is capable of emitting the MENU_ACTION keystroke in
order to determine whether the overflow button should be shown or not.

Change-Id: I8699bd0242560314f8eadc54b187c69c992cf875
Merge "Add missing ACTION_MEDIA_UNMOUNTED intent" into cm-10.1
Merge "Fix the flipping animation sometimes being played when pulling the quick settings with two fingers." into cm-10.1