Merge Navigation Bar and Pie Controls button config (1/2)

Based on the commit series for pie controls, this commit
makes the Navigation Bar and Pie Controls share
the same button layout. However, there is no button layout
editor for pie controls, which makes the navigation bar
the leading entity when it comes to button layouts.

This commit introduces:
* A common notion of navigation buttons used in CyanogenMod.
  (class NavigationButtons)
* Some setting constants changes to avoid clashes with PA.
* Removal of the pie search key, since it is no longer needed.
* Sophisticated key event injection.
* Virtual key sound effect

Change-Id: Id68f8d0b597d7d89c55c3f66f994e632d014f006
Merge "Merge Navigation Bar and Pie Controls button config (1/2)" into cm-10.1
SettingsProvider: Initialize defaults for CM features

Add configuration defaults for:
- status bar notification count
- QuickSettings quick pulldown
- lockscreen targets

Change-Id: Ief4b97fcceea7e351a13d59136a2fb1823d97b04
SystemUI: Fix build warnings

Change-Id: I3493428eb5192bf39b31bf8a5c66406660af1aca
Merge "SettingsProvider: Initialize defaults for CM features" into cm-10.1
SystemUI: Update German translation

Patch Set 1:    * add strings for pie controls

Patch Set 2:    * move strings to right place
                * add strings for expanded desktop QS tile

Patch Set 3-5:  * remove comma

Patch Set 6:    * add some more missing strings

Change-Id: I0e37edf57b84b0dd267d9dfcba3b4704af75b0c5
Fix race condition in backlight adjustment.

When configuring the automatic backlight levels, there's a race
condition in setting the lux and brightness settings as the settings
provider doesn't allow storing multiple settings atomically. When
deleting rows, there's quite a high chance of DisplayPowerController
picking up a state where the lux values already have the lower number of
rows, but the brightness values do not, effectively leading to an
ArrayIndexOutOfBoundsException.

Fix that by
- waiting a second of cool-down time until applying the settings and
- adding a sanity check for the very unlikely case that the delay
  between writing both values is > 1 second

Change-Id: I44e41530fc5334aaefc4ab7d3a90542f78fabe0c
JIRA:CYAN-755
LockPatternUtils: isSecure: respect profile settings

When the lock screen is set to secure and overridden to insecure
by profile settings, isSecure() would return true causing confusion
to some code.

For example, attempting to use a lockscreen shortcut
to launch an activity will cause the device to soft-reboot due to
recursive calling and a stack overflow.

Change-Id: I02984671c2a047765f4da1f6a44bb19dea5bf2d3
Profile: respect DPM when overriding screen lock (1/2)

Profile currently allows the user to override the keyguard set by
device policy, which is undesired.

Change-Id: Id8d80cfdad51ca0a64dc231a77e53b104ecb9825
QS: Add dock battery tile (1/2)

Add a dinamic tile for devices with dock battery

Patchset 2: New icon set
            Rebased

Change-Id: I5e0e84da0b0f248fa9eb568c5d506b00cf3998b0
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
Merge "LockPatternUtils: isSecure: respect profile settings" into cm-10.1
Merge "Profile: respect DPM when overriding screen lock (1/2)" into cm-10.1
SystemUI: Add Expanded desktop tile to QuickSettings (2/2)

    * Patch Set 1: initial commit
    * Patch Set 2: change tile title
    * Patch Set 3: change tile title again
    * Patch Set 4: updated to suggested drawable by blunden
    * Patch Set 5: update drawables to fit to the bahavior of
                   the other icons used in QS
    * Patch Set 6: rebase
                   only display tile if feature is enabled
    * Patch Set 7: launch the proper long press activity
    * Patch Set 8: correctly hide tiles if ED or profiles are turned off
		   style fixes

Change-Id: I2273f8f0bdb726ec34f00a6fb205b1bc6e795cfa
Merge "Fix race condition in backlight adjustment." into cm-10.1
Merge "SystemUI: Update German translation" into cm-10.1
Merge remote-tracking branch 'upstream/cm-10.1' into cm-10.1