SurfaceFlinger: Return the current transform value when queried

When an application queries the transform hint,
SurfaceTexture returns the value based on the previous
queueBuffer function. When query() is called before any
queueBuffer() calls, it doesn't return the current transform.
Make sure to get the current transform from a layer
whenever query() is called.

Change-Id: Id86c931dc72285cf754cc6c77219434388fc0d69
Handling EGL_BAD_ALLOC egl error as return from swap

Some GL apps are not closing properly espacially while
forcefully closed.Cause unnessary swap command from
GLSurfaceView and returing EGL_BAD_ALLOC as error that is
not handling in GL thread and leads to uncaught exception

CRs-fixed: 335039
(cherry picked from commit 46cc8d1f506fabd04e3e192511ab715a22ff92ea)

Change-Id: I92d08b6328a0055687ad99b9413a97ec7025e0cd
Surfaceflinger: Add Src orientation for the layer

hwcl->transform contains the final transform, add source transform
to it, so that the source transform can be used for setting correct
orientation for Secondary display.

Change-Id: I9dd6ab9495991b01211711f55b9380a3a53cf0f0
CRs-fixed: 341691, 330719, 342199, 344308
(cherry picked from commit ec2226ef4e8c9bbf5d255d26f9677d7e36fc6ea2)
SurfaceTexture: Reset buffer values on disconnect.

When the surface texture client disconnects, reset the values set
for buffer width, height, transform and format. This is to ensure
that the same surface texture can be used by another client with
different parameters without any corruptions.

Change-Id: I1e158f4641d7b06cea9976ad2827c7b12c95f538
CRs-Fixed: 347382
FontRenderer: do not leak mIndexBufferID

This glBuffer needs to be deleted to avoid leaking
graphics memory.

CRs-Fixed: 346272
Change-Id: Ib56553fffbf88848905893b02a986765823050ad
(cherry picked from commit 8ee3ffb1c0096767311b55c509e1288901f3747f)
frameworks/base: surfaceflinger: Enable dither if needed

SF is checking if dithering is required but not enabling it.
Enable for layer drawing and  also for screenshot for 16bpp
framebuffer only.

CRs-fixed: 333721
(cherry picked from commit 85c02ed97b4a1d0cc343a452959570b379928d59)

Change-Id: I599fe5b9683db208c8b32a1d3d395d5203f78fd3
SystemUI: enabling hardware acceleration for tablets

Enables hardware acceleration for tablets and uses sw rendering for phone ui.

CRs-Fixed: 350897
(cherry picked from commit 8c79141a14e6c5d344b0fadcbbf22498c8763522)

Change-Id: Ib643ec0293094515f14f6aea8efa02600a0cc128
Lockscreen : Customizable shortcuts

Allow users to choose lockscreen shortcuts / icons :
	Phone - 1-5 targets
	Tablets - 1-8 targets

Patchset 2  : Fix default target reading
Patchset 3  : Switch to resolveActivityInfo
Patchset 4  : Case check for empty target
Patchset 5  : Add index check for targetDescriptions
            : Minor cleanup
Patchset 6  : Custom icons
            : The RSS, Browser, Facebook, Twitter and Podcasts images are
              derivative works by DvTonder made from the from the WPZOOM Developer Icon Pack,
              licensed under Creative Commons Attribution-NonCommercial-ShareAlike, (c) WPZOOM
Patchset 7  : Fix variable reference
Patchset 8  : Change storing method (dynamically get drawable id)
Patchset 9  : Randomz...
Patchset 10 : Icon pack support (Template found at : https://github.com/Danesh/CmIconPicker)
            : Removed stock messaging icon, use ours instead.
Patchset 11 : Code cleanup

Change-Id: I93c842a78fff3517002f7be08555db5b585f6eb8