SysUI: Don't recreate controllers.

The various controllers, such as mLocationController, get recreated
every time the status bar is recreated due to a theme change.  We
should only need to create these if they are null, otherwise use
the controller as is.  Also, each of these controlers registers
themselves as a broadcast receiver and are never unregistered before
recreating them.

Change-Id: I6215aae5a82b7ced8f0f25cf592a804d38825260
fonts: Add LBhashitaComplexSans font for Sinhala

* From http://www.siyabas.lk/files/Bhashitha_Linux.zip

Change-Id: I293bfe84efd663d5a105541196e2bb3b123ee192
Merge "SysUI: Don't recreate controllers." into cm-11.0
Fix the value type of def_noise_suppression

Change-Id: I0b94e9b24af959fa1c16c807ba83890b2ce077ad
Keyguard : Fix album art sticking after playback is stopped

newIsNull should be populated by what is currently being set and not by
what the user's custom background is, since otherwise you end up a in state
where the user has no custom background set, music stops, no album art via arg is provided and you simply return.

Change-Id: Ifaea1cae176faaba6b32a711071f3b75ccacdd63
Move theme strings to cm_strings.xml

Also correct application->app

Change-Id: I13afe2b810ccb8f9a5fa9484a5cd93ec9820ed6e
CM11 Themes: Take into account ALL res/xml dirs

Only res/xml was being searched for redirection XML files, which
causes themes that use xml-v14, xml-v19, etc to be overlooked and
resources not being mapped.

Change-Id: I8ccad5770250150a95ec3b89be56f8d01025b126
frameworks/base: Call setDirtyRect to update dirty rectangle

This change updates dirty rectangle instead of dirty region of a
surface.

Change-Id: Ic5c6e68ff644911a596a2432fd14868edbff9b17
Merge "CM11 Themes: Take into account ALL res/xml dirs" into cm-11.0
Keyguard: Set untranslatable

Change-Id: I83fd46ec44b65523e7f6f838ef93320d83bfe50f
revert camera icon disable when Settings.System.LOCKSCREEN_MODLOCK_ENABLED was set to 1

Change-Id: I0f6e318c5da7b526e24f8c0c73102e3d7d826a46
CM11 Themes: Use 32bit hash to decide if idmap should be created

Using the last modified time of the package to determine if an idmap
should be created is not always valid for system packages.  We have
observed some packages having a time stamp of 08/01/2008 even if the
package has changed.  This causes system packages, such as
frameworks-res.apk to not be properly mapped if IDs changed in this
package.

This patch will generate a 32 bit hash code based on the file's
MD5 sum.  This hash code is then provided to idmap for writing these
values into the idmap header for future comparison.

This patch requires the following change found in frameworks/native
http://review.cyanogenmod.org/62566

Change-Id: Ie9e0273aef96217f06b08774623dd5f1b290a3da
Merge "CM11 Themes: Use 32bit hash to decide if idmap should be created" into cm-11.0
Merge "fonts: Add LBhashitaComplexSans font for Sinhala" into cm-11.0
 [2/2] Frameworks: HALO Forward port from jb.

Change-Id: Id1d6baa2ab95ecf405c02c5d82732d1f545fc10a
PS1: Initial port Fix conficts with notification LED Fix derp Major derp HALO Mods Rebase Fix blackist, code clean and added some TODOs
PS2: Fix build
PS3: Fix bubble sometimes doesn't respond on new notification
PS4: Align halo icon
PS5: Keep floating app in recents and disable transparent layer temporarily (NOT INCLUDED)
PS6: Fix conflict after recent merges
PS7: Cosmetic fixes: Fix buttons layout in status bar. Status bar button holders show halo + qs switch on notification and qs edit mode + notification switch on qs. Update new margins size. (PARTIALY INCLUDED)
PS8: Rebase Clean white spaces Toggle on/off from notification shade icon (remove red X) Standardize behavior (remove option to reverse tap/double tap)
PS9: Remove references to LayerActivity
PS14: Rebase
PS15: update halo strings to prevent conflict with latest changes
PS16: Wrap all things! Modify halo behavior
PS17: Get the correct activity stack: this makes all windows in the same stack to get the floating mode
PS18: Stop pop-out on rotation
      Catch "silent" notifications
PS19: Rebase
PS20: Rebase, fix conflicts with recent merges
PS21: Fix missing commit messages from previous undefined patchset (19) and other conflicts

Change-Id: I257b7109cc1efd146a1e7096143f45c4f9dc8f98
Fix HALO button with new CyanogenMod 'QS Tiles and layout' function

Change-Id: I5bd70f80b5b3cf4e8925488c73dca905ec456b12
Power menu QS tile (1/2)

- Simple press goes to power menu dialog
- Long press goes to reboot dialog

Change-Id: Ica86831bf02be60b88a693b6367be6f08e705ba6

Conflicts:
	packages/SystemUI/res/values/cr_strings.xml
Power menu into navring targets (1/2)

- This commit use the intent added here: 0efd6981a6c4b299204b8d4f5495bddb5049f30e

The intent added in  core/java/android/content/Intent.java is called when power menu is choosed

Change-Id: Ifcf898ce7e3221fc67c18b2a54806ef344f68e7f
fb: Incoming Call in Background (3/3)

Patch ported from 4.2 which was done by our lovely HCP. A
very popular one so we bring it back and adapt it to 4.4

Allows user to set that Incoming Call UI will remain in background
if screen is on. Instead, a notification is added to StatusBar, which
can be used to bring up the Incoming Call UI. Ringtone and vibration
still occur as per system settings.

This has the same effect as apps marked as "immersive". It prevents
the incoming call from backgrounding the current activity.

Change-Id: I8960ccc453c47d2db38af350b04018e092ef5756
Revert "Runtime toggle of navbar"

This reverts commit b6a1eb3bd5438906f06a076a7c29d97376638496.

Change-Id: I667cbc14f3406e0b87f3b594988d0acab91a9327