improve a calculation method for LTE antenna reception level

This proposal will fix a problem that Android devices could
show different levels of antenna bars under the same radio
environment if each device uses different modem.
This behavior makes confusion toward users and others.

That behavior comes from using RSSNR as a metric for
determining antenna bars. Unfortunately, RSSNR does NOT define
performance requirements and error tolerance level in 3GPP.
Therefore, accuracy of RSSNR measurement could be inconsistent
among Android devices or modems.

The patch we would like to contribute here will be offering
Android device to use RSRQ for antenna bar metric instead of RSSNR.

1.)RSRQ, like RSSNR, takes interference into account
   when measuring the radio quality.
   Android already supports measurement of RSRQ.

2.)The performance requirement for RSRQ is already defined in 3GPP.

3.)DOCOMO and other many mobile operators use RSRP and RSRQ
   when designing LTE coverage areas, and alignment here will
   be very beneficial for both users and operators.

Hope this patch helps to improve Android antenna bar accuracy and consistency today.

Change-Id: Id1c3339764294ef51365ab133a1c7b42e14e1800
Signed-off-by: Kensuke Ueda <uedake@nttdocomo.co.jp>
Framework: Quiet Hours Extra Daily Times (1/2)

Change-Id: I38301d53b57f6b0525edd2a7e13a2bd5022e7a65
Merge branch 'kk4.4' of https://github.com/SlimRoms/frameworks_base into kk4.4

Conflicts:
	core/res/res/values/slim_symbols.xml

Change-Id: If7ef14ca8b8147b8a174e8bdec184c08eb0636f1
hwui: fix possible null pointer de-refrence

add layer check for  null before de-refrencing it.

issue link: http://code.google.com/p/android/issues/detail?id=61622

Change-Id: I54fc21ec594effcfb1eededd80dd5b0b52645c4c
Fix for positioning of glyphs within a bitmap

For positioning of glyphs within a bitmap, roundf(int + float) is used,
where the float is the glyph position and the int is the text position.
When the text position is varied, this may lead to the sum being rounded
in different directions, due to floating point rounding, caused by that
floating point numbers have different precision in different ranges.

This may therefore lead to slightly different positioning for glyphs and
therefore slightly different widths and heights for text strings,
depending on the position they are rendered at.

The solution in this patch is to use int + (int) roundf(float), which
has consistent rounding, and also enables us to use the full range of
ints.

Change-Id: Id1143cdfcbdfa9915ced878ae04df589a3e03cee
Add an internal API to get all asset locales.

This will allow us to not copy paste this code verbatim into
bundled apps.

bug: 10090157
Change-Id: I008dc683ecbef2ad8b7a26968cb3cbda7e5a8388