summaryrefslogtreecommitdiffstats
path: root/libs
Commit message (Collapse)AuthorAgeFilesLines
* fix camera API 2.0 orientationMathias Agopian2013-09-172-3/+8
| | | | | | | | | we add a flag to ANativeWindow::setBufferTransform that means "apply the inverse rotation of the display this buffer is displayed onto to". Bug: 10804238 Change-Id: Id2447676271950463e8dbcef1b95935c5c3f32b2
* Fix build (tests)Mathias Agopian2013-09-171-1/+1
| | | | Change-Id: I5b233ef448e5e7eec3818c6586dfea138b28f7b6
* Merge "Make sure do disconnect from a BQ when its client dies." into klp-devMathias Agopian2013-09-173-7/+37
|\
| * Make sure do disconnect from a BQ when its client dies.Mathias Agopian2013-09-163-7/+37
| | | | | | | | | | | | Bug: 5679534 Change-Id: If447e8673df83fe0b1d6210641e0a48522501a53
* | Stop using default value for Surface producerControlledByApp parameterJesse Hall2013-09-161-5/+7
|/ | | | | Bug: 10785749 Change-Id: Ifbf9340e5eabe621a69e990ec3e05ac51f8db66a
* fix a few problems with BitTubeMathias Agopian2013-09-102-58/+68
| | | | | | | | | | | | | | | | BitTube used to send objects one at a time and didn't handle errors properly. We now send all the objects in one call, which means they have to be read as a single batch as well. This changes the BitTube API. Update SensorService to the new API. Also added an API to set the size of the send buffer. Bug: 10641596 Change-Id: I77c70d35e351fdba0416fae4b7ca3b1d56272251
* Sensor batching. Changes to the native code.Aravind Akella2013-09-033-16/+63
| | | | | Bug: 10109508 Change-Id: I7333f3aac76125a8226a4c99c901fb904588df04
* Merge changes I8283a989,I64add89a into klp-devMathias Agopian2013-08-313-1/+399
|\ | | | | | | | | | | * changes: switch to use mat4 vector and matrix classes for graphics use
| * vector and matrix classes for graphics useMathias Agopian2013-08-263-1/+399
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - this implements vec2, vec3, vec4, which are float vectors of size 2, 3 and 4 respectively. the code allows easy instantiation of vectors of a different type via the tvec{2|3|4}<T> template classes. - this also implements mat4 which is a float 4x4 matrix. the tmat44<T> template class allows easy instantiation of a 4x4 matrix of a different value_type. The vector types have some minimal support for the glsl style swizzled access; for instance: vec4 u; vec3 v = u.xyz; only .x, .xy, .xyz and their .stpq / .rgba equivalent are supported. most operators are supported on both vector and matrices: arithmetic, unary, compound assignment and comparison (bit-wise operators NOT supported). - operations available on vectors include: dot, length, distance, normalize and cross - operations available on matrices include: transpose, inverse, trace - and a few utilities to create matrices: ortho, frustum, lookAt Change-Id: I64add89ae90fa78d3f2f59985b63495575378635
* | Force async behavior for the virtual display output BufferQueueJesse Hall2013-08-291-2/+4
|/ | | | | Bug: 10551087 Change-Id: I40bbb2b87d64420939a0ea309254f281437dab56
* Remove input flinger stubs. (DO NOT MERGE)Jeff Brown2013-08-222-60/+0
| | | | | Bug: 10446930 Change-Id: I4dd46f539cd2a2e324dfc83b45ba2787f7404a4a
* Surface: Fix controlledByApp parameterEino-Ville Talvala2013-08-211-1/+1
| | | | | Bug: 10425641 Change-Id: I1a47e2ce4ecbdb8e67030a5d9ddf6604c5e2497d
* Fix buildAndy McFadden2013-08-191-1/+1
| | | | | | Neglected the "checkbuild"-built tests. Change-Id: I202692f1a6d1e306c88e820c959d07d16e7c6a00
* Re-enable frame dropping for non-auto timestampsAndy McFadden2013-08-164-4/+22
| | | | | | | | | | | | | | | This change adds an entire field to note whether the timestamp was auto-generated by Surface or supplied by the application. The value is used when deciding whether or not to drop frames based on buffer presentation timestamps. If a desired presentation time was set explicitly, BufferQueue will use that value to decide if a frame should be dropped. If the timestamp was generated by Surface at the time the buffer was queued, the timestamp is ignored. Bug 10151804 Change-Id: Ibd571a7578351063b813cbdad2ddbeed70655ba5
* gui: CpuConsumer::lockNextBuffer change return code when too many bufs acquiredIgor Murashkin2013-08-141-1/+3
| | | | | | | | | | | - Return NOT_ENOUGH_DATA instead of INVALID_OPERATION when too many buffers have already been locked. - INVALID_OPERATION is nominally used when something irrecoverable happens, but in this case the client just needs to call unlockBuffer to go back into a good state. Bug: 10333400 Change-Id: I3a034d77de85741429f832a90eedd670afa1dc94
* Fix build. optional tests were broken.Mathias Agopian2013-08-141-0/+3
| | | | Change-Id: Iba9f5cb57f134559e1f9c55e293578d9f5d8cb96
* SurfaceFlinger now uses GLES 2.x when availableMathias Agopian2013-08-131-5/+5
| | | | | | Bug: 8679321 Change-Id: I2b152d01fb4e2de2ea9fe87f1ddbd6826d7520d7
* make sure GLConsumer::releaseTexImage() works after detachFromContext()Mathias Agopian2013-08-121-19/+43
| | | | Change-Id: I27e0bc57e927d47b2b98113ee37b5396bcc72019
* make GLConsumer's debug texture staticMathias Agopian2013-08-081-22/+28
| | | | | | | this is so that we don't burn a gralloc handle and a bit of memory per GLConsumer. Change-Id: I30c3e7ec45d7f1b5426aca8e06c7716870877706
* Add ISurfaceComposer::destroyDisplayJesse Hall2013-08-082-13/+47
| | | | | Bug: 10191053 Change-Id: Ia89286f95421344a60ffedaaca5825c4e3cd7f9e
* don't hardcode debug texture dimensionsMathias Agopian2013-08-071-4/+7
| | | | Change-Id: I356333801d246a8cafb3e977a77dc7325e8b822d
* fix tests moreMathias Agopian2013-08-061-1/+1
| | | | Change-Id: I05c3dd6a22440844f8bd071f4c2b620b2bd8c720
* fix testsMathias Agopian2013-08-061-1/+1
| | | | Change-Id: I0f4d613481eda2c44a2d631a81d75de7e52e7a62
* remove support for glReadPixels screenshot pathMathias Agopian2013-08-062-9/+4
| | | | | | | this was only needed on some chipset we're not supporting in KLP. Change-Id: I2e8fc07f135030bd61d2e241a8e426f1a4316425
* Fix build. 3rd attemptMathias Agopian2013-08-061-1/+1
| | | | Change-Id: I4317b34fd07890ea7cf9db51be42d72ef21aca89
* All consumers now take an IGraphicBufferConsumer instead of a BufferQueueMathias Agopian2013-08-0611-51/+61
| | | | | | | | | | this means they only have access to the consumer end of the interface. we had a lot of code that assumed consumers where holding a BufferQueue (i.e.: both ends), so most of this change is untangling in fix that Bug: 9265647 Change-Id: Ic2e2596ee14c7535f51bf26d9a897a0fc036d22c
* Merge "BufferQueue: Support query of consumer usage bits"Eino-Ville Talvala2013-08-052-0/+21
|\
| * BufferQueue: Support query of consumer usage bitsEino-Ville Talvala2013-07-302-0/+21
| | | | | | | | | | Bug: 9592202 Change-Id: I61a17758200e61adaca695b426db3df0f6637d4c
* | Merge "Roll back recent change"Andy McFadden2013-08-022-2/+4
|\ \
| * | Roll back recent changeAndy McFadden2013-08-022-2/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | Disable dropping of frames based on timestamp. Resume auto- generating timestamps in Surface. Bug 10151804 Change-Id: I15de26158e1d7ef22a5b150e685a126dc48ae2b4
* | | Merge "Binderize the consumer side of BufferQueue"Mathias Agopian2013-08-027-13/+550
|\ \ \
| * | | Binderize the consumer side of BufferQueueMathias Agopian2013-08-017-13/+550
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While currently untested, this should allow to move the BuffereQueue in the consumer process and have everything work as usual. Bug: 9265647 Change-Id: I9ca8f099f7c65b9a27b7e7a3643b46d1b58eacfc
* | | | Merge "Drop frames based on presentation timestamp"Andy McFadden2013-08-022-31/+69
|\ \ \ \ | |/ / / |/| / / | |/ /
| * | Drop frames based on presentation timestampAndy McFadden2013-08-012-31/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If there are two or more buffers pending that are ready for immediate presentation, drop all but the last one. Any code that didn't explicitly specify timestamps for buffers was using the default value (auto-generated "now"). As a result, surfaceflinger would drop frames whenever more than one buffer was queued. We now use zero as the auto-generated timestamp, and we don't set the timestamp in eglBeginFrame(). Change-Id: I187f42d33de227cd3411ff0dcd3b9ce1961457eb
* | | log an error when dequeueBuffer gets a NULL FenceMathias Agopian2013-08-014-16/+20
| | | | | | | | | | | | | | | Bug: 9858745 Change-Id: If35d6a7d770bf0a42d55bc55880a9ddb721fcfd0
* | | remove unused code form GraphicBufferMathias Agopian2013-07-311-14/+4
| | | | | | | | | | | | Change-Id: I0dd67f1f93f654331e8f17b55730931dbc695ca7
* | | remove libutilsAlex Ray2013-07-3140-10177/+0
|/ / | | | | | | | | | | | | libutils is being moved from frameworks/native/ to system/core/ in order to facilitate native C++ platform (non-frameworks) code. Change-Id: I44089fb960591a40b8a9c30faabb10459d107d71
* | Fix BlobCache_testBrian Carlstrom2013-07-311-12/+12
| | | | | | | | Change-Id: I5b20aeb4dcff80f1e18e1165b8461d20034dc1ac
* | Make Flattenable not virtualMathias Agopian2013-07-306-118/+147
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fallout from the Flattenable change, update all its uses. Additionnaly, fix/tighten size checks when (un)flatten()ing things. Removed the assumption by some flattenables (e.g.: Fence) that the size passed to them would be exact (it can and will be larger in some cases) The code in Parcel is a bit complicated so that we don't have to expose the full implementation (and also to keep the code smallish). Change-Id: I0bf1c8aca2a3128491b4f45510bc46667e566dde
* | Make Flattenable not virtual (libutils)Mathias Agopian2013-07-303-43/+2
|/ | | | | | | | | | | | Making an object Flattenable doesn't force it to become virtual anymore. For instance, Fence and GraphicBuffer are now non-virtual classes. Also change Flatennable protocol a bit so that it updates its parameters (pointers, sizes) to make it easier to implement a flattenable in terms of other flattenables. Change-Id: Ie81dc7637180b3c2cfcbaf644f8987ca804eb891
* single buffer mode for BufferQueueMathias Agopian2013-07-262-10/+113
| | | | | Bug: 9891035 Change-Id: Id1ab5f911a6dc4c1d8235e65775b3d3635231ad4
* fix buildMathias Agopian2013-07-261-2/+0
| | | | Change-Id: I04df8ec96510b16e84054089f7c02609d8fe2b0c
* get rid of HAL pixelformats 5551 and 4444Mathias Agopian2013-07-262-26/+14
| | | | Change-Id: I39409103144c1ba09078c4ddc323a58987fb09ea
* get rid of PixelFormatInfo and simplify thingsMathias Agopian2013-07-251-112/+35
| | | | Change-Id: I025a362cc12d5b9b794fac14be500e25aab65396
* Merge "Fix a race in BufferQueue"Mathias Agopian2013-07-251-17/+27
|\
| * Fix a race in BufferQueueMathias Agopian2013-07-231-17/+27
| | | | | | | | | | | | | | | | | | | | BufferQueue::dequeueBuffer() could incorrectly return WOULD_BLOCK while in "cannot block" mode if it happened while a consumer acquired the last allowed buffer before releasing the old one (which is a valid thing to do). Change-Id: I318e5408871ba85e068ea9ef4dc9b578f1bb1043
* | defaultServiceManager wait for service manager readyTodd Poynor2013-07-242-1/+30
| | | | | | | | | | | | | | If the service manager is not ready when we attempt to create a local proxy, fail and retry. Change-Id: I7d7300bc07cd70608793479aa3da282d066da7f6
* | Merge "libutils: give BasicHashtableImpl a virtual destructor"Alex Ray2013-07-241-0/+4
|\ \
| * | libutils: give BasicHashtableImpl a virtual destructorAlex Ray2013-07-241-0/+4
| | | | | | | | | | | | Change-Id: I4ec590b060d732af5fe525670becbe778684247b
* | | add static dependency on liblogColin Cross2013-07-232-0/+53
|/ / | | | | | | Change-Id: Ibf8733142d52e4ffac2e3b26932d7196fb79c5a7