fw: media: Handle NPE due to threading race

Change-Id: I6eab5bc3d687edfa6f0839e439b3314bed4fdcea
Temporarily hide lock screen unlock targets if opening a widget

If the user selects a widget to open, it's very unlikely that they would
want to use any of the slider shortcuts at that moment. Make it easier
to unlock the screen and open the desired widget by temporarily hiding
other targets.

Change-Id: I51d879cc77826e4f7235c5d35b6352e5e83bb7cf
Navigation bar dimensions (2/2)

- Change height when in portrait
- Change width when in landscape
- Option to enable or disable nav bar

additional options

- Ability to disable hardware keys via nav bar settings
- Add android:key in hardware keys enable/disable option to forward enable this option $
- Check devices related core/res/res/values/config.xml to enable or disable

credits to crdroid
Themes: uninstallThemeForAllApps shouldn't check if map is empty if it's null

Potential NPE introduced in ec2200878706735cdd2caf4d934d988296998e85

Change-Id: I6d1ec165957c2be63086a18af2236e46978e9c8a
Don't cleanup overlay mapping for non-theme apps

mOverlay structure should keep all app/theme mappings even
if the app does not exist. Otherwise we will have to insert back the mapping
for every app that is installed which would be time consuming.

Without this patch an upgrade app loses its applied theme
until the device is rebooted.

Change-Id: Id02b8e0a3bdd78d1a9d39cd38294c584ef95f8db
Merge remote-tracking branch 'upstream/kitkat1' into kitkat1