Commit Graph

53 Commits

Author SHA1 Message Date
Mathias Agopian
c6f607dcdd am cf6b2765: Merge "fix a bug where FLIP_H would do a 180 rotation" into gingerbread
Merge commit 'cf6b2765ae7ea6305754e253264012b8f0498f7b' into gingerbread-plus-aosp

* commit 'cf6b2765ae7ea6305754e253264012b8f0498f7b':
  fix a bug where FLIP_H would do a 180 rotation
2010-10-11 14:40:02 -07:00
Mathias Agopian
20f29b4a2a Merge "fix a bug where FLIP_H would do a 180 rotation" into gingerbread 2010-10-11 14:37:57 -07:00
Mathias Agopian
3c2c54c270 fix a bug where FLIP_H would do a 180 rotation
Change-Id: Ie2cc4a8543a5625750c8596f87edcb66fcbca31f
2010-10-11 14:19:24 -07:00
Mathias Agopian
2e109a8666 am d0528b74: Merge "deliver invalidate messages AFTER other messages" into gingerbread
Merge commit 'd0528b74b6de87c415ea498095e142d52c68875b' into gingerbread-plus-aosp

* commit 'd0528b74b6de87c415ea498095e142d52c68875b':
  deliver invalidate messages AFTER other messages
2010-10-11 14:17:25 -07:00
Mathias Agopian
7b0ba16688 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
2010-10-11 14:11:15 -07:00
Mathias Agopian
8d5ed61121 am a7c76d83: Merge "fix a bug where timeouts would only be handled when a message was delivered" into gingerbread
Merge commit 'a7c76d8307a3b49bf5b8fdda3543455b0e5dd64c' into gingerbread-plus-aosp

* commit 'a7c76d8307a3b49bf5b8fdda3543455b0e5dd64c':
  fix a bug where timeouts would only be handled when a message was delivered
2010-10-11 12:44:23 -07:00
Mathias Agopian
23a0920339 fix a bug where timeouts would only be handled when a message was delivered
Change-Id: I98c69b129e75e065e61f47e54f0f855d9401b0dc
2010-10-11 12:40:09 -07:00
Mathias Agopian
6263c831ec am 19058877: Merge "refactored screenshot code" into gingerbread
Merge commit '19058877df9bf94f197a72855f810f7f6bf8d068' into gingerbread-plus-aosp

* commit '19058877df9bf94f197a72855f810f7f6bf8d068':
  refactored screenshot code
2010-10-04 20:06:51 -07:00
Mathias Agopian
df85c455c3 refactored screenshot code
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
2010-10-04 17:36:17 -07:00
Mathias Agopian
c814f965de am beabe75a: Merge changes I1f7c4535,I741c68a2 into gingerbread
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
2010-09-24 18:07:41 -07:00
Mathias Agopian
06e7056660 simple test app for screen capture API
Change-Id: I1f7c453508ccfd4faaa8b1279968a358ce3f1e5a
2010-09-24 15:01:49 -07:00
Mathias Agopian
1b0b30d043 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
2010-09-24 14:56:39 -07:00
Mathias Agopian
c05246ae34 am 1bcb8b1a: Merge "surfaceflinger / GL extensions cleanup" into gingerbread
Merge commit '1bcb8b1afbfa2fc387a0f7068740f1efbe9a1f69' into gingerbread-plus-aosp

* commit '1bcb8b1afbfa2fc387a0f7068740f1efbe9a1f69':
  surfaceflinger / GL extensions cleanup
2010-09-16 17:57:34 -07:00
Michael I. Gold
7f198b6bff surfaceflinger / GL extensions cleanup
Add correct enumerants for OES_EGL_image_external to glext.h.
SurfaceFlinger now checks for the correct extension name.

Change-Id: I2ba2728a01fa2260bd086d2df4316c68f694a9b1
2010-09-15 17:15:31 -07:00
Mathias Agopian
5e4cf02dfe am b3ffc78f: Merge "Add logging of various important graphics events" into gingerbread
Merge commit 'b3ffc78f3432344702e6f5232067ab624083cad2' into gingerbread-plus-aosp

* commit 'b3ffc78f3432344702e6f5232067ab624083cad2':
  Add logging of various important graphics events
2010-09-14 15:14:10 -07:00
Mathias Agopian
35b48d10bc 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
2010-09-13 23:16:58 -07:00
Mathias Agopian
9cca403ed0 am 4cffbb47: Merge "fix [2946787] Screen flicker on low resolution setting in camcorder." into gingerbread
Merge commit '4cffbb47a28faa594c2217d1e84f9382e0b57cc4' into gingerbread-plus-aosp

* commit '4cffbb47a28faa594c2217d1e84f9382e0b57cc4':
  fix [2946787] Screen flicker on low resolution setting in camcorder.
2010-08-25 15:40:44 -07:00
Mathias Agopian
eff062c49e fix [2946787] Screen flicker on low resolution setting in camcorder.
Change-Id: I7e86f2b6d85dcae8dd212890b978fa6ac7de6893
2010-08-25 15:09:52 -07:00
Mathias Agopian
2091772e7c am 8eb16af2: Merge "don\'t try to lock a buffer that wasn\'t allocated with SW usage bits" into gingerbread
Merge commit '8eb16af29303cda190133a1d220b9ecd9341e261' into gingerbread-plus-aosp

* commit '8eb16af29303cda190133a1d220b9ecd9341e261':
  don't try to lock a buffer that wasn't allocated with SW usage bits
2010-08-25 12:17:19 -07:00
Mathias Agopian
f1b38247d4 don't try to lock a buffer that wasn't allocated with SW usage bits
Change-Id: Iabbcec1bfa30dc47d45ece699dd178653f1b675b
2010-08-25 12:14:27 -07:00
Mathias Agopian
95acdcc7de am 8395b462: Merge "fix [2931513] Add support for setting the orientation of an ANativeWindow" into gingerbread
Merge commit '8395b4625b96f2133e2e4f595fdc69fbe222e4fc' into gingerbread-plus-aosp

* commit '8395b4625b96f2133e2e4f595fdc69fbe222e4fc':
  fix [2931513] Add support for setting the orientation of an ANativeWindow
2010-08-24 16:28:57 -07:00
Mathias Agopian
b661d66013 fix [2931513] Add support for setting the orientation of an ANativeWindow
Also implement support for cropping.

Change-Id: Iba5888dd242bf2feaac9e9ce26e404c1f404c280
2010-08-24 15:40:50 -07:00
Mathias Agopian
8258339e47 am 545eab8a: Merge "remove unused pixel format" into gingerbread
Merge commit '545eab8ae80b070177cc442931eadc8cd980de26' into gingerbread-plus-aosp

* commit '545eab8ae80b070177cc442931eadc8cd980de26':
  remove unused pixel format
2010-08-19 13:39:56 -07:00
Mathias Agopian
c04cffd570 remove unused pixel format
Change-Id: I55bc3cc41385743c07f7e4de06335c922f746f73
2010-08-19 13:11:42 -07:00
Mathias Agopian
1339581c92 am 26bcc7b4: Merge "revert hwcomposer HAL changes. DO NOT MERGE." into gingerbread
Merge commit '26bcc7b44238ea54105ef5a6020fa5c37bb33f03' into gingerbread-plus-aosp

* commit '26bcc7b44238ea54105ef5a6020fa5c37bb33f03':
  revert hwcomposer HAL changes. DO NOT MERGE.
2010-08-18 13:57:15 -07:00
Mathias Agopian
000ca8fa9a revert hwcomposer HAL changes. DO NOT MERGE.
This reverts commit:
94364b91a2894bf037b8beb027132fbb812e1434
f8e705dea48f77f1c2532fdbadd4997dd1851af0
b59beb5ca68d0228f60dda60d85e2d0226b33215
e0d5f5bcf5a8b26f4ad75f549cbf380b2c9faf20
2010-08-17 20:22:04 -07:00
Mathias Agopian
3c7a766c66 am 6a73368b: Merge "fix a typo that prevented glTexImage2D codepath to work" into gingerbread
Merge commit '6a73368be44f45a80cc4b65dc57b9ff529cb2d89' into gingerbread-plus-aosp

* commit '6a73368be44f45a80cc4b65dc57b9ff529cb2d89':
  fix a typo that prevented glTexImage2D codepath to work
2010-08-13 16:32:43 -07:00
Mathias Agopian
998831fbc3 Merge "fix a typo that prevented glTexImage2D codepath to work" into gingerbread 2010-08-13 16:29:48 -07:00
Mathias Agopian
f1c468e481 fix a typo that prevented glTexImage2D codepath to work
Change-Id: I36a3bf9d1d2eacd9b14e00b0a6c53bf88bba381c
2010-08-13 16:25:13 -07:00
Erik Gilling
38af31e3e2 am 94364b91: surfaceflinger: don\'t check HWComposer numLayers unless one exists
Merge commit '94364b91a2894bf037b8beb027132fbb812e1434' into gingerbread-plus-aosp

* commit '94364b91a2894bf037b8beb027132fbb812e1434':
  surfaceflinger: don't check HWComposer numLayers unless one exists
2010-08-13 10:13:39 -07:00
Erik Gilling
ae95765868 surfaceflinger: don't check HWComposer numLayers unless one exists
Change-Id: I4b83f7bf7ba1318c70054117f14e759fe0ad105c
2010-08-13 10:10:48 -07:00
Mathias Agopian
5e9615eaff am b7d1be01: Merge "Fix a couple issues with the new hwcomposer HAL" into gingerbread
Merge commit 'b7d1be01ae44428b947823fc48c1c126dcaa9732' into gingerbread-plus-aosp

* commit 'b7d1be01ae44428b947823fc48c1c126dcaa9732':
  Fix a couple issues with the new hwcomposer HAL
2010-08-12 15:09:30 -07:00
Mathias Agopian
45721773e1 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
2010-08-12 15:03:26 -07:00
Mathias Agopian
ea6dbaf302 am 65f2490e: Merge "should fix sim build, hopefully" into gingerbread
Merge commit '65f2490e1baa6eac5905cbc638e69581ebcd8dee' into gingerbread-plus-aosp

* commit '65f2490e1baa6eac5905cbc638e69581ebcd8dee':
  should fix sim build, hopefully
2010-08-11 17:35:58 -07:00
Mathias Agopian
f1352df47f should fix sim build, hopefully
Change-Id: I5390bd34dcca36fef43b5169386fff1b04cc842b
2010-08-11 17:31:33 -07:00
Mathias Agopian
8ea0bbd9b0 am 90dc48b1: Merge "call into hwcomposer HAL when present" into gingerbread
Merge commit '90dc48b17f673b7e334e3254ea633450f994226c' into gingerbread-plus-aosp

* commit '90dc48b17f673b7e334e3254ea633450f994226c':
  call into hwcomposer HAL when present
2010-08-11 16:28:21 -07:00
Mathias Agopian
127fbb7943 am 24d7050c: Merge "don\'t handle the transparent region of a layer in draw()" into gingerbread
Merge commit '24d7050ca605804efd5fde03f0d0d8d1d052c247' into gingerbread-plus-aosp

* commit '24d7050ca605804efd5fde03f0d0d8d1d052c247':
  don't handle the transparent region of a layer in draw()
2010-08-11 16:26:05 -07:00
Mathias Agopian
c1ee0bea39 am 8e7515d9: Merge "get rid of our LayerVector implementation" into gingerbread
Merge commit '8e7515d9c938f5addd08d97bccfccfa976e76c11' into gingerbread-plus-aosp

* commit '8e7515d9c938f5addd08d97bccfccfa976e76c11':
  get rid of our LayerVector implementation
2010-08-11 16:25:59 -07:00
Mathias Agopian
820863e774 am 025822a0: Merge "keep a list of visible sorted surfaces" into gingerbread
Merge commit '025822a03a09337ec382e708c5a798fe805109ed' into gingerbread-plus-aosp

* commit '025822a03a09337ec382e708c5a798fe805109ed':
  keep a list of visible sorted surfaces
2010-08-11 16:23:06 -07:00
Mathias Agopian
a350ff9869 call into hwcomposer HAL when present
Change-Id: I70f31c69a9436a43860e78977442863ecba6d27b
2010-08-11 16:08:45 -07:00
Mathias Agopian
bc7e31a84b don't handle the transparent region of a layer in draw()
this is already taken into consideration in computeVisibleRegion
and therefore not needed at draw time.

Change-Id: I3fc7336d22f1147dfcd3a20fd71bf79b946d971f
2010-08-11 16:05:06 -07:00
Mathias Agopian
f6679fc6f7 get rid of our LayerVector implementation
we now use SortedVector<> with a special compare implementation.

Change-Id: I910459cf3b3c8993b55ad0786a8c348369262de5
2010-08-11 16:05:05 -07:00
Mathias Agopian
4da7519993 keep a list of visible sorted surfaces
Change-Id: Ib815eeff894f8a3b1e79fbbf8186d5d91bb60285
2010-08-11 16:04:51 -07:00
Jean-Baptiste Queru
4952ac0498 am bc881e66: Merge "frameworks/base: Swap width and height of temporary buffer only with orientation change"
Merge commit 'bc881e66d15181494fdd5d0ece83e20ef325453b' into gingerbread-plus-aosp

* commit 'bc881e66d15181494fdd5d0ece83e20ef325453b':
  frameworks/base: Swap width and height of temporary buffer only with
2010-08-11 10:16:32 -07:00
Omprakash Dhyade
ad1c5cf963 frameworks/base: Swap width and height of temporary buffer only with
orientation change

Current code swaps the width and height by assuming that aspect
ratio of the buffer width and height will be same as that of the
layout clip width and height. That is not always true.
Change the check to orientation change.

Change-Id: Ie387f3a7369025427484e4173cbde7a08df2b9d7
2010-08-10 16:49:48 -07:00
Mathias Agopian
208cb07724 fix [2873058] Surface::dequeueBuffer blocks on last buffer, i.e. cannot dequeue all allocated buffers at once.
this situation happened when the last buffer needed to be resized
(or allocated, the first time). the assumption was that the buffer
was in use by SF itself as the current buffer (obviously, this
assumption made no sense when the buffer had never been allocated, btw).

the system would wait until some other buffer became the "front" buffer.

we fix this problem by entirely removing the requirement that the
buffer being resized cannot be the front buffer. instead, we just
allocate a new buffer and replace the front buffer by the new one.

the downside is that this uses more memory (an extra buffer) for a
brief amount of time while the old buffer is being reallocated and
before it has actually been replaced.

Change-Id: I022e4621209474ceb1c671b23deb4188eaaa7285
2010-07-27 20:11:35 -07:00
Mathias Agopian
be48137beb move native services under services/
moved surfaceflinger, audioflinger, cameraservice

all native services should now reside in this location.

Change-Id: Icd7336f7289db35df9c8c1857a5122bb8a6f1c86
2010-07-22 15:28:19 -07:00
Mathias Agopian
a1e6bc864f added BinderService<> template to help creating native binder services
Change-Id: Id980899d2647b56479f8a27c89eaa949f9209dfe
2010-07-14 18:43:19 -07:00
Mathias Agopian
81bac09fa6 move native services under services/
moved surfaceflinger, audioflinger, cameraservice

all native services should now reside in this location.

Change-Id: Iee42b83dd2a94c3bf5107ab0895fe2dfcd5337a8
2010-07-14 17:59:35 -07:00
The Android Open Source Project
22f8defddc auto import from //branches/cupcake/...@137197 2009-03-09 11:52:12 -07:00