Display Unicode name for China Operators.

The operator name is displayed in the phone using latin
characters by default (the SPN field). The SIM can be
configured to display a unicode name instead using the
PLMN field. However, many Chinese operators requires
this to be a customizable setting as well.

A property, ro.operator.use-plmn, can be set to override
default behaviour and display operator name as unicode
is introduced.

Change-Id: I0b2183cc40fd76bee88ffbe98b99a1d6fa9e2f5b
Change Default Wallpaper
Update Icon Assets
Add Flip to Mute Ringer (framework part) 1/2
FIX
Fix don't interrupt ongoing PIN/PUK verification

This fixes an issue which only occurs if
1. you use a SIM PIN
2. the PIN verification takes longer than the screen timeout is. e.g. when then screen turns black while "unlocking SIM" message is displayed!

It might be possible to simulate the bug by pressing power quickly after the PIN has ben entered and "unlocking SIM" message is still being displayed.

If the PIN verification takes longer thant the screen timeout is then the screen turns black.
If that happens LockPatternKeyguardView.reset() is called which then forces a re-creation of the view. But then the original created
SimUnlockScreen.onSimLockChangedResponse callback never receives the success message for the SIM unlock.
What then happens is that the LockPatternKeyguardView is re-created again and again whenever screen turns off while waiting
until we receive a SIM state changed event e.g. until we are back on network.
But when that happens we are presented the pattern unlock screen. With a single touch we can then (finally) get on the homescreen.

The fix removes the forced re-creation of the LockPatternKeyguardView if there is a PIN/PUK verification in progress. Which leads to a 'normal' unlock behavior:
1. enter pin
2. "unlocking SIM" message is displayed
3. maybe screen turns off after timeout
4. after some seconds you get on the homescreen directly

former ICS submission: http://review.cyanogenmod.com/#/c/19243/

AOSP: https://android-review.googlesource.com/#/c/32310/

The issue is still present when using jellybean code.

Change-Id: I1f9bb26105d07c72b59bdec064e9e93cbdc918c4
Make "SD Card removed" notification dismissible if the removed SD Card is not the primary storage

The Galaxy S uses the "external SD Card" as the extended storage
and it the notification should be dismissible as it's okay not
to have it.

Additionally, this patch also not hide the USB storage mount dialog
if the removed storage is not the primary storage

Change-Id: I524b294c57ba80f19cf1af808af65ce1308f5a0b
DevicePolicyManagerService: Allow KEEP_SCREEN_ON

Don't clear Settings.System.STAY_ON_WHILE_PLUGGED_IN just
because device policy sets a maximum screen lock time.
It's meant as a security measure but it's broken.
Any third party app with android.permission.WRITE_SETTINGS
can override the disabling at any time. This only causes
major inconvenience for developers without any added security
and should be disabled.

Change-Id: I1477792e3909022d951f9629dee6a00a7e69a5ea
Sensor: Add RotationVectorSensor2

Some ICS apps (namely, Google Maps) expects a rotation vector to be
available. Newer devices, this is provided by either Android's
sensor fusion (requires Gyro) or by hardware sensor fusion (MPL).

Older devices will lack this virtual sensor and compass in Google
Maps will not work. To fix this, we can provide our own rotation
vector sensor by converting the values from the orientation sensor.
(They are basically the same information in different formats.)

Thanks to Unhelpful for the help with related math.

Change-Id: Id3bad65659174a08cfe945e9af6e48ca012a5135

(cherry-picked from ics)
Add Center Clock-Framework Part

Change-Id: I80cfef86d556a468925ec22f42dd1638f7c90565
Improve scrolling cache

Scrolling cache helps make short scrolls/flings smooth but will
cause stutter when long flings are made. This patch disables
scrolling cache when long flings are made.

This patch also fixes a related bug where scrolling cache will
not be enabled properly when transitioning from flinging to scrolling.

Patch Set 2: Calculate threshold based on maximum velocity (Sang Tae Park)

Change-Id: I1fdbaad92263c9f983a32900e74eba1f0367902b
Hardware key custom rebinding (1/2)

Forward port to Jellybean of
Change-Id:  I63b67cb97084281fccf83466da075b7af89ab5ed
Author:     Phil Tunstall

Description:
Framework changes to allow rebinding of the actions performed on the following
key press events: Home long-press, menu press, menu long-press, search press,
search long-press, app-switch press and app-switch long-press.

The available actions are: Nothing, open/close menu, recent apps switcher,
search and voice search.

Also adds setting to show action overflow in app interface.
Devices without hardware search key default to using long-press on
menu to search.

Patch Set 1: Initial port, work in progress
Backlight settings, preliminary (to check/clean) but works

Change-Id: Iddcbee98f6588bba428c4059e786d946d7ce2298