Merge commit '043581382e43acbe29a8a62420bc765f49a9dd90' into gingerbread-plus-aosp
* commit '043581382e43acbe29a8a62420bc765f49a9dd90':
[3095807] screen takes a long time to turn on
Merge commit 'd4e03f37423bee383d17f7292753a5f67e497a28' into gingerbread-plus-aosp
* commit 'd4e03f37423bee383d17f7292753a5f67e497a28':
addresses parts of 3096779 and 3097475
Merge commit '6d71f6a0ae9fd81ce25562aee67f841b5d8394cf' into gingerbread-plus-aosp
* commit '6d71f6a0ae9fd81ce25562aee67f841b5d8394cf':
fix [3095607] Gingerbread screen turn-on animation does not show the last frame
3097475: Animation setting should control the screen on animation
3096779: CRT power-on animation can briefly show the top app instead of lockscreen
There is now a parameter that controls wether the ON and/or OFF animation are
performed. we also always clear the screen to black on power off, to make
sure it won't briefly appear on power on.
HOWEVER, 3096779 is not 100% fixed in the case where we're doing the animation
because there is a race, where SF doesn't wait (b/c it doesn't know) for the
framework to have redrawn the lockscreen.
Change-Id: Ie0f02c9225fcdf24b1e8907e268eb7da2c5b0a03
Merge commit 'b0e020ab409b725a556f2c5043b08c9bac2c29bf' into gingerbread-plus-aosp
* commit 'b0e020ab409b725a556f2c5043b08c9bac2c29bf':
may fix 3097381 and 3097482. don't abort on/off if the animation fails
always redraw the screen entirely after the power-on animation, because:
- the animation may not run (ie: on the emu)
- the animation may not contain the video planes
- the interpolation may not be perfect and not land exactly on the last frame
Change-Id: I9ba40f537b1e94464f8a3ed6f81e7c2f552df51d
now that sf handles more of the screen on/off state, we don't want to abort
because/if the animation fails for some reason (which will be the case on the
emulator).
Change-Id: I239e0a39cf8aff3074647e82db92de4a0bf0e494
Merge commit '011b5bcc0355338b7ff906656282a54ffaa04b5a' into gingerbread-plus-aosp
* commit '011b5bcc0355338b7ff906656282a54ffaa04b5a':
implement part of [3094280] New animation for screen on and screen off
Merge commit 'ba799098608c7be8ff1e18adfa7dc1f452205a7e' into gingerbread-plus-aosp
* commit 'ba799098608c7be8ff1e18adfa7dc1f452205a7e':
Remove dead code, and make the animation a setting.
turn off the electron beam
Merge commit 'cf6b2765ae7ea6305754e253264012b8f0498f7b' into gingerbread-plus-aosp
* commit 'cf6b2765ae7ea6305754e253264012b8f0498f7b':
fix a bug where FLIP_H would do a 180 rotation
Merge commit 'd0528b74b6de87c415ea498095e142d52c68875b' into gingerbread-plus-aosp
* commit 'd0528b74b6de87c415ea498095e142d52c68875b':
deliver invalidate messages AFTER other messages
because invalidate messages were always handled first, they
could prevent other messages to get through entirely.
there is no real reason to handle invalidate messages first because
the other messages are very uncommon and won't interfer with
updates.
Change-Id: Ib95cdf35a91407bd2f4d69dd082c5f546e1e0071
Merge commit 'a7c76d8307a3b49bf5b8fdda3543455b0e5dd64c' into gingerbread-plus-aosp
* commit 'a7c76d8307a3b49bf5b8fdda3543455b0e5dd64c':
fix a bug where timeouts would only be handled when a message was delivered
the core screenshot function now can capture the screen at any lower resolution
performing bilinear filtering.
we also now have some client code to interface with the screenshot service.
it's now possible to request a screenshot at a lower resolution.
Change-Id: I33689bba98507ab928d0898b21596d0d2fe4b953
Merge commit 'beabe75a842d521b005999460d3a6361ab32108e' into gingerbread-plus-aosp
* commit 'beabe75a842d521b005999460d3a6361ab32108e':
simple test app for screen capture API
add support for [1974164] Be able to take a screen shot on the device
screenshots are taken using ISurfaceComposer::captureScreen() which returns
the size of the screenshot and an IMemoryHeap containing the data.
screenshots have limitations:
- they will always fail if a secure window is up on screen
- require GL_OES_framebuffer_object extension
- in some situation, video planes won't been captured
Change-Id: I741c68a2d2984fb139039301c3349e6780e2cd58
Add correct enumerants for OES_EGL_image_external to glext.h.
SurfaceFlinger now checks for the correct extension name.
Change-Id: I2ba2728a01fa2260bd086d2df4316c68f694a9b1
Merge commit 'b3ffc78f3432344702e6f5232067ab624083cad2' into gingerbread-plus-aosp
* commit 'b3ffc78f3432344702e6f5232067ab624083cad2':
Add logging of various important graphics events
There are 16 events logged in the event log:
SF_APP_DEQUEUE_BEFORE
SF_APP_DEQUEUE_AFTER
SF_APP_LOCK_BEFORE
SF_APP_LOCK_AFTER
SF_APP_QUEUE
SF_REPAINT
SF_COMPOSITION_COMPLETE
SF_UNLOCK_CLIENTS
SF_SWAP_BUFFERS
SF_REPAINT_DONE
SF_FB_POST_BEFORE
SF_FB_POST_AFTER
SF_FB_DEQUEUE_BEFORE
SF_FB_DEQUEUE_AFTER
SF_FB_LOCK_BEFORE
SF_FB_LOCK_AFTER
all events log the buffer conserned and a timestamp in microseconds.
by default the logging is not enabled, to turn it on:
adb shell service call SurfaceFlinger 1006 i31 1
adb shell setprop debug.graphic_log 1
The effect is immediate in SurfaceFlinger, but applications need to be
restarted.
Change-Id: Ifc2e31f7aed072d9a7dede20ff2ce59231edbec1
Merge commit '8eb16af29303cda190133a1d220b9ecd9341e261' into gingerbread-plus-aosp
* commit '8eb16af29303cda190133a1d220b9ecd9341e261':
don't try to lock a buffer that wasn't allocated with SW usage bits
Merge commit '8395b4625b96f2133e2e4f595fdc69fbe222e4fc' into gingerbread-plus-aosp
* commit '8395b4625b96f2133e2e4f595fdc69fbe222e4fc':
fix [2931513] Add support for setting the orientation of an ANativeWindow
Merge commit '26bcc7b44238ea54105ef5a6020fa5c37bb33f03' into gingerbread-plus-aosp
* commit '26bcc7b44238ea54105ef5a6020fa5c37bb33f03':
revert hwcomposer HAL changes. DO NOT MERGE.
Merge commit '6a73368be44f45a80cc4b65dc57b9ff529cb2d89' into gingerbread-plus-aosp
* commit '6a73368be44f45a80cc4b65dc57b9ff529cb2d89':
fix a typo that prevented glTexImage2D codepath to work
Merge commit 'b7d1be01ae44428b947823fc48c1c126dcaa9732' into gingerbread-plus-aosp
* commit 'b7d1be01ae44428b947823fc48c1c126dcaa9732':
Fix a couple issues with the new hwcomposer HAL
- we now clear the framebuffer upon request from the HAL
- the HAL list size could get out of sync with reality
- there was also an issue where sometime we could run past the list
Change-Id: Ic3a34314aed24181f2d8cc787096af83c046ef27
Merge commit '90dc48b17f673b7e334e3254ea633450f994226c' into gingerbread-plus-aosp
* commit '90dc48b17f673b7e334e3254ea633450f994226c':
call into hwcomposer HAL when present
Merge commit '24d7050ca605804efd5fde03f0d0d8d1d052c247' into gingerbread-plus-aosp
* commit '24d7050ca605804efd5fde03f0d0d8d1d052c247':
don't handle the transparent region of a layer in draw()
Merge commit '8e7515d9c938f5addd08d97bccfccfa976e76c11' into gingerbread-plus-aosp
* commit '8e7515d9c938f5addd08d97bccfccfa976e76c11':
get rid of our LayerVector implementation