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)

Credits: Pawit Pornkitprasan

Change-Id: Iad52a35120212c871ffd35df6184aeb678ee44aa
KeyguardSimPinView: don't send dummy request to get remaining pin

I'm not sure of the behavior on QCOM RILs, but on Broadcom RIL
(and probably other RILs), this will eat into the user's PIN
remaining tries. Given that the user is only given ~3 tries, this
is a very bad idea.

In addition, if onAttachedToWindow is called multiple times before
the RIL replies, this can completely delete the retry quota leading
straight to the PUK screen.

Change-Id: I339f1b6d79d543ae8930a7bb95acf823fd5ae20e
Framework: Volume key cursor control (1/2)

This feature is moved to framework so it also works with third
party keyboards.

Change-Id: I8e20240e7bee5351ab20bb3d701eb95a5fd3e112
framework: port IME selector notification toggle (2/2)

Change-Id: Ia35960d88468dba44cdfad26c7cc74f811a6844f
Merge remote-tracking branch 'upstream/cm-12.0' into cm-12.0