summaryrefslogtreecommitdiffstats
path: root/libs/gui
Commit message (Collapse)AuthorAgeFilesLines
* cleanup: fix typos in logsMathias Agopian2011-09-161-1/+1
| | | | Change-Id: Ib5744564a873ea2b84100174673dc4d3ae109fcf
* Merge "SurfaceTexture: fix a test deadlock"Jamie Gennis2011-09-051-2/+4
|\
| * SurfaceTexture: fix a test deadlockJamie Gennis2011-08-301-2/+4
| | | | | | | | | | | | | | This change fixes a test issue that resulted in a deadlock. Change-Id: I4729e8dd47c8f5fea49bfeff3cea58627ead6d04 Bug: 5174876
* | Error check in queuebuffer in SurfaceTextureClientPannag Sanketi2011-09-021-2/+5
| | | | | | | | | | | | | | In queuebuffer, if the surfacetexture returns an error, surfacetextureclient should check for that and pass on the error. Change-Id: Ie6d70e779fac0702f372eb4df5ecb655280875ee
* | Merge "Integreate surfacetexture test into our continuous test framework."Xia Wang2011-08-311-6/+4
|\ \
| * | Integreate surfacetexture test into our continuous test framework.Xia Wang2011-08-301-6/+4
| |/ | | | | | | Change-Id: Ic481f3a431166851947676d676749543c7afbbf7
* | fix Surface positions are not floatsMathias Agopian2011-08-301-3/+3
|/ | | | | | | | Added Surface.setPosition(float, float) which allows to set a surface's position in float. Bug: 5239859 Change-Id: I903aef4ad5b5999142202fb8ea30fe216d805711
* make sure to re-initialize SurfaceTexture to its default state on disconnectMathias Agopian2011-08-252-3/+13
| | | | | | | this caused problems where the NavigationBar would disapear or be drawn in the wrong orientation. Change-Id: I083c41338db83a4afd14f427caec2f31c180d734
* Fix an issue where Surface::lock() would never update the output regionMathias Agopian2011-08-231-3/+8
| | | | | | | | | this bug was introduced recently. in some situations Surface::lock() is not able to preserve the content of the back buffer and needs to tell the caller to redraw everything. Bug: 5186460 Change-Id: I14e03939ddfc1b7ad2a8b99ad79435314c60e78e
* Merge "SurfaceTexture: fix queues-to-composer"Jamie Gennis2011-08-183-15/+26
|\
| * SurfaceTexture: fix queues-to-composerJamie Gennis2011-08-173-15/+26
| | | | | | | | | | | | | | | | | | | | | | This change fixes the NATIVE_WINDOW_QUEUES_TO_WINDOW_COMPOSER query of Surface and SurfaceTextureClient. Surface now uses the inherited SurfaceTextureClient implementation of this query. SurfaceTextureClient now queries SurfaceFlinger to determine whether buffers that are queued to its ISurfaceTexture will be sent to SurfaceFlinger (as opposed to some other process). Change-Id: Iff187e72f30d454229f07f896b438198978270a8
* | don't return the current buffer from dequeueBufferMathias Agopian2011-08-171-4/+23
| | | | | | | | | | | | | | | | | | | | | | | | we were not reseting mCurrentTexture in some situations which in turn caused dequeueBuffers() return a "FREE" buffer that was also current. Very often it was harmless, but it created a race with updateTexImage() which could cause the following queueBuffers() to fail. Bug: 5156325 Change-Id: If15a31dc869117543d220d6e5562c57116cbabdb
* | fix a small race condition when returning the default width/height of a ↵Mathias Agopian2011-08-171-5/+4
|/ | | | | | SurfaceTexture Change-Id: I581bf609505dfb5d4ec5957b2ef2c77df6cfb15f
* Revert "error out when SurfaceTexture APIs are called while not connected"Dave Burke2011-08-111-28/+0
| | | | | | | | | | | This reverts commit a04cda9986366ab480ad8008c4d923271b05d78e. Conflicts: include/gui/SurfaceTexture.h libs/gui/SurfaceTexture.cpp Change-Id: Ib655016462c496ee2a27f7cb33a6e8b18cfe684a
* Merge "Read leftover parcel data when a parceled Surface is found in the cache."Mathias Agopian2011-08-101-0/+5
|\
| * Read leftover parcel data when a parceled Surface is found in the cache.Ted Bonkenburg2011-08-091-0/+5
| | | | | | | | | | | | | | | | | | | | | | This fixes an issue where the Surface readFromParcel code was leaving unread parcel data in the case where the Surface was re-used from the sCachedSurfaces cache. On a cache miss the code is creating a new Surface from the remainder of the parcel data. On a hit that data was being left unread, so anything that parcels a Surface followed by additional arguments may end up reading the wrong values. Change-Id: I25365159d945c125bd1fcc9f17e39a4f00aece55
* | fix a crasher in SurfaceTexture::updateTexImage()Mathias Agopian2011-08-101-25/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | we now make sure to drain the buffer queue on disconnect. this happens only when in synchrnous mode. in async mode we clear all buffers except the head of the queue. for extra safety we also catch the null pointer in updateTexImage (which should never happen) and return an error. Bug: 5111008 Change-Id: I5174a6ecbb0de641c6510ef56a611cbb4e9e1f59
* | rework dequeueBuffer()'s main loop.Mathias Agopian2011-08-101-32/+34
| | | | | | | | | | | | | | | | this simplifies the code a bit and also makes sure we reevaluate mAbandoned and mConnectedApi each time we come back from waiting on mDequeueCondition Change-Id: I1f8538b62ad321b51ed79d953b700036daba796d
* | error out when SurfaceTexture APIs are called while not connectedMathias Agopian2011-08-101-6/+36
| | | | | | | | | | | | | | - also log a warning when freeAllBuffers is called with a non empty buffer queue - rename freeAllBuffers to freeAllBuffersLocked Change-Id: Idb71fdcf233b9ccae62d5a2a7c3c4bad2501d877
* | fix a crasher in dumpsysMathias Agopian2011-08-091-4/+10
| | | | | | | | | | Bug: 5141729 Change-Id: Ib104d49c8660621180966be099198fe29c5bebf5
* | free all buffers when ANativeWindow::disconnect is calledMathias Agopian2011-08-081-0/+1
| | | | | | | | Change-Id: Ie06e73e5b44398cda9e99876f78175b5eef765dc
* | return correct value from query after connecting a surfaceMathias Agopian2011-08-083-4/+18
| | | | | | | | | | | | | | | | | | | | the first time a surface was connected, the values returned by query NATIVE_WINDOW_DEFAULT_{WIDTH|HEIGHT} and NATIVE_WINDOW_TRANSFORM_HINT were wrong until a call to queueBuffer was performed. Bug: 5137366, 5121607 Change-Id: I7ac6b5b0daa876638f6bed7c20f286a6e6d984f6
* | Merge "improve dumpsys SurfaceFlinger output"Mathias Agopian2011-08-081-3/+8
|\ \
| * | improve dumpsys SurfaceFlinger outputMathias Agopian2011-08-081-3/+8
| |/ | | | | | | | | | | we now output the handle and size of all buffers of each layer. Change-Id: I8d011ee4ae9199f4198bd07bed770ec3bcf02986
* | add some logs to track a crash in eglCreateImageKHRMathias Agopian2011-08-081-0/+16
|/ | | | | | Bug: 5111008 Change-Id: I3e7f5b986151e80cbded39e0dec057770da52fc1
* Add a 'release' method to the SurfaceTexture public Java APIMathias Agopian2011-08-031-0/+1
| | | | | Bug: 5063618 Change-Id: I689cb0c01c14e597ccfb4eb0972e64fa570bd4e8
* Merge "connect/disconnect is now called from our EGL wrapper"Mathias Agopian2011-08-011-2/+8
|\
| * connect/disconnect is now called from our EGL wrapperMathias Agopian2011-08-011-2/+8
| | | | | | | | | | | | | | | | | | | | | | the original connect/disconnect hooks are deprecated and replace by api_connect/api_disconnect. the original hooks are no no-ops. api_connect/api_disconnect is now only called from the android framework. Bug: 5057915 Change-Id: I8ca64cd1acd6cabf915bf54689ec2e5f6dfa495a
* | SurfaceTexture: allow set_buffer_count(2)Jamie Gennis2011-07-301-5/+5
|/ | | | | | | | | | | | | This change relaxes an error check in SurfaceTexture::setBufferCount to allow clients to explicitly set a buffer count of 2. The clients that will do this are camera and video decode. Previously it was thought that for those clients we would always use async mode, which requires a minimum of 3 buffers. However, we now believe that for some devices it may make sense to use synchronous mode (with 2 buffers) to reduce memory usage. Bug: 5088418 Change-Id: I620a0ef75075745be9d6c8219e0246aaf33ba950
* Merge "remove dead code and member variables."Mathias Agopian2011-07-262-14/+7
|\
| * remove dead code and member variables.Mathias Agopian2011-07-252-14/+7
| | | | | | | | | | | | also fix some comments and improve debugging logs. Change-Id: I83e55309f306332b59e1ec46104c4a7fffbf3c97
* | Merge "SurfaceTexture: enable RGB external textures"Jamie Gennis2011-07-252-42/+20
|\ \
| * | SurfaceTexture: enable RGB external texturesJamie Gennis2011-07-222-42/+20
| | | | | | | | | | | | | | | | | | | | | | | | This change removes support for conditionally using the GL_TEXTURE_2D target for SurfaceTexture textures with RGB buffers. It also enables and fixes the RGB-based SurfaceTexture tests. Change-Id: I9a251a981cf66af6b048b2e4c3fe7231e4774f4d
* | | Merge "Add support for creating a Surface from a a SurfaceTexture."Ted Bonkenburg2011-07-251-14/+42
|\ \ \ | |_|/ |/| |
| * | Add support for creating a Surface from a a SurfaceTexture.Ted Bonkenburg2011-07-221-14/+42
| | | | | | | | | | | | | | | | | | | | | | | | The Surface is already using SurfaceTexture internally and it is parcelable. This is intended to replace and phase out ParcelSurfaceTexture in favor of creating a new Surface.java object from an existing SurfaceTexture. Change-Id: I8e2dd86614523da6abed6403e1d705a68fa19fdf
* | | SurfaceTexture: add the abandon method.Jamie Gennis2011-07-224-17/+166
| | | | | | | | | | | | | | | | | | | | | | | | This change adds the 'abandon' method to the SurfaceTexture C++ class. This method may be used to put the SurfaceTexture in an abandoned state, causing all ISurfaceTexture methods to fail. Change-Id: Ibd261f7b73f44e2bec36a8508bf92113cfb7cf95
* | | SurfaceTexture: add a deadlock scenario testJamie Gennis2011-07-221-4/+70
| |/ |/| | | | | | | | | | | | | This change adds a test to ensure that a GL driver that's blocking on a call to dequeueBuffer does not block other GL threads from rendering and queueing buffers. Change-Id: Ifdd234effc534b6a9cf8522ca87f64da5bb0bbd6
* | Merge changes I799532f7,I5cffa6ebJamie Gennis2011-07-223-22/+0
|\ \ | | | | | | | | | | | | | | | * changes: SurfaceTexture: fix a comment SurfaceTexture: remove getAllocator
| * | SurfaceTexture: remove getAllocatorJamie Gennis2011-07-213-22/+0
| |/ | | | | | | | | | | | | | | This change removes the SurfaceTexture::getAllocator method, as it's no longer needed. Proper refcounting of the Gralloc buffers is now handled by the IGraphicBufferAlloc binder marshalling code. Change-Id: I5cffa6ebfc1bc5828fb7ce0e0a5b2f55cd8479da
* | Fix a few issues with NATIVE_WINDOW_TRANSFORM_HINTMathias Agopian2011-07-211-0/+3
|/ | | | | | | | | - fixed uninitialized variable - set hint to indentity when transform is too complex - make sure FrameBufferNativeWindow doesn't fail on needed perform commands Bug: 4487161 Change-Id: I7cb2b0869b72404732eca7cb2d145ff669e2ed9b
* clean-up. get rid ofunused code and members in Surface[Control].cppMathias Agopian2011-07-204-78/+9
| | | | Change-Id: Ia7790ae28af2c2ac99eae01c2c5044ace4a490a4
* implement: "Add an ANativeWindow API for SurfaceFlinger to suggest an ↵Mathias Agopian2011-07-193-17/+44
| | | | | | | optimal buffer orientation" Bug: 4487161 Change-Id: I883f34efe542c2a566d04966f873374f40c50092
* use SurfaceTexture new scaling mode in SFMathias Agopian2011-07-192-2/+2
| | | | | | | SF now obeys SurfaceTexture's scaling mode instead of inferring it from the buffer's size Change-Id: I4d50e9851abedd7e64bfcfc8af9eefb9fb668529
* Add set_scaling_mode() to ANativeWindow.Mathias Agopian2011-07-193-0/+61
| | | | | | | This allows to specify the scaling mode independently from the buffer size. Change-Id: Iaa2baa660445531a97d3fac192e580f4929c5d3b
* Merge "SurfaceTexture: add a multi-SurfaceTexture test"Jamie Gennis2011-07-181-0/+86
|\
| * SurfaceTexture: add a multi-SurfaceTexture testJamie Gennis2011-07-111-0/+86
| | | | | | | | | | | | | | This change adds a test that does simple, unverified GL rendering to multiple SurfaceTextures. Change-Id: I51a41d68ae5a27e01ae93842242897b0d3558ca6
* | move lock/unlock implementaion outside of Surface into SurfaceTextureClientMathias Agopian2011-07-153-299/+254
| | | | | | | | | | | | | | | | | | | | This makes ANativeWindow_lock/ANativeWindow_unlockAndPost work with ANativeWindows implemented by Surface and SurfaceTextureClient. Also, Surface now inherits directly from SurfaceTextureClient. Bug: 5003724 Change-Id: I9f285877c7bae9a262e9a7af91c2bae78804b2ef
* | Merge "SurfaceTexture: fix SurfaceTextureGLToGLTest"Jamie Gennis2011-07-151-5/+30
|\ \
| * | SurfaceTexture: fix SurfaceTextureGLToGLTestJamie Gennis2011-07-141-5/+30
| |/ | | | | | | | | | | | | | | | | | | | | This change fixes a couple different issues in the SurfaceTextureGLToGLTest test fixture: - incorrect use of conditions - move logging after the locks are acquired - call the parent class's TearDown method - clean up the SurfaceTexture before eglTerminate gets called Change-Id: I6960e5ab7f144225f01a2089d3f849c99fed0b38
* | fix a typo in ISurfaceTexture IPC codeMathias Agopian2011-07-141-1/+1
| | | | | | | | Change-Id: Ied1d9ddb0d849b17219d0ea3d333ce12be849419