Fix systemui crash on boot

The process com.android.systemui would crash after phone booting with a
java.lang.NullPointerException when the signal status style is set to text

Change-Id: Ia7b58fa93b8591d0571b90a57a2fe0fe823b3f45
Fix derp

Change-Id: I5712f98a590760c7092f0cf47cb897d1e166562a
Revert "Merge in a lot of VANIR fixes and improvements"

This reverts commit 3fbdfa4cda565a66e535e3e16f14c7aa7771f88d.

Conflicts:
	core/java/android/widget/Editor.java
	policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
	tools/aapt/Images.cpp

Change-Id: I10821415c43a30ec020f91ca0806f0c6247e425d
Fix themes not sticking on reboot if using Xposed framework.
Credit goes to @rovo89 for the fix

Change-Id: I88c57d81ec677d537f0e5e8b6b2c33f9d9545a0f
Fix ResourceNotFoundException when updating  applied theme

If the user has a theme applied and there is an update to that theme,
then the themed apps will crash. This is because the theme's APK path changes,
but the apps do not update their resources. Apps were not updating their resources
because updateConfiguration() determined that the config (which only has pkgName) hasn't changed.

The problem is fixed by first applying the default theme config and then re-applying the
updated theme.

SystemUI was crashing with a NPE while verifying this fix, so a NP check was added to SystemUI as well.

Change-Id: I00e32fc1535b4d279fcb37c35f868501ecc1dd19
IconPackHelper: Respect the original size of bitmap icons

When use icon packs on low-resolution devices, for example, my HDPI
phone, it seems that using the size returned by
getLauncherLargeIconSize() will cause a blurness on
some icons that are not included in the icon pack because of the compose
function.

This patch respects the original size of the icon if the icon is an
instance of BitmapDrawable but use the size returned by
getLauncherLargeIconSize() if the icon is an instance of PaintDrawable.
This will remove icon blurness on low-resolution devices.

Change-Id: Ifcb39020d934a9c7cb409e1206a179d64f99aa37
SystemUI: fix torch toggle delay on boot

Change-Id: I7b1a1a310cf88fdde4250ae40643570016e1f380
Signed-off-by: Roman Birg <roman@cyngn.com>
Merge "Fix themes not sticking on reboot if using Xposed framework. Credit goes to @rovo89 for the fix" into pac-4.4
Respect DPM when deciding whether keyguard is disabled by profile.

Change-Id: I2fd50e1edd517956a59770a2ecd754cea0003c1c
AudioService: Show safe volume panel for non-interactive volume adjustments

If safe volume is active, apps calling mp.setVolume() to adjust the
headset to a value higher than the threshold will have the operation
fail silently because no volume dialog is active to pop up the
"do you wish to override" question.
This is particularly bad for peripherals that use the audio jack
(Square readers, Jawbone bands), since they usually require levels
close to maximum for proper communication and the app isn't prepared
to deal with a silent rejection of the requested volume.

Change-Id: I2047d199506106a87841b8b680007c5ab45b527b
Themes: Support applying components from multiple themes [1/3]

The current implementation assumes the components being passed
into the ThemeService belong to the same theme.  This patch uses
a Map instead of a List to pass in a mapping of components to
package names, allowing us to apply several components from
different themes.

Requesting a theme change now takes a Map<String, String> which
maps components to the theme package name they will be applied
from.
Example:
    Map<String, String> componentMap = new HashMap<String,String>();
    componentMap.add(ThemesColumns.MODIFIES_ICONS, "com.mytheme.blue");
    componentMap.add(ThemesColumns.MODIFIES_OVERLAYS, "com.mytheme.red");

    ThemeManager tm = (ThemeManager) contex.getSystemService(Context.THEME_SERVICE);
    tm.requestThemeChange(componentMap);

Change-Id: I13fa17eabecb824884fe522d5dc1822a4d7c55f4
base: update link ring-notifications after read user settings

Change-Id: Ib424124dc20e38243e572333e323ba97aacb1111
JIRA: CYAN-3559
Issue: https://jira.cyanogenmod.org/browse/CYAN-3559
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
Merge remote-tracking branch 'pac/pac-4.4' into pac-4.4
Fix build: QCOM_ICS_COMPAT

Change-Id: Ia832713a0d42843c4d1433fc0e5ef2c9e25a8054
Allow using Classic WebView

Squashed commit of the following:

commit 1e64fc6008a5d00ef6a72b2a6f443019b261996a
Author: Chirayu Desai <cdesai@cyanogenmod.org>
Date:   Tue Nov 12 18:53:53 2013 +0530

    WebViewFactory: Re-add support for switching WebView.

    Change-Id: I6a4a62d64014a49e7bdf1bff3581aab79b680f15

commit 069b610aa0446eb4181b73484ce9619221c7d36a
Author: Chirayu Desai <cdesai@cyanogenmod.org>
Date:   Tue Nov 12 18:41:43 2013 +0530

    Revert "Delete the old WebView."

    This reverts commit 94c0057d67c2e0a4b88a4f735388639210260d0e.

commit 4f6f46a12f5c63100cbe7a582aff07a0529f1483
Author: Chirayu Desai <cdesai@cyanogenmod.org>
Date:   Tue Nov 12 18:41:39 2013 +0530

    Revert "Restore 4 classes that were accidentally deleted"

    This reverts commit 328dd7d7059c70b6776c6e29f9ea315f2f8aed3f.

Change-Id: Iba847a04b515cada0eb32cc86026b60469108d80

Revert "Remove old WebView classes from zygote preload list."

This reverts commit 6067d1a3c7033f6714a60ac02a6b08d6568fe217.

Change-Id: Iba847a04b515cada0eb32cc86026b60469108d80
Show notification dialog to choose USBMS/MTP/PTP mode if primary sdcard allows mass storage

Change-Id: Ic24b6bfa462145881545812d558057ee319143b4
Re-add legacy soft-ap for kitkat (1/2)

Change-Id: Iae7d42ba06f546413d1f19a50ee363c74e8cea53
WebViewClassic does not support TEXT_AUTOSIZING layout mode

* Do nothing instead of throw an exception
* Fixes browser crash : http://review.cyanogenmod.org/#/c/58709/

Change-Id: Icb71d9c83b4a0dc2aed75a078ff064c16c4fb2fa
Re-arrange OOM killer to account for SERVICE_ADJ and PREVIOUS_APP_ADJ in slots

See: http://forum.xda-developers.com/showpost.php?p=50044022&postcount=1500

Change-Id: I360359c6f073aab7fd7b2e00afa72618120fe006
getVolumeUUID: add workaround to fetch FUSE-mapped sdcard UUID

Allows the mediaserver to recovery properly after a crash of the
system_server thread. This is needed for a specific storage
configuration (non-emulated physical primary only).

Note: this is an ugly hack, replacing /dev/fuse with
      /dev/block/mmcblk0p1.

Change-Id: I337bda5dfcf70f85a5ad50d03ffdc3de9b4ba06b