summaryrefslogtreecommitdiffstats
path: root/libs/gui
Commit message (Collapse)AuthorAgeFilesLines
...
* | Merge changes Id9aa1003,I8c154189Jamie Gennis2011-07-143-31/+85
|\ \ | | | | | | | | | | | | | | | * changes: SurfaceTexture: make (dis)connect into an IPC SurfaceTexture: add support for new connect values
| * | SurfaceTexture: make (dis)connect into an IPCJamie Gennis2011-07-143-37/+85
| | | | | | | | | | | | | | | | | | | | | | | | This change makes the ANativeWindow connect and disconnect calls result in an IPC to the SurfaceTexture object. This will allow us to prevent multiple simultaneous connections from different processes. Change-Id: Id9aa1003b1335b96ca6bd4a1f5a67aa433d42efb
| * | SurfaceTexture: add support for new connect valuesJamie Gennis2011-07-141-0/+6
| |/ | | | | | | | | | | | | This change adds support to SurfaceTextureClient for the new enum values that can be passed to the ANativeWindow connect call. Change-Id: I8c15418909e43a15673a9b22a5eb40df6923b273
* | Merge "Remove the simulator target from all makefiles. Bug: 5010576"Jeff Brown2011-07-122-8/+0
|\ \
| * | Remove the simulator target from all makefiles.Jeff Brown2011-07-112-8/+0
| |/ | | | | | | | | | | Bug: 5010576 Change-Id: I04d722f258951a3078fe07899f5bbe8aac02a8e8
* | EGL: fix the ANativeWindow size/fmt overrideJamie Gennis2011-07-111-5/+38
|/ | | | | | | | | | | | | | | | | | | This change fixes how the Android EGL layer overrides the size and format of an ANativeWindow in eglCreateWindowSurface. The new behavior is to leave the size untouched when overriding the format. The previous behavior was to reset the ANativeWindow to use the default size set by the ANativeWindow implementation. It also adds two new 'perform' methods to the ANativeWindow interface: set_buffers_dimensions and set_buffers_format, and redefines the behavior of set_buffers_geometry to be the combination of these two new methods. Additionally, this change adds an error check for the return value of the new native_window_set_buffers_format call, which required adding a (stub) handler for to FramebufferNativeWindow. Change-Id: I805c7ccd8d4730dfb132d10d8bc3fb058a0b9df1
* Merge "SurfaceTexture: enable newly passing tests."Jamie Gennis2011-07-071-8/+4
|\
| * SurfaceTexture: enable newly passing tests.Jamie Gennis2011-07-061-8/+4
| | | | | | | | | | | | | | | | | | | | This change enables the following four SurfaceTextures tests: UpdateTexImageBeforeFrameFinishedWorks UpdateTexImageAfterFrameFinishedWorks RepeatedUpdateTexImageBeforeFrameFinishedWorks RepeatedUpdateTexImageAfterFrameFinishedWorks Change-Id: I7632630bc97873e50d4a765ffc44a86f16ae62f1
* | fix ScreenshotsOfProtectedBuffersFailMathias Agopian2011-07-011-5/+17
| | | | | | | | | | | | | | | | | | | | - put the test window at the front most screen position - use RGBA_8888 which is a mandatory format - handle devices that don't support the protected usage flags Bug: 4950464 Change-Id: I0005fb667cfe094e5978816e2924b294c5ef817e
* | return an error code with gralloc buffer allocation failuresMathias Agopian2011-07-012-7/+12
|/ | | | Change-Id: I471e5d37ea7a42fc8a0f93446ee3b4229da37807
* Merge "Minor fix in SurfaceTexture"Pannag Sanketi2011-06-301-3/+8
|\
| * Minor fix in SurfaceTexturePannag Sanketi2011-06-301-3/+8
| | | | | | | | Change-Id: Ic859715becf3e6d5107bd8beb8c577034d00ec52
* | SF transactions are now O(1) wrt IPC instead of O(N).Mathias Agopian2011-06-296-357/+315
| | | | | | | | Change-Id: I57669852cbf6aabae244ea86940a08a5a27ffc43
* | SurfaceTexture: add a CPU -> GL sync test.Jamie Gennis2011-06-281-0/+176
| | | | | | | | | | | | | | | | | | | | | | This change adds a test to verify that proper synchronization is done when using SurfaceTexture to use CPU generated images as OpenGL ES textures in 'synchronous mode'. Synchronous mode is particularly tricky because SurfaceTexture will allow the buffer that's currently bound to the GL texture to be dequeued. We rely on Gralloc's lock function to block until this buffer is no longer being used by the OpenGL ES. Change-Id: I1c4e37f3e9d60ab9a0905a90a1f5060fda8e485c
* | SurfaceTexture: consume buffers after err checksJamie Gennis2011-06-271-14/+9
| | | | | | | | | | | | This change moves the point at which queued buffers get consumed to after any error checks that could cause updateTexImage to fail. This way, if updateTexImage returns an error the buffer remains queued.
* | SurfaceTexture: change onFrameAvailable behaviorJamie Gennis2011-06-271-11/+11
|/ | | | | | | | | | | | | | | | | | This change alters the conditions under which the onFrameAvailable callback gets called by the C++ SurfaceTexture class. The new behavior is to call the callback whenever a frame gets queued that will be visible to the buffer consumer. This means that buffers queued in synchronous mode always trigger the callback, as those buffers will remain pending until they are consumed. Buffers queued in asynchronous mode will only trigger the callback if there was not previously an unconsumed buffer pending. The new behavior means that a consumer should perform a draw operation exactly once for every onFrameAvailable call that it recieves. This change also modifies SurfaceFlinger and the SurfaceTexture JNI to support of the new behavior. Change-Id: I8b2c6e00961d3d58b11c6af50b555b6e4c5f5b40
* Add allowSynchronousMode to SurfaceTexture constructor.Grace Kloba2011-06-231-2/+6
| | | | Change-Id: I54f30a3c16bbe6b813f3bcd1d389da5627531304
* Add method to create a ParcelSurfaceTexture from android.view.Surface.tedbo2011-06-221-0/+4
| | | | Change-Id: I05e343ab7e327478f60322af9373574b70c148f5
* SurfaceTexture: make tests use a large framebuffer.Jamie Gennis2011-06-201-19/+25
| | | | | | | | | | This change makes the SurfaceTexture GL tests use a large (512x512) framebuffer. The tests now use glViewport to render to a region of the framebuffer with a size matching that of the texture being drawn. The Npot test pixel checks must be changed because now the rendered region is the same size as the texture. Change-Id: Icc41803189c25e33ba1da7d2470720f0a11f3e4b
* Merge "SurfaceTexture: fix a NULL ptr dereference."Jamie Gennis2011-06-201-9/+36
|\
| * SurfaceTexture: fix a NULL ptr dereference.Jamie Gennis2011-06-201-9/+36
| | | | | | | | | | | | | | | | | | This change adds a NULL check when searching the slot list in SurfaceTextureClient for the slot corresponding to a buffer being queued or canceled. Bug: 4645023 Change-Id: I806cbc1e34da118ea33a83c4f25ce8193ba1c3ad
* | SurfaceTexture: enable a test that now passes.Jamie Gennis2011-06-151-1/+1
| | | | | | | | | | | | This change enables the QueryFormatAfterSettingWorks. Change-Id: Ic868011a36a6c86c8646880246cd5b6960a13364
* | SurfaceTexture: enable a test that is now passing.Jamie Gennis2011-06-151-14/+10
|/ | | | | | This change enables the TexturingFromCpuFilledYV12BufferPow2 test. Change-Id: Ib356ee3d2f8979f34f849fd4090f598295e2e92e
* SurfaceTexture: increase the test's Surface layer.Jamie Gennis2011-06-141-1/+1
| | | | | | | | This change increases the Surface layer used for displaying the test results so that the tests will be visible over other windows in the system. Change-Id: I47f147f8743ff2a39d57d551811668371202bd31
* SurfaceTexture: add some RGBA_8888 tests.Jamie Gennis2011-06-141-21/+228
| | | | Change-Id: Id09915c98a00eca1209b7dab32039a06d260908e
* SurfaceTextureClient: minor test refactoring.Jamie Gennis2011-06-141-213/+179
| | | | Change-Id: Iabc6d27ca35d30d896c6aef65c4f1b5a1eed47b8
* Merge "SurfaceTexture: add a format querying test."Jamie Gennis2011-06-141-0/+25
|\
| * SurfaceTexture: add a format querying test.Jamie Gennis2011-06-131-0/+25
| | | | | | | | | | | | | | | | This change adds a test to verify that querying the format of a SurfaceTextureClient immediately after setting it returns the correct result. The test is currently disabled because it does not pass. Change-Id: I5bddb39c5bf96d6104624094383d410ed913e9f3
* | Merge changes I9b8e1962,I7bb843caMathias Agopian2011-06-1310-1418/+90
|\ \ | | | | | | | | | | | | | | | * changes: Temporarily don't return the current buffer in synchronous mode unify SurfaceTexture and Surface
| * | Temporarily don't return the current buffer in synchronous modeMathias Agopian2011-06-132-4/+4
| | | | | | | | | | | | activate synchronous mode by default.
| * | unify SurfaceTexture and SurfaceMathias Agopian2011-06-138-1414/+86
| |/ | | | | | | | | | | | | Add the concept of synchronous dequeueBuffer in SurfaceTexture Implement {Surface|SurfaceTextureClient}::setSwapInterval() Add SurfaceTexture logging fix onFrameAvailable
* | SurfaceTexture: disable a deadlocking test.Jamie Gennis2011-06-131-1/+2
| | | | | | | | | | | | | | This change disables the UpdateTexImageAfterFrameFinishedWorks test because it's currently causing deadlocks on some devices. Change-Id: Ic9186db207e8d656f3af5d86fa138c7d96393c55
* | SurfaceTexture: add a pixel tolerance to the tests.Jamie Gennis2011-06-131-5/+9
|/ | | | | | | This change adds a default tolerance of 2 to all the pixel value checks in the SurfaceTexture tests. Change-Id: Id5a7cdffdfae16076e2daf4964a3326105b5ae2c
* SurfaceTexture: add some GL->GL tests.Jamie Gennis2011-06-131-0/+268
| | | | | | | | | | This change adds some tests to verify streaming images from one GL thread to another via SurfaceTexture. Currently the tests do not validate the correctness of the streamed images, but rather simply verify that this streaming does not cause a deadlock. 3 of the 4 tests are currently disabled because they do cause deadlocks on some devices. Change-Id: I5677942053190063b97f370dba96c116711bc3bb
* SurfaceTexture: add getTransformMatrix tests.Jamie Gennis2011-06-131-0/+108
| | | | | | | | | | | This change adds a test verifying that with no transform set on the SurfaceTextureClient, the SurfaceTexture will return an identity transform matrix. It also verifies this same effect in the presence of an additional call to native_window_set_buffer_count just before the call to getTransformMatrix. Bug: 4490420 Change-Id: Ic5adfa29b5696cc2b451433834e3758ef20c5edd
* SurfaceTexture: fix a getTransformMatrix crash.Jamie Gennis2011-06-131-2/+8
| | | | | | | | | | | | This change moves the computation of the transform matrix out of getTransformMatrix and instead performs the computation when updateTexImage gets called. This is needed in order for getTransformMatrix to succeed even if the buffers have been freed (e.g. by changing the buffer count) because the computation depends upon the properties of the current GraphicBuffer. Change-Id: Ied541ab8747b7ad604f862717135f9a16a816be9 Bug: 4490420
* 9-axis sensor fusion with Kalman filterMathias Agopian2011-05-271-0/+8
| | | | | | | Add support for 9-axis gravity and linear-acceleration sensors virtual orientation sensor using 9-axis fusion Change-Id: I6717539373fce781c10e97b6fa59f68a831a592f
* SurfaceTexture: disable a failing test.Jamie Gennis2011-05-251-1/+3
| | | | | | | | The SurfaceTextureSyncModeWaitRetire test was disabled. It is failing because of the synchronization hacks that were added to SurfaceTexture to work around bugs in vendor device drivers. Change-Id: I09a74538bfe14a04833acb6847471e00826cc7fc
* SurfaceTexture: fix an error check in dequeueBuffer.Jamie Gennis2011-05-252-10/+21
| | | | | | | | | | | This change fixes the MIN_UNDEQUEUED_BUFFERS error check in dequeueBuffer. The check should only be performed if a buffer has been queued since the last time the buffer count was changed by the client. The check must be applied conditionally because video decoders require all the bufferes to be dequeued and registered before beginning the decode. Change-Id: I08d96b380544e395c2fcf0f3983a199bfd695b09
* SurfaceTexture: clean up some comments, tests, etc.Jamie Gennis2011-05-253-47/+48
| | | | | | | This change fixes up some stale comments, member variable names, log messages and disables a failing test. Change-Id: Ic1d3344b18066cf710e4a42838b2417c6b1f2f6c
* Disable error report temporarily to enable inline videoTeng-Hui Zhu2011-05-181-1/+2
| | | | | | bug:4435022 Change-Id: I06f05a4781ad432ab71db93f0815eb89cd2e7a69
* fix onFrameAvailableMathias Agopian2011-05-111-4/+20
| | | | Change-Id: I391fe9f6684ac9fd4f91416ce18b583f7087d966
* Add SurfaceTexture loggingMathias Agopian2011-05-111-0/+65
| | | | Change-Id: If1b74be5230813fb76429935d88b9d4a7c41700c
* Implement {Surface|SurfaceTextureClient}::setSwapInterval()Mathias Agopian2011-05-114-39/+202
| | | | Change-Id: I8382e346ddaa2c4c8ff56ac3ffd7f0109572f188
* new tests for SurfaceTexture synchronous modeMathias Agopian2011-05-111-0/+263
| | | | Change-Id: Icfdaa625238246f8d0224efe28fdf2c1c24203f8
* Add the concept of synchronous dequeueBuffer in SurfaceTextureMathias Agopian2011-05-111-49/+134
| | | | Change-Id: Ic94cbab092953243a0746e04bbe1b2eb0cc930ef
* unify SurfaceTexture and SurfaceMathias Agopian2011-05-114-17/+54
| | | | Change-Id: I49da2f5d8408e4cd7e148cfb777bb4ff68cd8f37
* Fix a bug where setgeometry couldn't be undoneMathias Agopian2011-05-113-65/+59
| | | | | | | | | | | | | | | | | This change the binder protocol between SurfaceTextureClient and SurfaceTexture. dequeueBuffer() now takes the requested parameters for the buffer. SurfaceTexture decides if the buffer needs to be reallocated and does the allocation if needed. In that case it returns BUFFER_NEEDS_REALLOCATION to tell SurfaceTextureClient that it needs to call requestBuffer (which all parameters have been removed) to acquire a pointer to the buffer. dequeueBuffer and requestBuffer could be folded into a single IPC call, but we chose to optimize the case where buffers are not created and avoid some complexity in the marshalling code. Change-Id: I097a7f6f40a3491e10f3f3742eab33999286c304
* frameworks/base: android_native_buffer_t -> ANativeWindowBufferIliyan Malchev2011-05-035-27/+27
| | | | | Change-Id: Idc2eabaa805bb6d308ebb315872623f28d428417 Signed-off-by: Iliyan Malchev <malchev@google.com>
* frameworks/base: make the ANativeWindow query() method constIliyan Malchev2011-05-032-6/+7
| | | | | | | query() does not modify the object's data, so it needs to be a const method Change-Id: I67c40a3c865461e6f1cc2193fd2d74286ff6ac8f Signed-off-by: Iliyan Malchev <malchev@google.com>