Add an ethernet network icon to the statusbar network area. Merge of r44948 into cm-11.0 with updated icons.

Change-Id: If1f0c3122f634154afde8529ded167ab2eb2644f
Signed-off-by: scott <scott@ubuntu.com>

Conflicts:
	packages/SystemUI/src/com/android/systemui/statusbar/SignalClusterView.java
	packages/SystemUI/src/com/android/systemui/statusbar/policy/NetworkController.java
AudioService: Fix absolute volume for AVRCP

Avrcp.java uses max volume obtained by getStreamMaxVolume() when
converting to AVRCP levels and it returns non-scaled volume index.
For this reason volume index needs to be dispatched to Avrcp before
scaling as otherwise Avrcp will convert volume level incorrectly,
i.e. max volume index for music stream is 15 and any volume index
>1 (>10 after scaling) will result in setting *MAXIMUM* volume level
on headset which is not safe for listener.

Change-Id: Ia799eec578ed2326ec18b69f2ee4f2a60c664514
Augment SELinuxMMAC functionality.

* No longer support a package name stanza outside of
  a signature tag. Package names, by themselves, have
  no security associated with them in Android and thus we
  should not be allowing or encouraging this
  type of policy.

* Allow for nested package name stanzas inside
  signature stanzas. There are cases where a finer
  distinction needs to be made among apps signed with
  the same cert. New code allows a different seinfo
  tag to be assigned to the listed package names
  signed by the parent cert. When a determination needs
  to be made concerning seinfo assignments, the inner
  seinfo tag takes precedence over the outer seinfo
  labels which are assigned to just the signature.

* Temp structures are now used to parse new policy files
  until the entire xml file is parsed and deemed correct,
  at which time the temp structures are copied over to the
  permanent class structures. This ensures that any structural
  errors with the policy will not result in partial loads.

* Valid stanzas look like the following with the inner
  package piece being optional.

   <signer signature="">
     <seinfo value=""/>
     <package name="">
       <seinfo value=""/>
     </package>
   <signer>

   <default>
     <seinfo value=""/>
   </default>

Change-Id: Ia204d71211776dcf9b2dcc86ad6d77c4ad39dc25
Allow PMS to restorecon directories under /data.

This change applies a relabel to both /data/data and
/data/user directories on boot. Not every boot will
apply this relabeling however. The appropriate
seapp_contexts is hashed and compared to
/data/system/seapp_hash to decide if the relabel
should occur.

Change-Id: I05e8b438950ddb908e46c9168ea6ee601e6d674f
Signed-off-by: rpcraig <rpcraig@tycho.ncsc.mil>
Convert all selinux_android_restorecon and _setfilecon calls to new API.

libselinux selinux_android_restorecon API is changing to the more
general interface with flags and dropping the older variants.

Also get rid of the old, no longer used selinux_android_setfilecon API
and rename selinux_android_setfilecon2 to it as it is the only API in use.

Change-Id: I1e71ec398ccdc24cac4ec76f1b858d0f680f4925
Signed-off-by: Stephen Smalley <sds@tycho.nsa.gov>
Fix CYAN-3555 bug

This commit fixes typo which is in AOSP tree.
I hope it's possible to merge it.

Change-Id: Ifdf9c5d90b9850b6112ee11a9b1aa3b1576348a0
Signed-off-by: jereksel <jereksel@gmail.com>
FaceUnlock: Check if faceunlock is disabled

JIRA: CYAN-3622
Issue: https://jira.cyanogenmod.org/browse/CYAN-3622

Change-Id: Iaf656f1aecb72610a46183294de25151e8df4b05
Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
Frameworks: Quiet Hours Automatic Switch (1/2)

Change-Id: I3e09891a60ffc5a11f5b5fabef8e06fb02dc9f5d
Signed-off-by: scott <scott@ubuntu.com>

Conflicts:
	core/java/android/provider/Settings.java
Frameworks: Fix memory leak + cleanup

Do not create new Objects onDraw + cleanup

Change-Id: Id1dc9ae85ccf820f2047528e12c4ecdc525f12d2
Signed-off-by: scott <scott@ubuntu.com>

Conflicts:
	packages/SystemUI/src/com/android/systemui/BatteryCircleMeterView.java
Framework: Lockscreen Slider Logic && Fix

Part 1: Keyguard array points directly to
	unlock handle and unlock handle
	ONLY.  Assist/Camera intents will
	never be used. It seems this logic
	in the code was devalued %100 by
	an array change that we'll never
	take advantage of.  I assume this
	was done so OEMs can revert the
	array and get camera/assist
	slider targets with minimal effort.

Part 2: Fix unlock icon colorizing if user
	lock targets are null.

Change-Id: I58206829de03828c7a0b838a4bbc56dbbc33c0c9
Frameworks: Fix linked volume does not persist after reboot.

The controling boolean value must be set before updateStreamVolumeAlias
is called first time. Otherwise updateStreamVolumeAlias will assume
it is always false till user toggle it in settings again.

Change-Id: I53455249909fa6ad69fa0ea6930f9065e5a14fdf
Frameworks: fix possible NPE + and missing expandable panel

Steps to reproduce for NPE:
- go into volume style settings
- switch to disabled
- switch to expanded
- NPE and hotreboot

Fix:
Check if mStreamControls is initialized and if not lock it and do it.

Steps for expandable error:
- go into volume style settings
- switch to disable
- press one time the volume button
- change to expandable
- change the volume and press the expanded icon
- result is it does not expand and is empty due of the missing volume panels.

Fix:
- if it was changed from disabled to expanded be sure that the additional volume panels
are recreated.

PS:
- fix another exception

Change-Id: I58d63d34f831b6a6f60f6eddb3a07fc916d464f3
Change SQL to improve performance.

To know the number of images, use "COUNT(*)" instead of "_id" in SQL.
Using "_id" gets all result set. and when getCount() is called, CursorWindow is filled.
But using "COUNT(*)" gets just 1by1 data.
So using "COUNT(*)" is more faster than now.
And this SQL is called everytime per a file during a file transfer in MTP
The better way is by using "EXIST".
But if using "EXIST", modify MediaProvider.call() method.
So i applied just a "COUNT(*)"

Change-Id: Ic5882af0fad2304f836b7b7043a4746359391609
Signed-off-by: muzbit.kim <muzbit.kim@lge.com>
Frameworks: Fix possible ANR and navigation bar freeze

Big thanks to ralpheboyo which provided us the first time a usable
anr trace where we can see what the actual problem is.

The random ANR is caused due of to much work on the navigationBarCanMove
feature. We call way to often the provider value even though it is only
needed on initiliazing or on update of the value. Currently we call it on every
possible navigation bar change and this multiple times.

To fix it just call it on init and on contentobserver changes and pass
the new value to the navigation bar view and the search panel view

PS:
- remove another call
PS
- add one security check just to be sure
PS
- get one step further and put out the navigation ring config as well
  and reduce it to just one call.

Change-Id: Ica6116289d5bc50e9bedcd34b4b165062fa3468d
Signed-off-by: scott <scott@ubuntu.com>

Conflicts:
	packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java
Framework: disable keyguard widget frame (1/2)

And another user request.  But...I can understand
	it now that I see it without.  They actually
	look quite nice this way.

Change-Id: Id0222140a41eec9e5cd27b769cf860ac62ede1c0
Frameworks: notify arrayadapter early that data has changed on clear all

Recent clear all. Current behaviour is that we do not update the array adapter at all
due that it gets rebuild on next reload. But in very rare cases it happens that getView
want to update shortly after all is cleared althought the view is not visible anymore.

Whatever just call notifyDataSetChanged after List is cleared to work against it.

Change-Id: I61ca25358ebe164336ba349565459537861c5495
Frameworks: do not kill favorite recent apps

Due of a lot user requests and I basically like the idea (not a fan of clear all apps at all
due that it does not make sense android wise) we ehance the favorite recent apps feature.

This commit basically does not remove the apps from the task list which were marked from the user
as favorite.

3 possibilities:

- No favorites are in the task list - clear all behaves like it was before - all tasks cleared and panel closes

- favorites and non favorites are in the task list - clear all removes all non favorite tasks and favorite tasks stay.
  Yes without fancy animations....we want to be fast ;) - panel stays open

- only favorites are in the list - pinch to zoom out is blocked due that nothing is there to clear all.

single clear of a task with swipe behaves in all cases normal like it was before this change

Change-Id: Ia05562e0f59dfb023aa65ec3a40dd951594dc88e
Frameworks: fix possible NPE + and missing expandable panel correction

Thanks Jorge for pointing it out. This version is way nicer.

Change-Id: I7a65a05ef533c90cbfc68d4de996eae7a0ff66b7