summaryrefslogtreecommitdiffstats
path: root/services/surfaceflinger/LayerBase.cpp
Commit message (Collapse)AuthorAgeFilesLines
* unify SurfaceTexture and SurfaceMathias Agopian2011-06-131-156/+52
| | | | | | | Add the concept of synchronous dequeueBuffer in SurfaceTexture Implement {Surface|SurfaceTextureClient}::setSwapInterval() Add SurfaceTexture logging fix onFrameAvailable
* Fix a race that could cause GL commands to be executed from the wrong thread.Mathias Agopian2011-05-191-4/+1
| | | | Change-Id: Ia3d407f7bf2f5553f46cfdade70b7b0badb35beb
* fix a surface leak in SurfaceFlingerMathias Agopian2011-02-161-7/+10
| | | | | | | | | | | | | | | | | | | SF kept a strong reference to ISurface until the window manager removed the surface from the screen. This fell appart when running standalone tests, that is when the window manager wasn't involved. When the window manager is around, it would clean-up surfaces even when an application died. with this change, SF is able to do its own cleanup without relying on the window manager. the change is very simple, we simply don't keep a reference to ISurface and make sure no more than one of them can be created. Change-Id: I61f2d7473bf8d4aa651549a846c34cdbb0d0c85a
* Reset ANativeWindow crop on buffer geometry changes.Jamie Gennis2011-01-281-5/+3
| | | | | | | | | This changes the ANativeWindow API and the two implementations to reset the window's crop rectangle to be uncropped when the window's buffer geometry is changed. Bug: 3359604 Change-Id: I64283dc8382ae687787ec0bebe6a5d5b4a0dcd6b
* fix [3385504] Surface flinger hang when adding dim surfaceMathias Agopian2011-01-251-0/+5
| | | | Change-Id: I8e0cda414bcad5854d2ca5dde8370bfd8b2e5ea4
* clean-up unneeded codeMathias Agopian2011-01-201-4/+0
| | | | | | | | | | now that we removed the notion of a "inUse" buffer in surfaceflinger a lot of code can be simplified / removed. noteworthy, the whole concept of "unlockClient" wrt. "compositionComplete" is also gone. Change-Id: I210413d4c8c0998dae05c8620ebfc895d3e6233d
* improve SurfaceFlinger 'dumpsys' logMathias Agopian2011-01-191-0/+12
| | | | | | | list the purgatory, which shows windows that have been closed, but for which the client still has references. Change-Id: I5168bb88cb328d5d77d71d0871deb9190f493126
* fix [3312683] Camera mirroring problem after switching from back to front cameraMathias Agopian2011-01-131-2/+8
| | | | | | | | | the crop as well as buffer orientation can change at every frame, when that happens we need to reset the hwc HAL (ie: set the GEOMETRY_CHANGED flag). currently we achieve this by taking the same code path than an actual geometry change which is a bit more heavy than necessary. Change-Id: I751f9ed1eeec0c27db7df2e77d5d17c6bcc17a24
* remove support for PUSH_BUFFER surfaces and overlaysMathias Agopian2010-12-081-35/+0
| | | | | | | the same functionality is now supported through the h/w composer HAL, and YUV support in the GPU. Change-Id: I8146605449954b8e8fd7f78810b7d873c2d8f5bf
* resolved conflicts for merge of a0f011ff to masterMathias Agopian2010-12-071-8/+4
|\ | | | | | | Change-Id: I4c17021fc269ce66c98cc345353600eda332f980
| * [3171580] Fix two typos related to fixed-size buffersMathias Agopian2010-12-031-8/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | mFixedSize was never set, this bug was introduced during some "cleanup", in practice this could cause some issues when a fixed-size buffer was used and the window was resized. Layer::drawForSreenShot() had a typo that had no effect. mFixedSize was used to determine if filtering was needed, which was a bit too conservative and created a dependency between filtering and "fixed size" states which should exist. Now we enable filtering based on the size of the buffer vs. the size of the layer. Change-Id: I32044e91b0c944c1b137efdceb3f01dfaa78119d
* | am 5c0efef9: am 7d452f69: Merge "really fix [3118445] Transform * Transform ↵Mathias Agopian2010-10-271-0/+14
|\ \ | |/ | | | | does not work as expected" into gingerbread
| * really fix [3118445] Transform * Transform does not work as expectedMathias Agopian2010-10-271-0/+14
| | | | | | | | | | | | | | | | Two bugs were counter acting each other. - rotation matrices are on the left-hand side of multiplies - the transform of the overlay is applied before that of the layer Change-Id: Ia79bd368e9b719235c89ecf244ea263f01ce906a
* | am 5d477279: am cf6b2765: Merge "fix a bug where FLIP_H would do a 180 ↵Mathias Agopian2010-10-121-3/+3
|\ \ | |/ | | | | | | | | | | | | | | rotation" into gingerbread Merge commit '5d477279e6e41c9d61abe66dcded5c57a51e2c78' * commit '5d477279e6e41c9d61abe66dcded5c57a51e2c78': fix a bug where FLIP_H would do a 180 rotation
| * fix a bug where FLIP_H would do a 180 rotationMathias Agopian2010-10-111-3/+3
| | | | | | | | Change-Id: Ie2cc4a8543a5625750c8596f87edcb66fcbca31f
| * refactored screenshot codeMathias Agopian2010-10-041-0/+6
| | | | | | | | | | | | | | | | | | | | | | 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
* | refactored screenshot codeMathias Agopian2010-09-291-0/+6
| | | | | | | | | | | | | | | | | | | | | | 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: I5a3b0e431421800e3aad601d9af8f94adffbc71f
* | am bc4389ed: am 8395b462: Merge "fix [2931513] Add support for setting the ↵Mathias Agopian2010-08-241-25/+82
|\ \ | |/ | | | | | | | | | | | | | | orientation of an ANativeWindow" into gingerbread Merge commit 'bc4389edfbb5777aec1a9af7863b2ca3ade2fa64' * commit 'bc4389edfbb5777aec1a9af7863b2ca3ade2fa64': fix [2931513] Add support for setting the orientation of an ANativeWindow
| * fix [2931513] Add support for setting the orientation of an ANativeWindowMathias Agopian2010-08-241-25/+82
| | | | | | | | | | | | Also implement support for cropping. Change-Id: Iba5888dd242bf2feaac9e9ce26e404c1f404c280
| * revert hwcomposer HAL changes. DO NOT MERGE.Mathias Agopian2010-08-171-9/+0
|/ | | | | | | | This reverts commit: 94364b91a2894bf037b8beb027132fbb812e1434 f8e705dea48f77f1c2532fdbadd4997dd1851af0 b59beb5ca68d0228f60dda60d85e2d0226b33215 e0d5f5bcf5a8b26f4ad75f549cbf380b2c9faf20
* call into hwcomposer HAL when presentMathias Agopian2010-08-111-0/+9
| | | | Change-Id: I70f31c69a9436a43860e78977442863ecba6d27b
* don't handle the transparent region of a layer in draw()Mathias Agopian2010-08-111-15/+1
| | | | | | | this is already taken into consideration in computeVisibleRegion and therefore not needed at draw time. Change-Id: I3fc7336d22f1147dfcd3a20fd71bf79b946d971f
* get rid of our LayerVector implementationMathias Agopian2010-08-111-0/+3
| | | | | | we now use SortedVector<> with a special compare implementation. Change-Id: I910459cf3b3c8993b55ad0786a8c348369262de5
* move native services under services/Mathias Agopian2010-07-141-0/+593
moved surfaceflinger, audioflinger, cameraservice all native services should now reside in this location. Change-Id: Iee42b83dd2a94c3bf5107ab0895fe2dfcd5337a8