Frameworks: GlowPad Torch (NavRing)

Secure/Insecure can both use this one.

PS2: Derp
PS3: Swapping to ints for ONE setting
PS5: GlowPadTorchHelper
PS6: Don't initate if FaceUnlock Active
     (Camera in use)
PS7: Rebase
PS?: More CleanUP

Change-Id: Ic5df8ff74c52350fbad25a64671322fbd4f9a0f5

Conflicts:

	policy/src/com/android/internal/policy/impl/keyguard/KeyguardSelectorView.java
Framework: Collapse Shade TogglePref

Change-Id: I2fddec83602b284266631bdff722aa93a2d10c30
NavRing: Longpress Logic

Again, this matches shortpress logic.
    (And now matches longpress logic
    since this was merged on Lockscreen)

Vibrates on Longpress...
    Remove finger to launch.

Change-Id: Ia7f8bb2580643930511fd12764f4a41873ef64d2
Fix NavRing FC
Rework thumbnail handling

Since ids of media file are usually not continuous, the original file of thumbnail are
sparse. When there are big numbers files on ex\
ternal storage, the size of this file will be horrible.
Ex, when the id is 20000, then the .thumbnails/.thumbdata3-xx file will be 50000*10k = 488.28M.
Can refer http://stackoverflow.com/questions/12396715/android-huge-thumbdata4-file-in-dcim-folder
Because after 4.0, MediaProvider will scan any files, this will be a big problem. So I modify MiniThumbFile.java to avoid this.
According to the id, we now produce an index file. In this index file, one id will use BYTES_PER_MINTHUMB_INDEX(8) bytes in offset (i\
d+1)*BYTES_PER_MINTHUMB_INDEX. The data of these 8 bytes is the index of thumbnail file. The first BYTES_PER_MINTHUMB_INDEX bytes kee\
p next available index. And when you need insert a thumbnail, the index increase by 1. In this way, the block data in thumbnail file \
will be continuous. And thus unnecessary zero paddings will not be saved.

Change-Id: I66005dd69b0a5c8f4353bd7a8225d163a654fd2d
CyanogenMod Torch intetn
Merge branch 'revolt' of https://github.com/ReVolt-ROM/frameworks_base into revolt