6a26be7c2b1e5a84b5d2105780148016889285e6 |
23-Jan-2015 |
Lajos Molnar <lajos@google.com> |
CpuConsumer: lock buffers that could be YUV as ycbcr Bug: 17906609 Change-Id: Ic71af69ec3b19ab1224ed3ad5e0a97c60e81cda6
puConsumer.cpp
|
98d20f82ca8979b30c81df9639f54ab11e1951f9 |
07-Nov-2014 |
Dan Stoza <stoza@google.com> |
Merge "Add a BufferItem parameter to onFrameAvailable" into lmp-mr1-dev
|
8dc55396fc9bc425b5e2c82e76a38080f2a655ff |
04-Nov-2014 |
Dan Stoza <stoza@google.com> |
Add a BufferItem parameter to onFrameAvailable Passes the BufferItem for the queued buffer to the onFrameAvailable callback so the consumer can track the BufferQueue's contents. Also adds an onFrameReplaced callback, which is necessary if the consumer wants to do anything more than simple queue length tracking. Bug: 18111837 Change-Id: If9d07229c9b586c668e5f99074e9b63b0468feb0
ufferItem.cpp
ufferQueue.cpp
ufferQueueProducer.cpp
onsumerBase.cpp
ConsumerListener.cpp
treamSplitter.cpp
ests/BufferQueue_test.cpp
ests/DisconnectWaiter.h
ests/FrameWaiter.h
ests/IGraphicBufferProducer_test.cpp
ests/StreamSplitter_test.cpp
ests/SurfaceTextureGLThreadToGL.h
|
de288fe2d43adfa1b2243ae534faaf832bf50491 |
04-Nov-2014 |
Jesse Hall <jessehall@google.com> |
Revert "bufferqueue: workaround: allow NULL fence with queueBuffer" Underlying bug has been fixed, workaround no longer needed This reverts commit 5b0cbcf9464dbcda9d19ae978911222806ec8bdc. Change-Id: Ic9532b407d1291a7780a12a75aaa117ae4aa9fcb
ufferQueueProducer.cpp
|
8afa1c4ab86d724feb7716e153b7835385534590 |
31-Oct-2014 |
Michael Lentine <mlentine@google.com> |
Fix crash when user provides large values in the Parcel. Bug: 18102648 Change-Id: Ie6a24718e586a34424238363de80f9545951514f
SurfaceComposer.cpp
ayerState.cpp
|
1834f8ea975e9a882b44dc479320fe02e306e630 |
06-Aug-2014 |
Jesse Hall <jessehall@google.com> |
GLConsumer: correct EGL_NO_DISPLAY to EGL_NO_CONTEXT Change-Id: I4dcb57a0db9ee3c5222cd453c9213859384212b0 (cherry picked from commit 46a1f6b40e1f7677cd41cd30f729ff66c7c21517)
LConsumer.cpp
|
dcc959beb77099d319a94e3985da2f4ea4064e7b |
21-Oct-2014 |
Michael Lentine <mlentine@google.com> |
Merge "Adding eglInitialize and eglTerminate image creation and deletion." into lmp-mr1-dev
|
a069e8532ba272ac5b935e332e426a3dacf827fc |
20-Oct-2014 |
Jesse Hall <jessehall@google.com> |
am 649bafb7: Merge "bufferqueue: workaround: allow NULL fence with queueBuffer (DO NOT MERGE)" into lmp-dev * commit '649bafb7ba2c3204295bc3451ff7af7e28e714ed': bufferqueue: workaround: allow NULL fence with queueBuffer (DO NOT MERGE)
|
5b0cbcf9464dbcda9d19ae978911222806ec8bdc |
19-Oct-2014 |
Jesse Hall <jessehall@google.com> |
bufferqueue: workaround: allow NULL fence with queueBuffer (DO NOT MERGE) On one device there is a bug, not yet root-caused, that causes fence fds to not make it across binder from producer to consumer in the IGraphicBufferProducer::queueBuffer call. Rather than returning an error, which the producer typically treats as a fatal error, this change allows the buffer to be queued with no fence. This avoids an application crash at the risk of (likely single-frame) visible corruption. Bug: 17946343 Change-Id: I9ca89f94098c455e1e90f5f58d5336c936b04a9c
ufferQueueProducer.cpp
|
78be65e7bf6898c6afa55c9016f331ab1aa2503a |
02-Oct-2014 |
Michael Lentine <mlentine@google.com> |
Adding eglInitialize and eglTerminate image creation and deletion. Previously it was possible to have the driver's eglTerminate called beofre eglDestroyImageKHR in GLConsumer. This was because we didn't increment the refcount for the lifetime of the image. This could lead to a crash or a deadlock when multiple threads called terminate and destroy simultaneously. Bug: 17700483 Change-Id: I7010d0f1b3db875332e95630b5e098a5564ba755
LConsumer.cpp
|
b7702c5ce7f010fa5f19646fd79f28ff04e7014b |
08-Oct-2014 |
Jesse Hall <jessehall@google.com> |
Merge "BufferQueueProducer: Throttle EGL frame production." into lmp-mr1-dev
|
99a0afbaee9eddabc2b544e3a5c432901c1d498c |
30-Sep-2014 |
Eric Penner <epenner@google.com> |
BufferQueueProducer: Throttle EGL frame production. Throttling was previously controlled by a combination of the driver and the number of buffers in the queue. This patch makes a more consistent trade-off, which allows two GPU frames pending but not three. More buffering could improve throughput in the case of varying frame times, but this also increases latency. Bug: 17502897 Change-Id: I4ee68019ca94c635294c5959931a555a6c4ef2df
ufferQueueProducer.cpp
|
a7eb4b74f74423dafd88adf94a7984ae927c3a23 |
03-Oct-2014 |
Aravind Akella <aakella@google.com> |
Merge "Fix sockfd leakage in SensorService." into lmp-dev
|
8a96955c8e14db40b16164236830fc9506a00872 |
29-Sep-2014 |
Aravind Akella <aakella@google.com> |
Fix sockfd leakage in SensorService. i) Call removeFd() only if the fd in the BitTube has been previously added to the Looper. Use a flag to determine whether the fd has been previously added or not. ii) Increment mPendingFlushEventsToSend after holding a connectionLock. iii) Store the number of acks that are pending in SensorEventQueue and send them all at once. Bug: 17472228 Change-Id: I1ec834fea1112a9cfbd9cddd2198438793698502
ensorEventQueue.cpp
|
9f5a1b6abd5d77923bf5e0f1c5e2816fdee832c2 |
02-Oct-2014 |
Jesse Hall <jessehall@google.com> |
Surface: cancel the dequeued buffer when requestBuffer fails Partial fix for bug: 17477219 Change-Id: Ibf5a9e26e02c4be8854925a77a70f5c9c7dcf6f2
urface.cpp
|
67d8bd66aaf04805cb8f2616ba964141b865e3b9 |
11-Sep-2014 |
Lajos Molnar <lajos@google.com> |
surfaceflinger: add getDisplayStats() method This is used by media service to schedule video frames at the proper time, based on precise vsync timings. Bug: 14659809 Change-Id: I1a90603f3dc09dca9aa4f90a3aa845fab56e0a5e
SurfaceComposer.cpp
|
8493b79e1cff92450076ca7450c4bf4e434a6816 |
09-Sep-2014 |
Aravind Akella <aakella@google.com> |
SensorService fixes i) Significant Motion multiple clients fix. Make a copy of mActiveConnections vector before cleaning up SensorEventConnections when one-shot sensors trigger. ii) Maintain a mapping between flush_complete_events and SensorEventConnections to accurately map flush() API calls and corresponding flush_complete_events iii) Remove all references to 1_1 and 1_2 HALs. iv) Dynamically allocate sensor_event buffers in SensorService main threadLoop. Bug: 17412359 Change-Id: If3c3986197660cafef2d2e0b4dc7582e229cf1c4
ensor.cpp
|
d15ef27f9b13727fa7358e3c09572f66bb1e0668 |
05-Sep-2014 |
Riley Andrews <riandrews@google.com> |
Update ScreenshotClient to take advantage of rotation in surfaceflinger's screencap api Change-Id: I836649d9d5cd5958ce34e47f26f4a36d2d05d24c
urfaceComposerClient.cpp
|
c3ebe66b49cfba035e1fd0e160a13db38eb81b0e |
05-Sep-2014 |
Riley Andrews <riandrews@google.com> |
Add rotation to surfaceflingers screen cap. + This is needed so that activity manager does not have to do cpu side rotations when capturing recents thumbnails. Change-Id: If998008e675ad01305db8399fd643cf4608b7025
SurfaceComposer.cpp
|
2d14a0ed4f5861bfa67e9db138ffdc70d2d5e6e4 |
26-Aug-2014 |
Eric Penner <epenner@google.com> |
GLConsumer: Fix eglTerminate/eglInit edge case. If a display is terminated and then initialized, we can't detect this using the display itself (it has the same value), but all EglImages still become invalid for the display. This patch detects this during image binding and forces creation of a new EglImage. Bug: 10430249 Change-Id: I75101c50962f21263dca3ec6e241a2e5a3c23dad
LConsumer.cpp
ests/SurfaceTextureMultiContextGL_test.cpp
|
d53e052322c658ce7c67b046caaeee4babc0a657 |
19-Aug-2014 |
Riley Andrews <riandrews@google.com> |
Within CpuConsumer, use gralloc lockAsync/unlockAsync Change-Id: I6b2cd195e111c3c7bf94c8052af4db92e09649a5
puConsumer.cpp
|
7d1cd4aae2aa42172abdff00ec1601248cf92b02 |
09-Aug-2014 |
Rachad <rachad@google.com> |
Merge "Tunneled Video Playback support" into lmp-dev
|
45e2fc22261cb8ecac4901b4425bcb7352c71174 |
08-Aug-2014 |
Michael Lentine <mlentine@google.com> |
Revert "Modify EGL to disconnect the window when the surface gets destroyed." This reverts commit 843cbb241da60ada234918a30cfe9a01a1e04187.
ufferQueueProducer.cpp
|
b37ba399c1521c3eba40e126f65d9663532de446 |
05-Aug-2014 |
Aravind Akella <aakella@google.com> |
Sensor related changes for NDK. i) ASensorManager_getDefaultSensor returns a wake-up/non wake-up sensor depending on the type. ii) Add ASensor_isWakeUpSensor and ASensorManager_getDefaultSensorEx methods. Bug : 16399898 Change-Id: I1a86fb8d9de23039fdf41679d1487e1cd761a9d0
ensorManager.cpp
|
7cb0d39016ff8061fe9fc2967870c145a6ffa2ac |
30-Jul-2014 |
Rachad <rachad@google.com> |
Tunneled Video Playback support Added native_window_set_sideband_stream() method to Surface.[h|cpp] Added ConfigureVideoTunnelModeParams OMX configuration structure to HardwareAPI.h Bug: 16132368 Change-Id: I28fa1b9dbe858d93e353e0991098cad45c626bd9
urface.cpp
|
64ffcb0944db2cc523374f550fe1535dfe3eedd6 |
29-Jul-2014 |
Aravind Akella <aakella@google.com> |
Sensor.cpp changes. 1) Rename TILT_DETECTOR 2) Set mFlags correctly for wake-up sensors. 2) Log errors for incorrect sensor flags. Change-Id: Ia449217d3b8a53353ad6b5c33c544ce37eb1de4f
ensor.cpp
|
47e45405d1533aa73307014f7bf371e118695cf3 |
19-Jul-2014 |
Michael Lentine <mlentine@google.com> |
Allow for resizing of Virtual Displays. Modify SurfaceFlinger to use VirtualDisplaySurface in all cases when a virtual display is used. Add functionality in VirtualDisplaySurface to resize the buffers aquired in the QueueBufferOutput. Add transaction support in SurfaceFlinger for resize. Add the modification of the size in DisplayDevice. Change-Id: Iae7e3556dc06fd18d470adbbd76f7255f6e6dd6b Tested: None
ayerState.cpp
|
1f6078aef71b1d3f080cd565adbec350c71088dd |
27-Jun-2014 |
Michael Wright <michaelwr@google.com> |
Have VirtualDisplays send SF resize messages when resizing Change-Id: I76d15b22099a659450ec875836c9bf2b6584838f
urfaceComposerClient.cpp
|
cd36eb445bcc55c88e157584d9ac229280459463 |
30-Jul-2014 |
Michael Lentine <mlentine@google.com> |
Merge "Modify EGL to disconnect the window when the surface gets destroyed." into lmp-dev
|
843cbb241da60ada234918a30cfe9a01a1e04187 |
23-Jul-2014 |
Michael Lentine <mlentine@google.com> |
Modify EGL to disconnect the window when the surface gets destroyed. Bug: 14445579 Change-Id: I1d263ff6cffcb6e448761fca7ca4b06466ad65aa
ufferQueueProducer.cpp
|
fd8498c41e8904e3636e47cf81466d439aed46a8 |
29-Jul-2014 |
Aravind Akella <aakella@google.com> |
Remove WAKE_UP_* sensor constants. Change-Id: I3de9d114ce82de4ed841932747d72e1f6f73c24f
ensor.cpp
|
11f14871db607718090ae6aa2e5dee3f490b8830 |
26-Jul-2014 |
Antoine Labour <piman@google.com> |
BufferQueueProducer: fix which slot gets pre-allocated Commit 78014f32da6d0ebf52fb34ebb7663863000520a0 introduced a bug that made us pre-allocate buffers into the last available free slots instead of the first available ones. This in turn caused more re-allocations, and possibly triggered driver bugs. Change-Id: Ic4a70e676b4f2bbb054bc873be62ced26e3099a0
ufferQueueProducer.cpp
|
c268068c55afaaa441fda903b1b84a5b5c8a0a01 |
25-Jul-2014 |
Aravind Akella <aakella@google.com> |
Merge "SensorService performance improvements." into lmp-dev
|
56ae42613c91f6a6fb0dc3f626daa24666fd18c2 |
11-Jul-2014 |
Aravind Akella <aakella@google.com> |
SensorService performance improvements. i) Send ack for wake_up sensors on the socket connection instead of using Binder RPC. ii) Cache events per connection in case there are write failures. Compute cache size from FIFO counts of sensors. iii) Send FlushCompleteEvent only for apps that explicitly called flush(). Change-Id: I018969736b7794b1b930529586f2294a03ee8667
itTube.cpp
SensorEventConnection.cpp
ensorEventQueue.cpp
|
2295687487a0f2cc3e77915d5b0fe794d3af4d20 |
24-Jul-2014 |
Eric Penner <epenner@google.com> |
Merge "GLProducer: Reference count images rather than buffers." into lmp-dev
|
78014f32da6d0ebf52fb34ebb7663863000520a0 |
16-Jul-2014 |
Antoine Labour <piman@google.com> |
BufferQueue: release mutex while allocating. DO NOT MERGE BufferQueueProducer::allocateBuffers used to keep the BufferQueueCore mutex while doing the buffer allocation, which would cause the consumer (which also needs the mutex) to block if the allocation takes a long time. Instead, release the mutex while doing the allocation, and grab it again before filling the slots. Keep a bool state and a condvar to prevent other producers from trying to allocate the slots while the mutex is released. Bug: 11792166 Change-Id: I4ab1319995ef892be2beba892f1fdbf50ce0416d (cherry picked from commit ea96044470a29133321c681080870b9d31f81a19)
ufferQueueCore.cpp
ufferQueueProducer.cpp
|
5c3d243fcca6d0678bcbb0461bbbe0b63f35212c |
12-Jul-2014 |
Eric Penner <epenner@google.com> |
GLProducer: Reference count images rather than buffers. In most cases, EGLImages can be created one-to-one with graphic buffers in slots, but that was difficult due to some special cases: - ReleaseTexImage binds a custom 'unslotted' debug image. - When all slots are freed, we still need to hang on to one. These cases were handled by keeping an additional reference to the 'current' buffer (mCurrentTextureBuf), but we would create new images since we can't reference count them in the same way. This patch uses the same semantics, except that it reference counts the image (an EglImage wrapper class) rather than just buffer. The wrapper class also detects the cases when we need a new EGLImage, and only creates them in those rare cases. Change-Id: I2915761dbe49d2a9bda1f59e60f857543634636b
LConsumer.cpp
|
31d825d7edcaac7254f310d3cf85af9fc1927c25 |
18-Jul-2014 |
Jeff Brown <jeffbrown@google.com> |
Add glance gesture for doze mode. Change-Id: I038a706c3999200313ff5360c5ff1150ec081f08
ensor.cpp
|
1681d95989271f3a9ac0dbb93d10e4a29f2b4444 |
28-Jun-2014 |
Ruben Brunk <rubenbrunk@google.com> |
Add sticky transform to surfaceflinger. Bug: 15116722 - Adds a sticky transform field that can be set from a SurfaceFlinger client Surface. This transform is added to any transform applied to the Surface. Change-Id: Idaa4311dfd027b2d2b8ea5e2c6cba2da5779d753
ufferQueueProducer.cpp
GraphicBufferProducer.cpp
urface.cpp
|
dc56bf721a9f29621fd57e1d861142fa9b2d3663 |
30-Jun-2014 |
Dan Stoza <stoza@google.com> |
Merge "BufferQueue: Add allocateBuffers method"
|
ab57491de3a89a2d454d3060d36adef71741a7ae |
25-Jun-2014 |
Dan Stoza <stoza@google.com> |
GLConsumer: Allow creation in detached mode Adds a constructor that doesn't require a GLES texture name and sets up the GLConsumer in detached mode. Bug: 15616428 Change-Id: Idc9ea2e59baa24bbd959da9fffe0fb71c0aa9818
LConsumer.cpp
|
e49ba8e2ed8e17156eb00c8fc8e2285df62bc018 |
24-Jun-2014 |
Dan Stoza <stoza@google.com> |
GLConsumer: Stop using default constructor params Removes the dependency on default constructor parameters for GLConsumer so that a different constructor prototype can safely be added. Change-Id: I0da924bbd4c141edbf305598c1be8bc575654680
ests/MultiTextureConsumer_test.cpp
ests/SurfaceTextureClient_test.cpp
ests/SurfaceTextureGL.h
|
29a3e90879fd96404c971e7187cd0e05927bbce0 |
20-Jun-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Add allocateBuffers method This adds an allocateBuffers method to BufferQueue, which instructs it to allocate up to the maximum number of buffers allowed by the current configuration. The goal is that this method can be called ahead of render time, which will prevent dequeueBuffers from blocking in allocation and inducing jank. This interface is also plumbed up to the native Surface (and, in another change, up to the Java Surface and ThreadedRenderer). Bug: 11792166 Change-Id: I4aa96b4351ea1c95ed5db228ca3ef98303229c74
ufferQueueProducer.cpp
GraphicBufferProducer.cpp
urface.cpp
|
adb65d9add2b7350b563d4583c5efbe3f0f0aca1 |
13-Jun-2014 |
Aravind Akella <aakella@google.com> |
Merge "Surface reportingMode for Sensors."
|
0e025c5af365e45e02cb75c1d46b46c7f4cd44cb |
04-Jun-2014 |
Aravind Akella <aakella@google.com> |
Surface reportingMode for Sensors. Change-Id: Iac8dd3408c90eb7d285a2e8043131fab3a7e58fa
ensor.cpp
|
7227b96a73aaca975df0a04613f317e6f42545ed |
12-Jun-2014 |
Prashant Malani <pmalani@google.com> |
Merge "surfaceflinger: Replace blank/unblank with setPowerMode"
|
55fc54970b674280376bbf037153ca1a5e53bc32 |
11-Jun-2014 |
Mark Salyzyn <salyzyn@google.com> |
am 72676e7d: am 0e1313cd: Merge "libgui: 64-bit compile issues" * commit '72676e7d0db89d477495245aa15f1a128b5c35bc': libgui: 64-bit compile issues
|
8f515ce1c57379cafac4357bc4fdb61dd346ec5f |
09-Jun-2014 |
Mark Salyzyn <salyzyn@google.com> |
libgui: 64 bit compile issues (part deux) - nsecs_t printed with PRId64 - int64_t/uint64_t print issues - some size_t printing issues. - missing argument to BQ_LOGV Change-Id: I493f2b578e801dc38c44f8c536faa45266720402
ufferQueueConsumer.cpp
ufferQueueCore.cpp
ufferQueueProducer.cpp
ensor.cpp
treamSplitter.cpp
|
72676e7d0db89d477495245aa15f1a128b5c35bc |
09-Jun-2014 |
Mark Salyzyn <salyzyn@google.com> |
am 0e1313cd: Merge "libgui: 64-bit compile issues" * commit '0e1313cdb1d5d21e4d6123f77b4238f1c8c2d564': libgui: 64-bit compile issues
|
911004506dcb6ee68efdfd6636e0ffc72e6972b8 |
09-Jun-2014 |
Mark Salyzyn <salyzyn@google.com> |
libgui: 64-bit compile issues Change-Id: I29961c1567b8431518a7d032ea43385e23b7bb37
itTube.cpp
onsumerBase.cpp
|
2c9b11f0291210c9b9513a1a0cce6afebd361b3b |
25-May-2014 |
Prashant Malani <pmalani@google.com> |
surfaceflinger: Replace blank/unblank with setPowerMode We replace the blank/unblank calls in surfaceFlinger with a more generic setPowerMode() routine. Some displays support different power modes (for example, with reduced color palettes). Depending on the use case we should be able to toggle these modes, so as to achieve incremental power savings. Initially, three power modes will be supported: - HWC_POWER_MODE_OFF - HWC_POWER_MODE_DOZE - HWC_POWER_MODE_NORMAL HWC_POWER_MODE_OFF will correspond to blanking the display, while HWC_POWER_MODE_NORMAL will correspond to unblanking. HWC_POWER_MODE_DOZE will put the display into a low power setting, if it is supported in hardware. If such a low power mode is not supported, it should be treated as a call to set the mode to HWC_POWER_MODE_NORMAL. As a consequence of adding the mPowerMode field, the mScreenAcquired is no longer required, and thus references to it are removed and replaced equivalent references to mPowerMode. We also add the glue code to connect the services invocation of setting a power mode and the HAL implementation in HWComposer. Bug: 13472578 Change-Id: I431595ecf16d2f2c94259272db3dd42f29636204 Signed-off-by: Prashant Malani <pmalani@google.com>
SurfaceComposer.cpp
urfaceComposerClient.cpp
|
403ec9f15a9cf2fedea2e2e0a24421dc30625140 |
30-May-2014 |
Narayan Kamath <narayan@google.com> |
Fix flattening/unflattening of android::Sensor. Write string lengths as uint32_t so that their width is the same on 32 and 64 bit processes. Note that this fixes another bug as a side effect; getFlattenedSize was assuming that sizeof(uint32_t) == sizeof(size_t). Change-Id: I7b6e3993e1f1ac45c14832ce59c59e0772855a2f
ensor.cpp
|
3d5c8a98c1822e5f32f0b7e82a40f14f41769878 |
28-May-2014 |
Dan Stoza <stoza@google.com> |
Merge "SurfaceFlinger: Add sourceCrop to screenshot"
|
d9441e4c27bb7d0b1dfe2a8b5c1ee1714442648d |
14-May-2014 |
Aravind Akella <aakella@google.com> |
Surface maxDelay and isWakeUpSensor flag in Sensor.java. Change-Id: Idd1e9045190beeca87b086b272e8cbf0bed05bae
ensor.cpp
|
c18790018be5d7ea7061ccbc81f3044e74adc823 |
23-May-2014 |
Dan Stoza <stoza@google.com> |
SurfaceFlinger: Add sourceCrop to screenshot Adds a sourceCrop Rect parameter to screenshot commands, which allows clients to capture only a portion of the screen instead of the whole screen. Bug: 15137922 Change-Id: I629447573cd34ffb96334cde7ba02490b9ea06d8
SurfaceComposer.cpp
urfaceComposerClient.cpp
ests/Surface_test.cpp
|
d763fc7822e7ab1eb593d479c0354a6bcdb6f09f |
13-May-2014 |
Aravind Akella <aakella@google.com> |
am 47d871b2: am d35e3af0: Set default values for FifoMaxEventCount and ReservedEventCount. * commit '47d871b2795f714499a34ffe85b67f8577883f7b': Set default values for FifoMaxEventCount and ReservedEventCount.
|
47d871b2795f714499a34ffe85b67f8577883f7b |
13-May-2014 |
Aravind Akella <aakella@google.com> |
am d35e3af0: Set default values for FifoMaxEventCount and ReservedEventCount. * commit 'd35e3af04d4b7e850a3b87b2211d1a3993f9b76f': Set default values for FifoMaxEventCount and ReservedEventCount.
|
d35e3af04d4b7e850a3b87b2211d1a3993f9b76f |
13-May-2014 |
Aravind Akella <aakella@google.com> |
Set default values for FifoMaxEventCount and ReservedEventCount. Change-Id: I4f610c2912ffe1697d1ffb99c556d1c88578466e
ensor.cpp
|
f63cbbf0e43e68b5e0855252d2ff90faa28109b3 |
12-May-2014 |
Etienne Le Grand <etn@google.com> |
Merge "Add wake gesture in Sensor.cpp"
|
f974bffb36a97d21432a504a741330c4f4245746 |
12-May-2014 |
Greg Hackmann <ghackmann@google.com> |
am 38c9e132: am c1ffd351: am bd20e551: Merge "Use asynchronous lock/unlock API" * commit '38c9e1327a5b24267c3dab5293bc9d7ada6e9fc9': Use asynchronous lock/unlock API
|
38c9e1327a5b24267c3dab5293bc9d7ada6e9fc9 |
12-May-2014 |
Greg Hackmann <ghackmann@google.com> |
am c1ffd351: am bd20e551: Merge "Use asynchronous lock/unlock API" * commit 'c1ffd351bc44483369271c11dd4c6391bba8c64c': Use asynchronous lock/unlock API
|
8f3960179c56767e5077be8337792bd4e244b7d7 |
01-Apr-2014 |
Francis Hart <fhart@nvidia.com> |
Use asynchronous lock/unlock API The gralloc API now provides a way for using lock/unlock with the Android explicit synchronisation concept. This changes updates the GraphicBuffer class to also expose this functionality, and updates the Surface class to make use of in line with the dequeueBuffer/queueBuffer mechanism. This new behaviour is dependent on GRALLOC_MODULE_API_VERSION_0_3. If the local gralloc module does not support this then the existing synchronous lock/unlock mechanism will be used. Change-Id: I8c3fd9592e0c5400ac9be84450f55a77cc0bbdc5
urface.cpp
|
2f3dca149a2bcae96f18e38f7ba99a95c3e1b08c |
10-May-2014 |
Greg Hackmann <ghackmann@google.com> |
am 9493d492: am 9eb142e3: am a9d49f99: Merge "Revert "Use asynchronous lock/unlock API"" * commit '9493d4924a59f14b698389386337a9c07a7ea3c4': Revert "Use asynchronous lock/unlock API"
|
02528cf6aaedbbfec55be57d33389e1c57d88245 |
09-May-2014 |
Greg Hackmann <ghackmann@google.com> |
am 4b46776f: am 8a6cd189: am f60564a1: Merge "Use asynchronous lock/unlock API" * commit '4b46776ff88c5a365700b88e8b2b04e1b2c77e6e': Use asynchronous lock/unlock API
|
9493d4924a59f14b698389386337a9c07a7ea3c4 |
09-May-2014 |
Greg Hackmann <ghackmann@google.com> |
am 9eb142e3: am a9d49f99: Merge "Revert "Use asynchronous lock/unlock API"" * commit '9eb142e34a5bc11508c0bd6f60ad3933c60aa530': Revert "Use asynchronous lock/unlock API"
|
53ec72523a4083b88eaa13e2e720976523a7ebf8 |
09-May-2014 |
Greg Hackmann <ghackmann@google.com> |
Revert "Use asynchronous lock/unlock API" This reverts commit 378ef07760eda717367d9429428c42d54d54d9a7. Change-Id: I1de5ab973b5383633e75924fe90ac3ca8216c36a
urface.cpp
|
4b46776ff88c5a365700b88e8b2b04e1b2c77e6e |
09-May-2014 |
Greg Hackmann <ghackmann@google.com> |
am 8a6cd189: am f60564a1: Merge "Use asynchronous lock/unlock API" * commit '8a6cd189034ec4709a66e581b41deba56c028291': Use asynchronous lock/unlock API
|
e284a90f5027aed767ff10a31640a9cd9b974838 |
08-May-2014 |
Etienne Le Grand <etn@google.com> |
Add wake gesture in Sensor.cpp Change-Id: Ifb1744acffc2d57da43112fb9966261e8246d6de
ensor.cpp
|
7f7da32569f8e0b3d383a40b95f8ac1d55afd801 |
03-May-2014 |
Dan Stoza <stoza@google.com> |
Enable changing display configuration This allows querying and switching display device configurations through the ISurfaceComposer/SurfaceComposerClient interface. Bug: 14320401 Change-Id: I8c22165698950e5da32204c1c4da92122f91a715
SurfaceComposer.cpp
urfaceComposerClient.cpp
|
378ef07760eda717367d9429428c42d54d54d9a7 |
01-Apr-2014 |
Francis Hart <fhart@nvidia.com> |
Use asynchronous lock/unlock API The gralloc API now provides a way for using lock/unlock with the Android explicit synchronisation concept. This changes updates the GraphicBuffer class to also expose this functionality, and updates the Surface class to make use of in line with the dequeueBuffer/queueBuffer mechanism. This new behaviour is dependent on GRALLOC_MODULE_API_VERSION_0_3. If the local gralloc module does not support this then the existing synchronous lock/unlock mechanism will be used. Change-Id: I77daa1beb197b63b1c2f281b8414ac4ae4b5b03c
urface.cpp
|
943de2f71beff9566cc58ce5820495fd9776e1e3 |
24-Apr-2014 |
Aravind Akella <aakella@google.com> |
Merge "Enable wakeup sensors."
|
9a844cf78f09953145200b4074d47589257a408c |
12-Feb-2014 |
Aravind Akella <aakella@google.com> |
Enable wakeup sensors. SensorService should hold a wakelock till the app reads events from a wakeup sensor. Currently drivers hold a wakelock with a timeout while delivering events from a wake up sensor like Significant Motion. This hack can be removed now. Bug: 9774884 Change-Id: If3b5acb99c9cf0cd29012fcfa9d6b04c74133d01
SensorEventConnection.cpp
ensor.cpp
ensorEventQueue.cpp
|
e0d5862ad85f7bf4feb1eee9444bf3a5b49c5842 |
22-Apr-2014 |
Dan Stoza <stoza@google.com> |
Remove deprecated BufferQueue constructor Finally remove the BufferQueue constructor itself. From now on, all BufferQueues must be created through the createBufferQueue method. Bug: 13415624 Change-Id: I192bf9430265bab761dcd59db1f02c9d0ac4feed
ufferQueue.cpp
|
4cbf3c53447215a31f69d3ac615ba0daa902f717 |
21-Apr-2014 |
Dan Stoza <stoza@google.com> |
Merge "BufferQueue: Guard against unbounded queue growth"
|
fb39827ebce4637dcba03770f6644cf67e932e06 |
21-Apr-2014 |
Dan Stoza <stoza@google.com> |
Merge "BufferQueue: Increase max slots from 32 to 64"
|
ae3c3682333f25e860fe54e2bae3599bb466cdb6 |
19-Apr-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Guard against unbounded queue growth Adds logic to dequeueBuffer that blocks if there are currently too many buffers in the queue. This prevents unbounded growth around times where the slots are cleared but the queue is not (e.g., during rapid connect/disconnect or setBufferCount activity). This replaces the fix from ag/377958 in a more general way. Bug: 11293214 Change-Id: Ieb7adfcd076ff7ffe3d4d369397b2c29cf5099c3
ufferQueueConsumer.cpp
ufferQueueProducer.cpp
|
017a53851628e967e5e103a467acb602010dffdc |
18-Apr-2014 |
Dan Stoza <stoza@google.com> |
Merge "libgui: Remove unnecessary casts in SurfaceControl"
|
febd4f4f462444bfcb3f0618d07ac77e3fc1f6ad |
10-Apr-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Increase max slots from 32 to 64 Increases NUM_BUFFER_SLOTS from 32 to 64 and changes the mask returned by IGBC::getReleasedBuffers from 32 to 64 bits. Bug: 13174352 Change-Id: Ie8ef0853916cfb91f83881c7241886bb1950f01a
ufferQueue.cpp
ufferQueueConsumer.cpp
onsumerBase.cpp
GraphicBufferConsumer.cpp
|
99b18b447dec188bcec37b415603b9dd400fc7e1 |
28-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Add StreamSplitter Adds a StreamSplitter class, that takes one IGraphicBufferConsumer interface and multiple IGraphicBufferProducer interfaces and implements a one-to-many broadcast of GraphicBuffers (while managing fences correctly). Change-Id: I38ecdf3e311ac521bc781c30dde0cc382a4376a3
ndroid.mk
ufferQueueConsumer.cpp
ufferQueueCore.cpp
GraphicBufferConsumer.cpp
treamSplitter.cpp
ests/Android.mk
ests/BufferQueue_test.cpp
ests/StreamSplitter_test.cpp
|
d9822a3843017444364899afc3c23fb5be6b9cb9 |
28-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueueProducer: add detachNextBuffer Adds a new method, IGBP::detachNextBuffer, that effectively does dequeue + request + detach in a single call, but does not need to know anything about the dequeued buffer, and will not block on dequeue. This is mostly for the upcoming StreamSplitter to use in its onBufferReleased callback. Change-Id: Ie88a69de109003acebaa486a5b44c8a455726550
ufferQueue.cpp
ufferQueueProducer.cpp
GraphicBufferProducer.cpp
|
7f605bd4c09e2b086e69751491e25e98f4a0eb98 |
14-Apr-2014 |
Dan Stoza <stoza@google.com> |
Merge "BufferQueue: Hook up IProducerListener"
|
93b84e39e6cbb9f2ba37125465c4040e03b56048 |
11-Apr-2014 |
Aravind Akella <aakella@google.com> |
am ef89f763: am cf818ebb: Merge "Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors" into klp-modular-dev * commit 'ef89f7638c43ce5f73e32d487bf65c3375995e3b': Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors
|
ef89f7638c43ce5f73e32d487bf65c3375995e3b |
11-Apr-2014 |
Aravind Akella <aakella@google.com> |
am cf818ebb: Merge "Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors" into klp-modular-dev * commit 'cf818ebbf07c6a20ef48d71bf82f8d4bdf3a398c': Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors
|
cf818ebbf07c6a20ef48d71bf82f8d4bdf3a398c |
11-Apr-2014 |
Aravind Akella <aakella@google.com> |
Merge "Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors" into klp-modular-dev
|
fd34b65f717b84fa06d8c37f41b070f41d0ad3a3 |
11-Apr-2014 |
Dan Stoza <stoza@google.com> |
Merge "BufferQueue: Add producer buffer-released callback"
|
700180487ffec09d9df1657b018a7caadac24b75 |
08-Apr-2014 |
Aravind Akella <aakella@google.com> |
Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors This reverts commit 4369a4ebd5ae7567e7075bc82830b83178099ed5. Change-Id: Ifa8619cc6873470a07a987763d818d78d4232610
ensor.cpp
|
3b3ba78c3c586c2b09b11e0f1ab5347ff51a21e0 |
10-Apr-2014 |
Dan Stoza <stoza@google.com> |
libgui: Remove unnecessary casts in SurfaceControl There are a number of places where we create a local sp<SurfaceComposerClient>& to something that is already an sp<SurfaceComposerClient>, which is redundant. This fixes that by removing the local references. Bug: 13814149 Change-Id: Ic558cbda651c344e5cac97022c97563928eed29c
urfaceControl.cpp
|
cf8684b2063c0458da634be0fae7ccabf3f50176 |
10-Apr-2014 |
Svetoslav <svetoslavganov@google.com> |
Merge "Adding render stats APIs to UiAutomation (framework native)."
|
d85084b2b65828442eafaff9b811e9b6c9ca9fad |
20-Mar-2014 |
Svetoslav <svetoslavganov@google.com> |
Adding render stats APIs to UiAutomation (framework native). bug:12927198 Change-Id: Ibb1c07f7d89e11281e5c1f27f412a29ac6f9c4ab
SurfaceComposer.cpp
SurfaceComposerClient.cpp
urfaceComposerClient.cpp
urfaceControl.cpp
|
4cd47b2e0eac8eb1c4a9d69e716e6dc0e2da7227 |
10-Apr-2014 |
Wonsik Kim <wonsik@google.com> |
Merge "Fix sideband stream issues"
|
fb9bf8725d682568fb509e2dac0587fa4e493572 |
08-Apr-2014 |
Dan Stoza <stoza@google.com> |
Merge "BufferQueue: Remove Bn version of create*"
|
b3d0bdf0dbc19f0a0d7d924693025371e24828fd |
08-Apr-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Remove Bn version of create* It turns out that there's no reason to have both I* and Bn* versions of the createBufferQueue method, so I removed the Bn* version. Change-Id: I66aeb09e10458ae540ddf1f38d2d0154ea8f315b
ufferQueue.cpp
ests/BufferQueue_test.cpp
|
5603a2fbbd1aae74c4635e2f600819fb05d112e0 |
07-Apr-2014 |
Dan Stoza <stoza@google.com> |
Remove deprecated BufferQueue constructor Bug: 13415624 Change-Id: I153b5470b21832cebe3c617d28a4ab9c9bf3b362
ests/CpuConsumer_test.cpp
ests/IGraphicBufferProducer_test.cpp
ests/MultiTextureConsumer_test.cpp
ests/SRGB_test.cpp
ests/SurfaceTextureClient_test.cpp
ests/SurfaceTextureGL.h
ests/SurfaceTextureGL_test.cpp
ests/Surface_test.cpp
|
fc9aeb859096cc02ec9241fad589d361cf9c3ddd |
07-Apr-2014 |
Andy McFadden <fadden@android.com> |
am 4215f434: am 6dbcebd0: Merge "Always release a buffer" into klp-modular-dev * commit '4215f434187d518bf8c9807c9a18a7e0b617f7d2': Always release a buffer
|
4215f434187d518bf8c9807c9a18a7e0b617f7d2 |
07-Apr-2014 |
Andy McFadden <fadden@android.com> |
am 6dbcebd0: Merge "Always release a buffer" into klp-modular-dev * commit '6dbcebd0430e026fd5d99ba4b4f005bfaa9b8e2b': Always release a buffer
|
afe3081e0e224a3d88da2e8f211e994f833cc6bb |
31-Mar-2014 |
Wonsik Kim <wonsik@google.com> |
Fix sideband stream issues - Notify a listener when sideband stream is set - Mark a layer as visible when sideband stream is set, even though no buffer is queued. Change-Id: I9652bf530f2b5ce331533ec1bb3b10a815ca191c
ufferQueueProducer.cpp
|
75b332037f6197acb239bfbbf2ac09adb31e9971 |
05-Apr-2014 |
Etienne Le Grand <etn@google.com> |
am 4369a4eb: Revert "Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors" * commit '4369a4ebd5ae7567e7075bc82830b83178099ed5': Revert "Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors"
|
30d6fd6b28aeacfe06ddc7adaac34e8a0032df40 |
05-Apr-2014 |
Etienne Le Grand <etn@google.com> |
Revert "Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors" This reverts commit c57a019e117117c5a76c772970b26cd0f5db8c6a. Change-Id: I3540565bc3e56a32cf3b176a29216cf68bb763b2 (cherry picked from commit 4369a4ebd5ae7567e7075bc82830b83178099ed5)
ensor.cpp
|
4369a4ebd5ae7567e7075bc82830b83178099ed5 |
05-Apr-2014 |
Etienne Le Grand <etn@google.com> |
Revert "Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors" This reverts commit c57a019e117117c5a76c772970b26cd0f5db8c6a. Change-Id: I3540565bc3e56a32cf3b176a29216cf68bb763b2
ensor.cpp
|
33458f72e17be8e71f50e1f8843f7821d90934f5 |
05-Apr-2014 |
Etienne Le Grand <etn@google.com> |
am 00f4dde1: am c57a019e: Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors * commit '00f4dde1aa88576811bca79bc8242e1fc1edb333': Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors
|
00f4dde1aa88576811bca79bc8242e1fc1edb333 |
05-Apr-2014 |
Etienne Le Grand <etn@google.com> |
am c57a019e: Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors * commit 'c57a019e117117c5a76c772970b26cd0f5db8c6a': Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors
|
c57a019e117117c5a76c772970b26cd0f5db8c6a |
25-Mar-2014 |
Etienne Le Grand <etn@google.com> |
Add stringType and requiredPermission to sensors, effectively adding permission checking for sensors Change-Id: If0f3dbdb5d2e9378e1fed4614baee4e750d0c850
ensor.cpp
|
87a678478005026d950bedec49ee80b693777b95 |
05-Apr-2014 |
Andy McFadden <fadden@android.com> |
Always release a buffer In GLConsumer's updateAndReleaseLocked(), we must release either the previously-acquired buffer or the newly-acquired buffer. Bug 13755224 Change-Id: I96adc255400ed008ba6e6ac1725ab3514c7cc8ba
LConsumer.cpp
|
cece164b23dbb368de1be2112827dd2df0ab2b5c |
04-Apr-2014 |
Mark Salyzyn <salyzyn@google.com> |
native gui: 64-bit compile issues Change-Id: I45f605ff3759fb7ae9f0a6425d557d195f93281e
ufferQueueCore.cpp
|
9cfa49c95445b968da3170b4fdb0b942af69569e |
02-Apr-2014 |
Wonsik Kim <wonsik@google.com> |
Merge "Declare ownership of native_handle_t object"
|
d1c103655533321b5c74fbefff656838a8196153 |
28-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Hook up IProducerListener Actually call the producer listener's callback during IGraphicBufferConsumer::releaseBuffer Change-Id: Idfa6bb08d62629cd3a198318e6c6fd6a731e73ef
ufferQueueConsumer.cpp
|
f0eaf25e9247edf4d124bedaeb863f7abdf35a3e |
21-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Add producer buffer-released callback Add a callback to the producer side, onBufferReleased, which will be called every time the consumer releases a buffer back to the BufferQueue. This will enable a buffer stream splitter to work autonomously without having to block on dequeueBuffer. The binder object used for the callback replaces the generic IBinder token that was passed into IGraphicBufferProducer::connect to detect the death of the producer. If a producer does not wish to listen for buffer release events, it can pass in an instance of the DummyProducerListener class defined in IProducerListener.h, if it even cares about death events (BufferQueue doesn't enforce the token being non-NULL, though perhaps we should). Change-Id: I23935760673524abeafea2b58dccc3583b368710
ndroid.mk
ufferQueue.cpp
ufferQueueCore.cpp
ufferQueueProducer.cpp
GraphicBufferProducer.cpp
ProducerListener.cpp
urface.cpp
ests/BufferQueue_test.cpp
ests/IGraphicBufferProducer_test.cpp
|
2443c7903c6910b57bcc615a4bf2e60068c15dbd |
24-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Set attached buffers as requested When a buffer is attached to the producer side, it needs to be marked as having been requested so that it can be queued successfully. Change-Id: I90a88b332c415a57921bd094ae635afdf65bff99
ufferQueueProducer.cpp
|
0ec54e156bed93d59900b742c8e9adcfaee90612 |
21-Mar-2014 |
Wonsik Kim <wonsik@google.com> |
Declare ownership of native_handle_t object Change-Id: I4e21ff8ea76cfafce943dc059c8f72b42397980e
GraphicBufferConsumer.cpp
GraphicBufferProducer.cpp
|
1a0b8617909c94f6c7301b651cb7b07463529c8c |
20-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Test remote producer and consumer Adds a test that puts the BufferQueue into its own process and connects to it over remote binder interfaces. This exposed the fact that while IGBC was technically binderized, it didn't actually work when flattened, so this change also fixes that. Change-Id: I728cdb662a4273ddd3440ed6040a12560313fe68
GraphicBufferConsumer.cpp
ests/BufferQueue_test.cpp
|
8ce5c1cc8d3275c78553227fd9eca3302b6fac1d |
19-Mar-2014 |
Wonsik Kim <wonsik@google.com> |
Merge "Fill in sideband stream caveat"
|
75555b2eaf0a2b8eff30df422e041cbe80ec74ef |
18-Mar-2014 |
Dan Stoza <stoza@google.com> |
Merge "BufferItemConsumer: Use IGBC instead of BQ"
|
14226716f2a675eee6730a405db28c674a771395 |
18-Mar-2014 |
Dan Stoza <stoza@google.com> |
Merge "Remove deprecated BufferQueue constructor"
|
0ee14ca23dc2759e213172e38a840da0c36bd3ab |
17-Mar-2014 |
Wonsik Kim <wonsik@google.com> |
Fill in sideband stream caveat Change-Id: I20db8aea8f13acf31b42db08d90b338da8a5209c
urface.cpp
|
49bfda1fbdf828a8ea63ae2c2fa25739f6e48527 |
13-Mar-2014 |
Jesse Hall <jessehall@google.com> |
Fix broken build for more tests Change-Id: I7bdd12a833233724805d01d993541ee05caa9bf6
ests/BufferQueue_test.cpp
ests/DisconnectWaiter.h
ests/IGraphicBufferProducer_test.cpp
|
73ed82f809a40560fd3a6d53d18e5c846362d764 |
13-Mar-2014 |
Jesse Hall <jessehall@google.com> |
Merge "Add sideband streams to BufferQueue and related classes"
|
6d5a7bb970dd5cfd5a51fe2de7f10b9fc75732b2 |
13-Mar-2014 |
Dan Stoza <stoza@google.com> |
Remove deprecated BufferQueue constructor Bug: 13415624 Change-Id: I52f58a4d22296d9fc3cdbd4ad53eb10a785db3ce
urfaceComposerClient.cpp
|
fe50d2a0a13116238d5321e16c06e6ed533618dc |
12-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferItemConsumer: Use IGBC instead of BQ Change-Id: Id1756ac62954ba412f2c23c5fa6e5d760c299347
ufferItemConsumer.cpp
|
f522af7eb6048c2efae77d7b94960bc49c003e0e |
12-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Allow returning interfaces as I*/Bn* This adds a second createBufferQueue method that returns sp<IGraphicBuffer*> interfaces instead of sp<BnGraphicBuffer*>, since most clients don't actually need the Binderized versions (but some might). Change-Id: Iaf4f719c96ddb6f704afc75cf52be22588173e32
ufferQueue.cpp
|
399184a4cd728ea1421fb0bc1722274a29e38f4a |
04-Mar-2014 |
Jesse Hall <jessehall@google.com> |
Add sideband streams to BufferQueue and related classes Sideband streams are essentially a device-specific buffer queue that bypasses the BufferQueue system. They can be used for situations with hard real-time requirements like high-quality TV and video playback with A/V sync. A handle to the stream is provided by the source HAL, and attached to a BufferQueue. The sink HAL can read buffers via the stream handle rather than acquiring individual buffers from the BufferQueue. Change-Id: Ib3f262eddfc520f4bbe3d9b91753ed7dd09d3a9b
ufferQueue.cpp
ufferQueueConsumer.cpp
ufferQueueProducer.cpp
onsumerBase.cpp
ConsumerListener.cpp
GraphicBufferConsumer.cpp
GraphicBufferProducer.cpp
|
9f3053de78630815d60cf48a2cf2348cc5867c45 |
07-Mar-2014 |
Dan Stoza <stoza@google.com> |
BufferQueue: Allow detaching/reattaching buffers Adds detachBuffer and attachBuffer calls to both the producer and consumer sides of BufferQueue. Buffers may be detached while dequeued by the producer or acquired by the consumer, and when attached, enter the dequeued and acquired states, respectively. Bug: 13173343 Change-Id: Ic152692b0a94d99e0135b9bfa62747dab2a54220
ufferQueue.cpp
ufferQueueConsumer.cpp
ufferQueueProducer.cpp
GraphicBufferConsumer.cpp
GraphicBufferProducer.cpp
ests/BufferQueue_test.cpp
|
c0c6a0cd4cc2121ffb61576482758aa542acf215 |
06-Mar-2014 |
Andy McFadden <fadden@android.com> |
Merge "FramebufferNativeWindow.h is obsolete"
|
2e336496c3b3b78910cf1c496e21dc4909ee32ad |
06-Mar-2014 |
Andy McFadden <fadden@android.com> |
FramebufferNativeWindow.h is obsolete This adds a deprecation #warning to the header. Change-Id: Ia32f16e491cb01d435ec8846dda3d9a7d1a9cfc5
ests/BufferQueue_test.cpp
ests/CpuConsumer_test.cpp
ests/IGraphicBufferProducer_test.cpp
|
c1ef3efecbeff5bbea461d96bb5600b18d66bdb6 |
05-Mar-2014 |
Dan Stoza <stoza@google.com> |
Merge "Change BufferQueue into producer/consumer wrapper"
|
3e96f1982fda358424b0b75f394cbf7c1794a072 |
03-Mar-2014 |
Dan Stoza <stoza@google.com> |
Change BufferQueue into producer/consumer wrapper Now that BufferQueue has been split into core + producer + consumer, rewrite BufferQueue to be a thin layer over a producer and consumer interface. Eventually, this layer will be deprecated in favor of only using either the producer or consumer interface, as applicable. Change-Id: I340ae5f5b633b244fb594615ff52ba50b9e2f7e4
ufferItem.cpp
ufferQueue.cpp
ufferQueueConsumer.cpp
ufferQueueCore.cpp
ufferQueueProducer.cpp
ufferSlot.cpp
|
8be494eb0998cc8f7f41c504c71c54856e169806 |
04-Mar-2014 |
Igor Murashkin <iam@google.com> |
am 1738d4fc: am 462fb3a8: Merge "gui: Fix return code assert in CpuConsumer_test." * commit '1738d4fca78b7678d09d5c8898e1f80fa63b4a6d': gui: Fix return code assert in CpuConsumer_test.
|
1738d4fca78b7678d09d5c8898e1f80fa63b4a6d |
04-Mar-2014 |
Igor Murashkin <iam@google.com> |
am 462fb3a8: Merge "gui: Fix return code assert in CpuConsumer_test." * commit '462fb3a8d597fffef3d5534544428d5cee9d8c16': gui: Fix return code assert in CpuConsumer_test.
|
462fb3a8d597fffef3d5534544428d5cee9d8c16 |
04-Mar-2014 |
Igor Murashkin <iam@google.com> |
Merge "gui: Fix return code assert in CpuConsumer_test."
|
4a07dc8d2149788be96ad783c0d63339e6747587 |
04-Mar-2014 |
Dan Stoza <stoza@google.com> |
Merge "Split BufferQueue into core + producer + consumer"
|
289ade165e60b5f71734d30e535f16eb1f4313ad |
28-Feb-2014 |
Dan Stoza <stoza@google.com> |
Split BufferQueue into core + producer + consumer Change-Id: Idc39f1e511d68ce4f02202d35425a419bc0bcd92
ndroid.mk
ufferItem.cpp
ufferQueueConsumer.cpp
ufferQueueCore.cpp
ufferQueueProducer.cpp
ufferSlot.cpp
|
0f1889efe77171696bfb3499832ed1732343d9fb |
01-Mar-2014 |
Igor Murashkin <iam@google.com> |
gui: Surface::dequeueBuffer no locker holds mutex while blocking in binder - This also fixes a hang in the camera service when trying to shut down if the producer is infinitely blocked while trying to get a new buffer. Bug: 13250382 Change-Id: I32ca82162bb8645b97dbe084e13e05ca05529a42
urface.cpp
|
fb83d84694e385039c3d37ed52cf44fa4ca410e4 |
20-Feb-2014 |
Dan Stoza <stoza@google.com> |
Merge "Fix calls to captureScreen"
|
8d7599633fedba38d2aba28cc95e0c66c3456694 |
20-Feb-2014 |
Dan Stoza <stoza@google.com> |
Fix calls to captureScreen Change-Id: Ic0ff47afa29f143131906082dff79d4e907b7143
ests/Surface_test.cpp
|
44c35ec4a94eb33f7ee0df085c5d2d56d99962cf |
30-Jan-2014 |
Andy McFadden <fadden@android.com> |
Allow "opaque" flag to be updated. DO NOT MERGE Moves the "opaque layer" from Layer to Layer::State. This allows it to be updated as part of a transaction. Bug 12387406 Change-Id: I0a114ce6adf77cd12fb08f96e0691b76c475768d
urfaceComposerClient.cpp
|
c701401f8cec2e5309f8b57e2b97baced5093274 |
15-Feb-2014 |
Dan Stoza <stoza@google.com> |
Allow disabling layer rotation during screenshots Add the ability to ignore layers' transformation matrices during screenshot capture, which will allow the window manager to capture unrotated images for recents during the device rotation animation. Bug: 11805195 Change-Id: I854d87bc84ca06ef9a054a454af1c080ee66fbb8
SurfaceComposer.cpp
urfaceComposerClient.cpp
|
d592f32df91a857a6649699281f497586e478840 |
30-Jan-2014 |
Andy McFadden <fadden@android.com> |
Merge "Allow "opaque" flag to be updated"
|
4125a4ffaf374ca9c0773f256998557d3325343e |
30-Jan-2014 |
Andy McFadden <fadden@android.com> |
Allow "opaque" flag to be updated Moves the "opaque layer" from Layer to Layer::State. This allows it to be updated as part of a transaction. Bug 12387406 Change-Id: I0a114ce6adf77cd12fb08f96e0691b76c475768d
urfaceComposerClient.cpp
|
b8072d84ba9bf43701fcace61414b3cef5910919 |
29-Jan-2014 |
Dan Stoza <stoza@google.com> |
libgui: Fix segfault in SRGB tests Make the test exit cleanly if the output buffer is never mapped. Bug: 12761226 Change-Id: If789f02198851a17b11ee06f612f9ba7e06da754
ests/SRGB_test.cpp
|
6a5d35dd5cd8710c6c9f100076e62ffbdb0b868b |
08-Jan-2014 |
Dan Stoza <stoza@google.com> |
libgui: Add a test for SRGB surfaces Add SRGBTest.RenderToSRGBSurface, which validates that passing the SRGB colorspace attributes to eglCreateWindowSurface actually results in an SRGB surface by comparing the output values to those of a standard RGB surface. Change-Id: I3d5fef8070ed8fa2357ddd1c5fcc849ae3fbd12a
ests/SRGB_test.cpp
|
3ed4e0b3655b4019b9ab9939f6df0cb8a102d37f |
12-Dec-2013 |
Dan Stoza <stoza@google.com> |
libgui: Add a test suite for SRGB testing This is the start of an SRGB test suite. Currently it has a test for SRGB texture reads in GLES3. Change-Id: I553ee2691dc92b98cae7a003084d4e2823d40d95
ests/Android.mk
ests/SRGB_test.cpp
|
cb1fcdedaaf95acabeac6a2d5bff423d6ca62296 |
03-Dec-2013 |
Dan Stoza <stoza@google.com> |
libgui: Split SurfaceTexture tests into more files Extract the many different test fixtures and suites in SurfaceTexture_test.cpp into separate files. No real functional changes, just tweaking headers to keep things building (and adding a few copyright headers I forgot last time). Change-Id: Id801bd5d617f0cc61d22508fb9b71b41694bdecf
ests/Android.mk
ests/DisconnectWaiter.h
ests/FillBuffer.cpp
ests/FillBuffer.h
ests/FrameWaiter.h
ests/GLTest.cpp
ests/GLTest.h
ests/MultiTextureConsumer_test.cpp
ests/SurfaceTextureFBO.h
ests/SurfaceTextureFBO_test.cpp
ests/SurfaceTextureGL.h
ests/SurfaceTextureGLThreadToGL.h
ests/SurfaceTextureGLThreadToGL_test.cpp
ests/SurfaceTextureGLToGL.h
ests/SurfaceTextureGLToGL_test.cpp
ests/SurfaceTextureGL_test.cpp
ests/SurfaceTextureMultiContextGL.h
ests/SurfaceTextureMultiContextGL_test.cpp
ests/SurfaceTexture_test.cpp
ests/TextureRenderer.cpp
ests/TextureRenderer.h
|
8f76b6bedf5c0b316d02a9f9de3d504c0344cb81 |
04-Dec-2013 |
Alistair Strachan <alistair.strachan@imgtec.com> |
gui: Fix return code assert in CpuConsumer_test. The CpuConsumer error code was changed recently from INVALID_OPERATION to NOT_ENOUGH_DATA, however the CpuConsumer_test was not updated. This change fixes the return code checked by CpuConsumer_test so the test no longer fails. Change-Id: Ie548ddcb313fa34c130ac63355090cb44ac15ebf
ests/CpuConsumer_test.cpp
|
f3730fb8f7da368740f9e5ed2603b405aeb4be72 |
27-Nov-2013 |
Dan Stoza <stoza@google.com> |
libgui: Fix a couple of minor bugs, extract GLTest Fix a couple of minor bugs in existing tests, and extract the GLTest class into its own files. Change-Id: I7d9570a0d3dbc9c5d7f9b13f2017607af42744b3
ests/Android.mk
ests/GLTest.cpp
ests/GLTest.h
ests/SurfaceTexture_test.cpp
|
7ea777f097784492f880623067becac1b276f884 |
19-Nov-2013 |
Igor Murashkin <iam@google.com> |
gui: Add tests for IGraphicBufferProducer * Basic tests only. Needs more complicated queue/dequeue tests. * Also needs consumer-side tests to really be thorough. Change-Id: I1099dd56d65b6e9dfa15377726d6054ce657c0ca
ufferQueue.cpp
ests/Android.mk
ests/BufferQueue_test.cpp
ests/IGraphicBufferProducer_test.cpp
|
4be18a3566c5d902b7fe94db4cf14b174ed7beb5 |
18-Nov-2013 |
Igor Murashkin <iam@google.com> |
gui: Remove BufferQueue::MIN_UNDEQUEUED_BUFFERS Change-Id: I7c0cc36046dbbdb9c0e85acfe5027293d1131275
ufferItemConsumer.cpp
|
7d2d160cdc3cba9f4454f38433c94b68376cb843 |
13-Nov-2013 |
Igor Murashkin <iam@google.com> |
gui: Update header docs for IGraphicBufferConsumer/Producer/BufferQueue Also fix compiler warnings for libgui Change-Id: I0ee38d9ad5eaa82d55bf812d291da8c433581cef
ufferQueue.cpp
onsumerBase.cpp
GraphicBufferConsumer.cpp
urface.cpp
|
0012dbc3c6015ace91275f022116e52da9adc4c6 |
19-Oct-2013 |
Andy McFadden <fadden@android.com> |
am 251b11c2: am 85075869: Wait for buffers to drain * commit '251b11c2045b2ae97f2ab270a65e11b4ca49b1b6': Wait for buffers to drain
|
251b11c2045b2ae97f2ab270a65e11b4ca49b1b6 |
19-Oct-2013 |
Andy McFadden <fadden@android.com> |
am 85075869: Wait for buffers to drain * commit '8507586903fa803abf535853a169913f2cf2e555': Wait for buffers to drain
|
8507586903fa803abf535853a169913f2cf2e555 |
19-Oct-2013 |
Andy McFadden <fadden@android.com> |
Wait for buffers to drain When a BufferQueue producer disconnects and reconnects, we retain the previously-queued buffers but empty the slots. This allows the number of queued buffers to grow without limit. The low-memory killer does not approve. Bug 11069934 Change-Id: Ia2eaa954c7a3904b54209a3701dba01689e204d8
ufferQueue.cpp
|
4a1e00fb3abb4e0598c3fb9a35c04349f672c5f9 |
11-Oct-2013 |
Aravind Akella <aakella@google.com> |
am 1f1e5768: am 5d6aa951: Merge "Change API from flush(handle) to flush(). Call flush on all active sensors in the given SensorEventConnection." into klp-dev * commit '1f1e576840d5b36a091368abb6fe6610384b6449': Change API from flush(handle) to flush(). Call flush on all active sensors in the given SensorEventConnection.
|
1f1e576840d5b36a091368abb6fe6610384b6449 |
11-Oct-2013 |
Aravind Akella <aakella@google.com> |
am 5d6aa951: Merge "Change API from flush(handle) to flush(). Call flush on all active sensors in the given SensorEventConnection." into klp-dev * commit '5d6aa95129a13aae37a60b3e4246a0592dab396d': Change API from flush(handle) to flush(). Call flush on all active sensors in the given SensorEventConnection.
|
701166d9f60a6e1149ff568aec0e03f3f3925292 |
08-Oct-2013 |
Aravind Akella <aakella@google.com> |
Change API from flush(handle) to flush(). Call flush on all active sensors in the given SensorEventConnection. Change-Id: I4ef2bec80406c517903ab9782dc9eaf3fa8b7f36
SensorEventConnection.cpp
ensorEventQueue.cpp
|
bd381c6164cc7b661dfc3fd7c15696f4225ac810 |
02-Oct-2013 |
Jamie Gennis <jgennis@google.com> |
am 6be1d210: am f0cf5f10: BufferQueue: fix a test crash * commit '6be1d210eef392f5745d58a0033572b1af4b2f2a': BufferQueue: fix a test crash
|
6be1d210eef392f5745d58a0033572b1af4b2f2a |
02-Oct-2013 |
Jamie Gennis <jgennis@google.com> |
am f0cf5f10: BufferQueue: fix a test crash * commit 'f0cf5f103cf9c54d59de4ed6f1d8ddd2302dec1b': BufferQueue: fix a test crash
|
f0cf5f103cf9c54d59de4ed6f1d8ddd2302dec1b |
26-Sep-2013 |
Jamie Gennis <jgennis@google.com> |
BufferQueue: fix a test crash Bug: 10935880 Change-Id: If76e9fb055103bad0db7e6c16487532671573149
ufferQueue.cpp
|
4e8fd6f30d6304f3cbc729eb424566b57754c650 |
02-Oct-2013 |
Jamie Gennis <jgennis@google.com> |
am 886b1521: am a9c47f32: Merge "GLConsumer: start using EGL_ANDROID_image_crop" into klp-dev * commit '886b152111cc13dcfe1b47724f5e496f12ccc420': GLConsumer: start using EGL_ANDROID_image_crop
|
886b152111cc13dcfe1b47724f5e496f12ccc420 |
02-Oct-2013 |
Jamie Gennis <jgennis@google.com> |
am a9c47f32: Merge "GLConsumer: start using EGL_ANDROID_image_crop" into klp-dev * commit 'a9c47f327373cbe48e187442c7f9554d24a75c08': GLConsumer: start using EGL_ANDROID_image_crop
|
dbe9245e2e362b12e184cd33b9a27b0901f81244 |
24-Sep-2013 |
Jamie Gennis <jgennis@google.com> |
GLConsumer: start using EGL_ANDROID_image_crop This change makes GLConsumer use the EGL_ANDROID_image_crop extension when available on a device. The crop rectangle is passed to the EGL driver when creating EGLImages, allowing the crop to be performed by the driver rather than using the texture transform matrix. Bug: 10897141 Change-Id: I63e9a5d5c85067376abc420e3639154468346311
LConsumer.cpp
|
3473e814a4a7efdc7e9842d0659825e741b502d0 |
20-Sep-2013 |
Eino-Ville Talvala <etalvala@google.com> |
am 1160e89d: am d171da97: GLConsumer: Add query for current frame number. * commit '1160e89d31810f2ba66f8ab502281579115b39b0': GLConsumer: Add query for current frame number.
|
6de9653ac876a4cae03d32c1134c56c795b1b11c |
20-Sep-2013 |
Christopher Ferris <cferris@google.com> |
Merge "Remove unnecessary include."
|
d142f4b787abae7a5c392ded0dd2741574a0bce2 |
20-Sep-2013 |
Christopher Ferris <cferris@google.com> |
Remove unnecessary include. All these files are including utils/CallStack.h, but none of the code uses any CallStack objects. Change-Id: I38c3a346a3bd0ddbff368d0f7f8b3f3d78fc0432
ufferQueue.cpp
urfaceControl.cpp
|
1160e89d31810f2ba66f8ab502281579115b39b0 |
19-Sep-2013 |
Eino-Ville Talvala <etalvala@google.com> |
am d171da97: GLConsumer: Add query for current frame number. * commit 'd171da973de3c6b30263011334fdcd916739144f': GLConsumer: Add query for current frame number.
|
d171da973de3c6b30263011334fdcd916739144f |
19-Sep-2013 |
Eino-Ville Talvala <etalvala@google.com> |
GLConsumer: Add query for current frame number. Surface the underlying frame number of the current texture. Bug: 10830400 Change-Id: Ide3a7da12ea0aac54588beb6bf00dbfe2cd37653
LConsumer.cpp
|
0f0e845113b02d1a3a00271d3b5449bee7053dd2 |
19-Sep-2013 |
Mathias Agopian <mathias@google.com> |
am a7e1660b: am c1c05de4: fix camera API 2.0 orientation * commit 'a7e1660b257326f99261e7c9b2d58c9d2e68d0b0': fix camera API 2.0 orientation
|
a7e1660b257326f99261e7c9b2d58c9d2e68d0b0 |
19-Sep-2013 |
Mathias Agopian <mathias@google.com> |
am c1c05de4: fix camera API 2.0 orientation * commit 'c1c05de415854eb7a13a16b7e22a22de8515123a': fix camera API 2.0 orientation
|
c1c05de415854eb7a13a16b7e22a22de8515123a |
18-Sep-2013 |
Mathias Agopian <mathias@google.com> |
fix camera API 2.0 orientation 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
ufferQueue.cpp
GraphicBufferConsumer.cpp
|
2285c008fa53f086c8ccae3ac6eaf3f8a3992218 |
18-Sep-2013 |
Mathias Agopian <mathias@google.com> |
am e803e609: am 799f5126: Fix build (tests) * commit 'e803e6095e007563df939326fdd3ca5109619a42': Fix build (tests)
|
e803e6095e007563df939326fdd3ca5109619a42 |
18-Sep-2013 |
Mathias Agopian <mathias@google.com> |
am 799f5126: Fix build (tests) * commit '799f51268006f319f6ae538dca670bfc7f522688': Fix build (tests)
|
799f51268006f319f6ae538dca670bfc7f522688 |
18-Sep-2013 |
Mathias Agopian <mathias@google.com> |
Fix build (tests) Change-Id: I5b233ef448e5e7eec3818c6586dfea138b28f7b6
ests/BufferQueue_test.cpp
|
7229e98229a6bc218d5c6fd50209134a78754149 |
17-Sep-2013 |
Mathias Agopian <mathias@google.com> |
am 3f342c11: am 02b62df7: Merge "Make sure do disconnect from a BQ when its client dies." into klp-dev * commit '3f342c113360eacc1e9c1ff481cb03f700a50117': Make sure do disconnect from a BQ when its client dies.
|
3f342c113360eacc1e9c1ff481cb03f700a50117 |
17-Sep-2013 |
Mathias Agopian <mathias@google.com> |
am 02b62df7: Merge "Make sure do disconnect from a BQ when its client dies." into klp-dev * commit '02b62df7119b27c89d91d96938d8f4f5232b296b': Make sure do disconnect from a BQ when its client dies.
|
02b62df7119b27c89d91d96938d8f4f5232b296b |
17-Sep-2013 |
Mathias Agopian <mathias@google.com> |
Merge "Make sure do disconnect from a BQ when its client dies." into klp-dev
|
cd9fd427ac4ee8312fd42b8e643805861d9d94b2 |
17-Sep-2013 |
Jesse Hall <jessehall@google.com> |
am b8080d9a: am 2a36497e: Merge "Stop using default value for Surface producerControlledByApp parameter" into klp-dev * commit 'b8080d9a3b760617c5dde7b1d2d63aa2bcecf3a7': Stop using default value for Surface producerControlledByApp parameter
|
b8080d9a3b760617c5dde7b1d2d63aa2bcecf3a7 |
17-Sep-2013 |
Jesse Hall <jessehall@google.com> |
am 2a36497e: Merge "Stop using default value for Surface producerControlledByApp parameter" into klp-dev * commit '2a36497e45d4d96e35fed89cfdcb09b71459ac3c': Stop using default value for Surface producerControlledByApp parameter
|
365857df8b94c959dea984a63013f6e7730ef976 |
12-Sep-2013 |
Mathias Agopian <mathias@google.com> |
Make sure do disconnect from a BQ when its client dies. Bug: 5679534 Change-Id: If447e8673df83fe0b1d6210641e0a48522501a53
ufferQueue.cpp
GraphicBufferProducer.cpp
urface.cpp
|
83cafffeac037ab2f9d00f98f8d2f3da8fc9b857 |
17-Sep-2013 |
Jesse Hall <jessehall@google.com> |
Stop using default value for Surface producerControlledByApp parameter Bug: 10785749 Change-Id: Ifbf9340e5eabe621a69e990ec3e05ac51f8db66a
urfaceControl.cpp
|
06ef81bd707020d579aae980ca30b5f954d9219a |
12-Sep-2013 |
Kenny Root <kroot@google.com> |
resolved conflicts for merge of 1852eb4f to klp-dev-plus-aosp Change-Id: I7217c0e859b384a042c02fe339e745996c6ef49e
|
c668871ac3f54e54dc21990f5d418643e01d636f |
12-Sep-2013 |
Kenny Root <kroot@google.com> |
Use canonical UniquePtr.h file Change-Id: Icc75bca078ffaf0c09b88ce5e897d666d1054063
ests/SurfaceTexture_test.cpp
|
7c4f236532692b847b9b103df6490549656ae993 |
12-Sep-2013 |
Mathias Agopian <mathias@google.com> |
am 90ed3e8d: fix a few problems with BitTube * commit '90ed3e8d7883d9c80fb8bf11b1c593bd8b2b39d0': fix a few problems with BitTube
|
0ae966033db8c1a42965ce4dce16ac8d5a7ed3b9 |
11-Sep-2013 |
Kenny Root <kroot@google.com> |
Remove copy of UniquePtr.h The UniquePtr.h file is no longer in libcore/... so there is no need to have this extra copy of it anymore. Change-Id: I4ec4f86d2844e524b50441c3a9100a50a6a45b1a
ests/SurfaceTexture_test.cpp
|
90ed3e8d7883d9c80fb8bf11b1c593bd8b2b39d0 |
10-Sep-2013 |
Mathias Agopian <mathias@google.com> |
fix a few problems with BitTube 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
itTube.cpp
ensorEventQueue.cpp
|
e29df8b929128621c8ef90091696d414eb235276 |
04-Sep-2013 |
Aravind Akella <aakella@google.com> |
am a5552de9: Merge "Sensor batching. Changes to the native code." into klp-dev * commit 'a5552de96f0cff9fb1947d8d21556bfeccf9cd03': Sensor batching. Changes to the native code.
|
724d91d778e71c8186399f4955de14b54812b3ed |
27-Jun-2013 |
Aravind Akella <aakella@google.com> |
Sensor batching. Changes to the native code. Bug: 10109508 Change-Id: I7333f3aac76125a8226a4c99c901fb904588df04
SensorEventConnection.cpp
ensor.cpp
ensorEventQueue.cpp
|
2d28c37269ca55b2be896ca67271994ebbc2bc84 |
30-Aug-2013 |
Jesse Hall <jessehall@google.com> |
am 87967c18: Merge "Force async behavior for the virtual display output BufferQueue" into klp-dev * commit '87967c186995d1500875c495cba8f04f7cff76cc': Force async behavior for the virtual display output BufferQueue
|
8db92553e9e6263cd41eaf1a1ebc9e3f88f92b5f |
30-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Force async behavior for the virtual display output BufferQueue Bug: 10551087 Change-Id: I40bbb2b87d64420939a0ea309254f281437dab56
ufferQueue.cpp
|
169636c62bd6c434ecc6fa60359baa3789f840b8 |
22-Aug-2013 |
Eino-Ville Talvala <etalvala@google.com> |
am b6aea00c: Merge "Surface: Fix controlledByApp parameter" into klp-dev * commit 'b6aea00c7843705fdc6d265d7e15b3df52e86009': Surface: Fix controlledByApp parameter
|
7895e90e29d096be039202f2ff24fa8033b92477 |
21-Aug-2013 |
Eino-Ville Talvala <etalvala@google.com> |
Surface: Fix controlledByApp parameter Bug: 10425641 Change-Id: I1a47e2ce4ecbdb8e67030a5d9ddf6604c5e2497d
urface.cpp
|
f94705f5fba8da61b0cdfc3c08f54a8ee66e1a42 |
19-Aug-2013 |
Andy McFadden <fadden@android.com> |
am 8b308ed7: Fix build * commit '8b308ed70ed782f68c8075aac2a6b66bbfcdb9af': Fix build
|
8b308ed70ed782f68c8075aac2a6b66bbfcdb9af |
19-Aug-2013 |
Andy McFadden <fadden@android.com> |
Fix build Neglected the "checkbuild"-built tests. Change-Id: I202692f1a6d1e306c88e820c959d07d16e7c6a00
ests/BufferQueue_test.cpp
|
30290a557e596c9bd58f99f9b8a3ea10bcbc8760 |
19-Aug-2013 |
Andy McFadden <fadden@android.com> |
am 90f59bf9: Merge "Re-enable frame dropping for non-auto timestamps" into klp-dev * commit '90f59bf9eba79b27629505bc2709d84e7c811c8b': Re-enable frame dropping for non-auto timestamps
|
3c25621ad7d13f64d3ab95a27fa970fbc9998f73 |
16-Aug-2013 |
Andy McFadden <fadden@android.com> |
Re-enable frame dropping for non-auto timestamps 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
ufferQueue.cpp
GraphicBufferConsumer.cpp
GraphicBufferProducer.cpp
urface.cpp
|
0ba1a16bbb2c7ea5f52691c062613a2309821354 |
16-Aug-2013 |
Igor Murashkin <iam@google.com> |
am e60a0b1e: Merge "gui: CpuConsumer::lockNextBuffer change return code when too many bufs acquired" into klp-dev * commit 'e60a0b1e6a29d79b4d0ec0374446cb829bcadee4': gui: CpuConsumer::lockNextBuffer change return code when too many bufs acquired
|
a5b7513711555c8681eb9391cfafe30fb7d6dd3d |
15-Aug-2013 |
Igor Murashkin <iam@google.com> |
gui: CpuConsumer::lockNextBuffer change return code when too many bufs acquired - 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
puConsumer.cpp
|
70986f00348e1af2f04cc7a80bcb0431a01d93d5 |
15-Aug-2013 |
Mathias Agopian <mathias@google.com> |
am c6bae007: Fix build. optional tests were broken. * commit 'c6bae007e6e29b585fc1207f84b378a480006173': Fix build. optional tests were broken.
|
c6bae007e6e29b585fc1207f84b378a480006173 |
15-Aug-2013 |
Mathias Agopian <mathias@google.com> |
Fix build. optional tests were broken. Change-Id: Iba9f5cb57f134559e1f9c55e293578d9f5d8cb96
ests/SurfaceTextureClient_test.cpp
|
b881700ab160b4544453bf8920e3022d46fee262 |
15-Aug-2013 |
Mathias Agopian <mathias@google.com> |
am 56f825e7: Merge "SurfaceFlinger now uses GLES 2.x when available" into klp-dev * commit '56f825e7ab9f83706a74dcd4825c7bc839e49ae4': SurfaceFlinger now uses GLES 2.x when available
|
3f84483382be2d528918cc1a6fbc6a7d68e0b181 |
08-Aug-2013 |
Mathias Agopian <mathias@google.com> |
SurfaceFlinger now uses GLES 2.x when available Bug: 8679321 Change-Id: I2b152d01fb4e2de2ea9fe87f1ddbd6826d7520d7
LConsumer.cpp
|
771ed8d71be8c851991164cd10fcfbf2431df86d |
13-Aug-2013 |
Jesse Hall <jessehall@google.com> |
am fc43e16a: Merge "Graphics:Add error check when create GraphicBuffer" * commit 'fc43e16a5693bca0edfc82c650fb606971e47138': Graphics:Add error check when create GraphicBuffer
|
2aff7025482cc40d2ebd45f81cdb318ac1c6f868 |
20-Nov-2012 |
Lingyun Zhu <lingyun.zhu@intel.com> |
Graphics:Add error check when create GraphicBuffer Change-Id: Ib0ca59bf1dfe4ae0266c29c91c1dbe3d02c0904e Author: Lingyun Zhu <lingyun.zhu@intel.com> Signed-off-by: Lingyun Zhu <lingyun.zhu@intel.com> Signed-off-by: Shuo Gao <shuo.gao@intel.com> Signed-off-by: Bruce Beare <bruce.j.beare@intel.com> Signed-off-by: Jack Ren <jack.ren@intel.com> Author-tracking-BZ: 50141
GraphicBufferProducer.cpp
|
45155969dc747d09d267cd1f22baf0eaf886a801 |
09-Aug-2013 |
Mathias Agopian <mathias@google.com> |
make sure GLConsumer::releaseTexImage() works after detachFromContext() Change-Id: I27e0bc57e927d47b2b98113ee37b5396bcc72019
LConsumer.cpp
|
9870c9b66cc73ee31aabba23aa06deaf673ee5ef |
09-Aug-2013 |
Mathias Agopian <mathias@google.com> |
make GLConsumer's debug texture static this is so that we don't burn a gralloc handle and a bit of memory per GLConsumer. Change-Id: I30c3e7ec45d7f1b5426aca8e06c7716870877706
LConsumer.cpp
|
6c913be9ca95fd6b556d056e165a4ba6dc69795b |
08-Aug-2013 |
Jesse Hall <jessehall@google.com> |
Add ISurfaceComposer::destroyDisplay Bug: 10191053 Change-Id: Ia89286f95421344a60ffedaaca5825c4e3cd7f9e
SurfaceComposer.cpp
urfaceComposerClient.cpp
|
45263e2475ac6a885dbd78eff7d4e44f374e5237 |
07-Aug-2013 |
Mathias Agopian <mathias@google.com> |
don't hardcode debug texture dimensions Change-Id: I356333801d246a8cafb3e977a77dc7325e8b822d
LConsumer.cpp
|
5f51ed9499508ecda2d44c794a258fe6f5e22149 |
07-Aug-2013 |
Mathias Agopian <mathias@google.com> |
fix tests more Change-Id: I05c3dd6a22440844f8bd071f4c2b620b2bd8c720
ests/Surface_test.cpp
|
3dce3360e73f01ca8b9d707ad8be40a080cd560b |
07-Aug-2013 |
Mathias Agopian <mathias@google.com> |
fix tests Change-Id: I0f4d613481eda2c44a2d631a81d75de7e52e7a62
ests/Surface_test.cpp
|
3ca76f416bc8665a97636ca8a2d0128b9da9d92c |
07-Aug-2013 |
Mathias Agopian <mathias@google.com> |
remove support for glReadPixels screenshot path this was only needed on some chipset we're not supporting in KLP. Change-Id: I2e8fc07f135030bd61d2e241a8e426f1a4316425
SurfaceComposer.cpp
urfaceComposerClient.cpp
|
126b9c8e95743c0567a3809a5b8d37bda1c25397 |
07-Aug-2013 |
Mathias Agopian <mathias@google.com> |
Fix build. 3rd attempt Change-Id: I4317b34fd07890ea7cf9db51be42d72ef21aca89
ests/Surface_test.cpp
|
db89edc94bd2a78226b407f9f7261e202e7fa325 |
02-Aug-2013 |
Mathias Agopian <mathias@google.com> |
All consumers now take an IGraphicBufferConsumer instead of a BufferQueue 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
ufferItemConsumer.cpp
ufferQueue.cpp
onsumerBase.cpp
puConsumer.cpp
LConsumer.cpp
GraphicBufferConsumer.cpp
urfaceComposerClient.cpp
ests/CpuConsumer_test.cpp
ests/SurfaceTextureClient_test.cpp
ests/SurfaceTexture_test.cpp
ests/Surface_test.cpp
|
687821c05b5a85db1b172e7599861c803d268a8d |
05-Aug-2013 |
Eino-Ville Talvala <etalvala@google.com> |
Merge "BufferQueue: Support query of consumer usage bits"
|
d9ba9707b0ab5c53e34d8ce9a5e71c41b85bb8da |
03-Aug-2013 |
Andy McFadden <fadden@android.com> |
Merge "Roll back recent change"
|
4b49e08385a96398aa2633e096fe916dc9f08768 |
03-Aug-2013 |
Andy McFadden <fadden@android.com> |
Roll back recent change Disable dropping of frames based on timestamp. Resume auto- generating timestamps in Surface. Bug 10151804 Change-Id: I15de26158e1d7ef22a5b150e685a126dc48ae2b4
ufferQueue.cpp
urface.cpp
|
c1c39f8807f5b3dad9ca221d912f7cd4f4f74d9c |
02-Aug-2013 |
Mathias Agopian <mathias@google.com> |
Merge "Binderize the consumer side of BufferQueue"
|
86cd09d388d8f6dd52ec1b3e19170966e99caacb |
02-Aug-2013 |
Andy McFadden <fadden@android.com> |
Merge "Drop frames based on presentation timestamp"
|
a4e19521ac4563f2ff6517bcfd63d9b8d33a6d0b |
01-Aug-2013 |
Mathias Agopian <mathias@google.com> |
Binderize the consumer side of BufferQueue 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
ndroid.mk
ufferQueue.cpp
onsumerBase.cpp
ConsumerListener.cpp
GraphicBufferConsumer.cpp
ests/BufferQueue_test.cpp
ests/SurfaceTexture_test.cpp
|
14fab7dd794cd6bf29e6425340683c6221062b3c |
01-Aug-2013 |
Andy McFadden <fadden@android.com> |
Drop frames based on presentation timestamp 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
ufferQueue.cpp
urface.cpp
|
ba93b3f8e403636b614a4a379f9421bc70dca84f |
02-Aug-2013 |
Mathias Agopian <mathias@google.com> |
log an error when dequeueBuffer gets a NULL Fence Bug: 9858745 Change-Id: If35d6a7d770bf0a42d55bc55880a9ddb721fcfd0
ufferQueue.cpp
GraphicBufferProducer.cpp
urface.cpp
urfaceComposerClient.cpp
|
e142428a9c8b9d2380032cd4d7b55ee440fe8770 |
30-Jul-2013 |
Mathias Agopian <mathias@google.com> |
Make Flattenable not virtual 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
GraphicBufferProducer.cpp
ensor.cpp
|
f7c6087bcc6a85cc82fd8dd83566550f880600ec |
30-Jul-2013 |
Eino-Ville Talvala <etalvala@google.com> |
BufferQueue: Support query of consumer usage bits Bug: 9592202 Change-Id: I61a17758200e61adaca695b426db3df0f6637d4c
ufferQueue.cpp
ests/Surface_test.cpp
|
ad678e18b66f495efa78dc3b9ab99b579945c9e2 |
24-Jul-2013 |
Mathias Agopian <mathias@google.com> |
single buffer mode for BufferQueue Bug: 9891035 Change-Id: Id1ab5f911a6dc4c1d8235e65775b3d3635231ad4
ufferQueue.cpp
LConsumer.cpp
|
bf5b849ec7b2050e1fe05aebb3914823da6a0d07 |
27-Jul-2013 |
Mathias Agopian <mathias@google.com> |
fix build Change-Id: I04df8ec96510b16e84054089f7c02609d8fe2b0c
ests/SurfaceTextureClient_test.cpp
|
c2414bb0989763641ca57cf72c11ef6d86565a23 |
26-Jul-2013 |
Mathias Agopian <mathias@google.com> |
get rid of HAL pixelformats 5551 and 4444 Change-Id: I39409103144c1ba09078c4ddc323a58987fb09ea
LConsumer.cpp
|
9642dba11046bf4ae6fe9db285e07ef9075da64e |
25-Jul-2013 |
Mathias Agopian <mathias@google.com> |
Merge "Fix a race in BufferQueue"
|
6bac363cbdca7f5c4135d66c0e379475ecbd7319 |
24-Jul-2013 |
Mathias Agopian <mathias@google.com> |
Fix a race in BufferQueue 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
ufferQueue.cpp
|
207c1e287c129e7ebf679a3aaf2076c3c47c1afb |
23-Jul-2013 |
Mathias Agopian <mathias@google.com> |
fix log messages and bogus error message also assert when releasing a buffer and it has been queued Change-Id: I6f78d9ceb406ec85ff46c7b6d0c047b14063e3d0
ufferQueue.cpp
|
26a6f37cc06b8014edcedbee8d5558ca7da9abe3 |
19-Jul-2013 |
Mathias Agopian <mathias@google.com> |
make sure to reset the framenumber when a buffer is marked FREE Change-Id: Ic45929f35553de209801f74e8006fb1bf0b25b45
ufferQueue.cpp
|
7cdd786fa80cf03551291ae8feca7b77583be1c5 |
19-Jul-2013 |
Mathias Agopian <mathias@google.com> |
Make ANW.setSwapInterval(0) work again we can now queue/dequeue a buffer in asynchrnous mode by using the async parameter to these calls. async mode is only specified with those calls (it is not modal anymore). as a consequence it can only be specified when the buffer count is not overidden, as error is returned otherwise. Change-Id: Ic63f4f96f671cb9d65c4cecbcc192615e09a8b6b
ufferQueue.cpp
GraphicBufferProducer.cpp
urface.cpp
ests/BufferQueue_test.cpp
ests/SurfaceTextureClient_test.cpp
|
a3fbda3cef04d51a35a3eb64b2f744a989800856 |
19-Jul-2013 |
Mathias Agopian <mathias@google.com> |
BuffferQueue disconnect is now always asynchrnous we tag queued buffers with the "bufferqueue cannot block" flag and use that bit to discard a buffer in the queue by new ones comming in. this allows us to remove the buffer queue drain in disconnect while maintaining the right behaviour if it gets connected again (since each buffer remembers how it was enqueued). Change-Id: I1e703d363a687b70b19ba49cef32213116e8bd3f
ufferQueue.cpp
ests/Surface_test.cpp
|
595264f1af12e25dce57d7c5b1d52ed86ac0d0c9 |
17-Jul-2013 |
Mathias Agopian <mathias@google.com> |
BufferQueue improvements and APIs changes this is the first step of a series of improvements to BufferQueue. A few things happen in this change: - setSynchronousMode() goes away as well as the SynchronousModeAllowed flag - BufferQueue now defaults to (what used to be) synchronous mode - a new "controlled by app" flag is passed when creating consumers and producers those flags are used to put the BufferQueue in a mode where it will never block if both flags are set. This is achieved by: - returning an error from dequeueBuffer() if it would block - making sure a buffer is always available by replacing the previous buffer with the new one in queueBuffer() (note: this is similar to what asynchrnous mode used to be) Note: in this change EGL's swap-interval 0 is broken; this will be fixed in another change. Change-Id: I691f9507d6e2e158287e3039f2a79a4d4434211d
ndroid.mk
ufferItemConsumer.cpp
ufferQueue.cpp
onsumerBase.cpp
puConsumer.cpp
ummyConsumer.cpp
LConsumer.cpp
GraphicBufferProducer.cpp
urface.cpp
ests/BufferQueue_test.cpp
ests/SurfaceTextureClient_test.cpp
ests/SurfaceTexture_test.cpp
ests/Surface_test.cpp
|
b6a0ca7276017ac6d2e846a857d663941a5bd382 |
16-Jul-2013 |
Jean-Baptiste Queru <jbq@google.com> |
Tweaks for forward compatibility Change-Id: Id6a96521b3fd5bd2a034fe89cfa4d3a179a66328
LConsumer.cpp
|
6fda52bc7d4a746abc52b91ce5c97449fb96abdf |
16-Jul-2013 |
Ying Wang <wangying@google.com> |
always pass the BufferQueue explicitely to consumers to fix tests build. Change-Id: I70b9cf5b0d76df709e474181eeb7c42a54ecf43a
ests/Surface_test.cpp
|
8f938a53385a3c6d1c6aa24b3f38437bb2cc47ae |
13-Jul-2013 |
Mathias Agopian <mathias@google.com> |
always pass the BufferQueue explicitely to consumers Change-Id: I883b0a7b19d8e722f9ab714ba6f49e658b02ca86
ufferItemConsumer.cpp
puConsumer.cpp
LConsumer.cpp
urfaceComposerClient.cpp
ests/CpuConsumer_test.cpp
ests/SurfaceTextureClient_test.cpp
ests/SurfaceTexture_test.cpp
|
1585c4d9fbbba3ba70ae625923b85cd02cb8a0fd |
28-Jun-2013 |
Andy McFadden <fadden@android.com> |
Pay attention to buffer timestamps When acquiring a buffer, SurfaceFlinger now computes the expected presentation time and passes it to the BufferQueue acquireBuffer() method. If it's not yet time to display the buffer, acquireBuffer() returns PRESENT_LATER instead of a buffer. The current implementation of the expected-present-time computation uses approximations and guesswork. Bug 7900302 Change-Id: If9345611c5983a11a811935aaf27d6388a5036f1
ufferItemConsumer.cpp
ufferQueue.cpp
onsumerBase.cpp
puConsumer.cpp
LConsumer.cpp
ests/BufferQueue_test.cpp
|
b4b63704c02319765625de360a140ef8a59ab43b |
06-Jun-2013 |
Zhijun He <zhijunhe@google.com> |
CpuConsumer: Add set buffer size and format functions. Add setDefaultBufferSize() and setDefaultBufferFormat(). ImageReader JNI need them. Bug: 9254294 Change-Id: I7d2464d43b0ca73fbb834ed22cecbfbb30eef60c
puConsumer.cpp
|
9e3cb55b8f6f007906872decfe3b8a2541e94dd2 |
07-May-2013 |
Lajos Molnar <lajos@google.com> |
BufferQueue: remove freeAllBuffersExceptHeadLocked() Now that we are having separate buffer-instances for the buffer- queue, we can free all buffers; we don't have to keep the head alive. Change-Id: I023e9161a2501d99333f8868ce438afa914ec50f Signed-off-by: Lajos Molnar <lajos@google.com> Related-to-bug: 7093648
ufferQueue.cpp
|
c5d7b7d323bba8772a9005f7d300ad983a04733a |
03-May-2013 |
Lajos Molnar <lajos@google.com> |
BufferQueue: track buffer-queue by instance vs. by reference Instead of representing the buffer-queue as a vector of buffer indices, represent them as a vector of BufferItems (copies). This allows modifying the buffer slots independent of the queued buffers. As part of this change, BufferSlot properties that are only been relevant in the buffer-queue have been removed. Also, invalid scalingMode in queueBuffer now returns an error. ConsumerBase has also changed to allow reuse of the same buffer slots by different buffers. Change-Id: If2a698fa142b67c69ad41b8eaca6e127eb3ef75b Signed-off-by: Lajos Molnar <lajos@google.com> Related-to-bug: 7093648
ufferItemConsumer.cpp
ufferQueue.cpp
onsumerBase.cpp
puConsumer.cpp
LConsumer.cpp
|
2381033ad001960c606d13e3a4198e5da3672ec7 |
17-May-2013 |
Mathias Agopian <mathias@google.com> |
am e6eef6c1: am ea74d3b7: make the warning timout of Fence::waitForever() implicit and longer * commit 'e6eef6c136b007f3a7e1e19884875b855c0c5f95': make the warning timout of Fence::waitForever() implicit and longer
|
ea74d3b78d607cde17790a7bb83e6f68ffd34cfd |
17-May-2013 |
Mathias Agopian <mathias@google.com> |
make the warning timout of Fence::waitForever() implicit and longer - timeout is now 3 seconds instead of 1 - simplifies the API a bit - allows us to change/tweak this timeout globaly Bug: 8988871 Change-Id: I8d3c6ec43a372f602fb3f29856710339f86c0ec9
ufferItemConsumer.cpp
puConsumer.cpp
LConsumer.cpp
urface.cpp
|
d487ca1ab331e60956c7819265723676b25b7fba |
09-May-2013 |
Eino-Ville Talvala <etalvala@google.com> |
am 87ab83d9: am f743e3db: Merge "Add support for HAL_PIXEL_FORMAT_YCbCr_420_888" into jb-mr2-dev * commit '87ab83d96b9d826e94a7169a6205bcf9c2ee633a': Add support for HAL_PIXEL_FORMAT_YCbCr_420_888
|
c43946b931de5dafd28f49963f9af78e05390b26 |
05-May-2013 |
Eino-Ville Talvala <etalvala@google.com> |
Add support for HAL_PIXEL_FORMAT_YCbCr_420_888 - Add fields to CpuConsumer::LockedBuffer for new information - New lock methods for GraphicBuffer and GraphicBufferMapper for the format Bug: 8734880 Change-Id: If31f82c62d64b6942cf4cc6e5715585c03273f12
puConsumer.cpp
|
748b696c052d0f5e095e1dce34ae6650cd8cb5e4 |
25-Apr-2013 |
Jamie Gennis <jgennis@google.com> |
am 83ad8957: am 5b6ebd71: Merge "libgui_test: fix a couple minor test issues" into jb-mr2-dev * commit '83ad89579e22228c1a48a2a488b86fc0d41057a6': libgui_test: fix a couple minor test issues
|
bdcf1fe2ba4f6fe2eb63a5ec8246b1582b638e04 |
24-Apr-2013 |
Mathias Agopian <mathias@google.com> |
Merge changes I0d9f18d1,Ib96c9161 * changes: Add a --color option to dumpsys SurfaceFlinger clean-up/simplify all dump() APIs
|
ea2d942ddaea11ca5f136e27e0ab8bcd72bb0644 |
24-Apr-2013 |
Jamie Gennis <jgennis@google.com> |
libgui_test: fix a couple minor test issues This change fixes how the MultiTextureConsumerTest.EGLImageTargetWorks checks for pixels. It removes the call to eglSwapBuffers so that the test does not rely on EGL swap-preserve behavior, and it makes the test use checkPixel() rather than doing glReadPixels itself. Bug: 8349336 Change-Id: I0f446a0083eebd07af6fd208762878b4e367725a
ests/SurfaceTexture_test.cpp
|
74d211ae26a0257c6075a823812e40b55aa1e653 |
22-Apr-2013 |
Mathias Agopian <mathias@google.com> |
clean-up/simplify all dump() APIs remove the scratch buffer parameter and use String8::appendFormat() instead. Change-Id: Ib96c91617c8e7292de87433d15cf6232b7d591b0
ufferQueue.cpp
onsumerBase.cpp
LConsumer.cpp
|
e692ab9a6be63193c5b52a6562d85d06c40463b8 |
22-Apr-2013 |
Mathias Agopian <mathias@google.com> |
fix uninitialized variables in GLConsumer mDefaultWidth, mDefaultHeight and mCurrentScallingMode are now initialized to the same default value that BufferQueue uses. Change-Id: I0d4da2022b06419d12745716d8ddbd48c8869953
LConsumer.cpp
|
187edf93c6245bb8fb3187c49f2174492ed6e049 |
17-Apr-2013 |
Igor Murashkin <iam@google.com> |
Merge "BufferItemConsumer: add functions to set default buffer format/size" into jb-mr2-dev
|
f31510a2ac0807cf3d4224a73fc3f8f691f42f5a |
17-Apr-2013 |
Mathias Agopian <mathias@google.com> |
Add a test that checks multi-texturing works with GL_TEXTURE_EXTERNAL_OES Bug: 8395618 Change-Id: I160d29699593b11058533ca753e275d5deeb3b54
ests/Android.mk
ests/SurfaceTexture_test.cpp
|
87d1e3427b536b5cb1123ddc357539cb4075687a |
16-Apr-2013 |
Igor Murashkin <iam@google.com> |
BufferItemConsumer: add functions to set default buffer format/size Bug: 8629088 Change-Id: I06f2e26a70d6dbcfcd70b08b4461e8e401f6e83f
ufferItemConsumer.cpp
|
53dc9044bfe17039592faf4660c5bf715e8120ad |
11-Apr-2013 |
Andy McFadden <fadden@android.com> |
Merge "Updated comments" into jb-mr2-dev
|
c76e8a20e255c72e210d3a276acc69f7e9b7e3fd |
10-Apr-2013 |
Ying Wang <wangying@google.com> |
Merge "Add liblog" into jb-mr2-dev
|
8a0cb4ee0b6c351de82987efb472fa38dfaf608a |
10-Apr-2013 |
Ying Wang <wangying@google.com> |
Add liblog Bug: 8580410 Change-Id: I2ca4fa00dde0b574df3619134836bcb9315bd506
ndroid.mk
|
e6a0f5028b3ef81916e7fd58a64f76861bfa78e0 |
06-Apr-2013 |
Jamie Gennis <jgennis@google.com> |
libgui_test: increase the tolerance for a YUV test This change increases the pixel difference tolerance of the SurfaceTextureGLTest.TexturingFromCpuFilledYV12BufferNpot test from 2 to 3. Bug: 8349135 Change-Id: I82e361a689335f49065cacd8a3fc145d67b125f1
ests/SurfaceTexture_test.cpp
|
ad669b04f4633957eea55b8ad2d8253adcefe39b |
06-Apr-2013 |
Jamie Gennis <jgennis@google.com> |
libgui: fix an EGLImage leak This moves the call to ConsumerBase::abandon from the ConsumerBase dtor to ConsumerBase::onLastStrongRef. The abandon call relies on virtual methods to perform the clean-up, so calling it from the ConsumerBase dtor after the derived classes dtors ran was skipping some of the clean-up. The onLastStrongRef method should get called just before the most derived class's dtor gets called. Bug: 8349135 Change-Id: I836946826927cc1ed69c049049f525f92b17a269
onsumerBase.cpp
ests/SurfaceTextureClient_test.cpp
|
753e3415cdaa99f9453d1ea71b163bf1b148e127 |
05-Apr-2013 |
Andy McFadden <fadden@android.com> |
Updated comments Updated many comments. Added one minor error check. Change-Id: Ib935dd99d417bada91d2e198008a50dd94269316
ufferQueue.cpp
|
ca08833d5ea99130797e10ad68a651b50e99da74 |
29-Mar-2013 |
Mathias Agopian <mathias@google.com> |
don't use compile-time configuration of libgui as much as possible We now detect at runtime which sync features to use, which allows us to remove a lot of the compile-time configuration options. There is still one option though, to disable KHR_fence_sync on some devices (which are more efficient without it). - added a backdoor to get the vendor's EGL strings the new logic is: - use always ANDROID_native_fence_sync if available - fallback to KHR_fence_sync if available and not disabled by the compile-time option - use KHR_wait_sync if available and either of the above is enabled Change-Id: I9c4b49d9ff1151faf902cc93bd53ea5f205aaabf
ndroid.mk
onsumerBase.cpp
LConsumer.cpp
uiConfig.cpp
yncFeatures.cpp
|
2bb716871cf8bfadfff1193ed798da3bffc1f8ec |
28-Mar-2013 |
Mathias Agopian <mathias@google.com> |
replace eglWaitSyncANDROID by eglWaitSyncKHR Change-Id: I22f1b3588011c88389e249f738f1e6915cc97e72
LConsumer.cpp
|
8000d0694bc34bc17d869da546d8ff8790ae7be4 |
27-Mar-2013 |
Mathias Agopian <mathias@google.com> |
make sure to unlock the screenshot's buffer on destruction this fixes a memory leak on various devices Bug: 8475134 Change-Id: I25924674c803a0cb22371a95c60664c36acb0340
urfaceComposerClient.cpp
|
13f01cbdbd34779a234bc674df79e23672fd5c0b |
20-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Pass sp<Fence>s around instead of file descriptors Change-Id: Iac70584a2207940730e8f803a543e4e9a4000c47
LConsumer.cpp
|
aaebffd52f1bfa3d239bba0d60b699c01c6d791c |
21-Mar-2013 |
Eino-Ville Talvala <etalvala@google.com> |
Merge "CpuConsumer: Properly track acquired buffers" into jb-mr2-dev
|
ac006439bb635cd99d8dcbefe95fa680e21519b5 |
21-Mar-2013 |
Ramanan Rajeswaran <ramanan@google.com> |
Merge "Revert "Revert "Change SurfaceControl setPosition to take floats""" into jb-mr2-dev
|
d6480c020b050c777ec1db2dd9c16fccfc47b47b |
21-Mar-2013 |
Ramanan Rajeswaran <ramanan@google.com> |
Revert "Revert "Change SurfaceControl setPosition to take floats"" This reverts commit bbb57f3331c7182399ed82e9c4f93a965677dde3 Change-Id: Ib8f039f530d6b8175b5205c6c0008b135d4001a2
urfaceControl.cpp
|
7c1a487ba8c0a3b591a77e2ddcb33ef9bdfaff64 |
20-Mar-2013 |
Mathias Agopian <mathias@google.com> |
fix build. update test to new API Change-Id: I31ca84c85edff3e2ff90c554769e058110f27d49
ests/Surface_test.cpp
|
abe815dd6978b718c04f6e22e1a893d2b51d11a1 |
20-Mar-2013 |
Mathias Agopian <mathias@google.com> |
rework how we take screenshots for a CPU consumer We're not using IMemoryHeap as a transport anymore, instead we're providing a CpuConsumer and use the IGraphicBufferProducer version of the screenshot API. However, some GPU drivers don't support properly a GPU to CPU path, to work around this, we use a temporary BufferQueue on the server side for the GL rendering, and we use glReadPixels into the CpuConsumer (we're now using a CPU to CPU path which is always supported). Currently this "wrapping" is always performed, but it can be bypassed on devices that support the GPU to CPU path. This also addresses a DoS attack vector on SurfaceFlinger, where an application could consume all of SF's filedescriptors by creating a lot of screenshots in a row. Bug: 8390553 Change-Id: I9e81514c2a7711b9bb393f74305be7d2abe08f1c
SurfaceComposer.cpp
urfaceComposerClient.cpp
|
4c00cc11141da7d159eb2323b186ed344115c0f1 |
16-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Fix argument types in IGraphicBufferProducer methods Bug: 8384764 Change-Id: I7a3f1e1a0584a70af04f9eafef900505389d2202
ufferQueue.cpp
GraphicBufferProducer.cpp
urface.cpp
ests/BufferQueue_test.cpp
|
35ffa6a868f1aa650c90956a4129bb70f780fc99 |
13-Mar-2013 |
Mathias Agopian <mathias@google.com> |
Surface can now be created only from an IGraphicBufferProducer it can't write itself to a parcel, nor can it be created from a parcel. Change-Id: I69165d5c54d6024b3e546e80d8b57e3dedda7893
urface.cpp
|
4d9b822e2c18142e55fe2611aa6cd7dc7d4a62c6 |
13-Mar-2013 |
Mathias Agopian <mathias@google.com> |
get rid of ISurface ISurface was only used to get the IGraphicBufferProducer from a Layer. It's now replaced by a BBinder subclass / IBinder and is only used as a handle to the surface, to both refer to it and manage its life-time. Also cleaned-up a bit the ISurfaceComposer interface and "create layer" code path. Change-Id: I68d0e02d57b862cffb31d5168c3bc10cea0906eb
ndroid.mk
Surface.cpp
SurfaceComposerClient.cpp
urfaceComposerClient.cpp
urfaceControl.cpp
|
d2d5a64aa21cfc548c8c8333d1b36979e5e5a640 |
12-Mar-2013 |
Mathias Agopian <mathias@google.com> |
workaround a deadlock when taking screenshots into a surface When disconnecting from BufferQueue, we now drain the queue except the head (which means in the screenshot case we won't have to block, but we might not have a buffer to show, this will appear as an error in the log). Bug: 8362363 Change-Id: If80989aac3c917beea2ebddf3cbb502849d394da
ufferQueue.cpp
|
7589b2a7975cc3bc2a0659ab6503ceb3e4d94048 |
08-Mar-2013 |
Mathias Agopian <mathias@google.com> |
add two libgui tests we check that the order in which we destroy GLConsumer wrt. releasing the corresponding EGLSurface via eglMake(Un)Current doesn't leak a buffer. On at least 2 devices this test doesn't pass. Change-Id: I63ab83951b4b0a977f38571158f948cbd9dc7cec
ests/SurfaceTexture_test.cpp
|
042ecee2abf8584585f1f22f661ac6be9689edf4 |
01-Mar-2013 |
Eino-Ville Talvala <etalvala@google.com> |
CpuConsumer: Properly track acquired buffers CpuConsumer cannot simply assume a slot's buffer is the same buffer between acquire and release, and therefore it could be possible for the same slot to get used for a second acquired buffer, if there's a producer disconnect in between. This would cause a problem when the first buffer is released by the consumer. Instead, use an independent list of acquired buffers to properly track their state. Bug: 8291751 Change-Id: I0241ad8704e53d47318c7179b13daed8181b1fab
puConsumer.cpp
|
f082323c0dbd915d2ad7b6f4d9c732e230fcda46 |
05-Mar-2013 |
Igor Murashkin <iam@google.com> |
Merge "CpuConsumer_test: Extend test with new formats RGBA8888 and optional Y8/Y16" into jb-mr2-dev
|
29e2047cb4335234ddc0575be1bae66d4e2ff691 |
06-Feb-2013 |
Igor Murashkin <iam@google.com> |
CpuConsumer_test: Extend test with new formats RGBA8888 and optional Y8/Y16 Change-Id: I0a0f6ce73516883bf50c749a1759abbdb3748e08
ests/CpuConsumer_test.cpp
|
306f18c5fb15ac05db09ece7241af02b9713a23d |
05-Mar-2013 |
Mathias Agopian <mathias@google.com> |
Merge "rework screenshot API and implementation" into jb-mr2-dev
|
006a601f22b275bcabf608f630b321df027d56d1 |
03-Mar-2013 |
Jesse Hall <jessehall@google.com> |
Fix reading NULL Surfaces from Parcels Writing a NULL Surface was being read as a non-NULL Surface with NULL mGraphicBufferProducer. Before the SurfaceTextureClient -> Surface refactoring, you'd get a NULL Surface, and some code relies on that. Bug: 8291161 Change-Id: I477bfe8882693e53a5f604a3d2c9e3cfe24473b4
urface.cpp
|
2a9fc493dfdba67108e4335bb1fe931bc1e2a025 |
01-Mar-2013 |
Mathias Agopian <mathias@google.com> |
rework screenshot API and implementation - SurfaceFlinger now supports to take a screenshot directly into an IGraphicBufferProducer - reimplement the IMemoryHeap screenshot on top of the above - reimplement LayerScreenshot such that its BufferQueue is directly used as the destination of the screenshot. LayerScreenshot is now a thin wrapper around Layer Bug: 6940974 Change-Id: I69a2096b44b91acbb99eba16f83a9c78d94e0d10
SurfaceComposer.cpp
urfaceComposerClient.cpp
|
bbb57f3331c7182399ed82e9c4f93a965677dde3 |
01-Mar-2013 |
Dave Burke <daveburke@google.com> |
Revert "Change SurfaceControl setPosition to take floats" Temporary, to fix weekend build, until we get Nvidia code drop. This reverts commit 9a867a8798fa6ea21f6341db31e38ea64fde6c83 DO NOT MERGE Change-Id: I7b5dbc4db46ef3d97dc8598057d5487d6971178b
urfaceControl.cpp
|
eb0d12963d271052c24abb025d698504df9e7573 |
28-Feb-2013 |
Eino-Ville Talvala <etalvala@google.com> |
CpuConsumer: Add optional asynchronous mode Bug: 8290146 Bug: 8291751 Change-Id: I9c8ac4bff38b0411e987a204e540d018dba6d0b4
puConsumer.cpp
|
64d8b1903e4b5f2838818eedcf4fef748b38709c |
28-Feb-2013 |
Eino-Ville Talvala <etalvala@google.com> |
CpuConsumer: Don't unlock buffers on producer disconnect Bug: 8291751 Change-Id: I062a3d34b41183d07fb6b9109cdb6bf0c0c75672
puConsumer.cpp
|
993e14fe1085e78b5f5d8b759dd3c757b4327eb4 |
23-Feb-2013 |
Mathias Agopian <mathias@google.com> |
Added a test that checks the error behavior of ConsumerBase::abandon We check that calling eglSwapBuffers() on an abandonned BufferQueue return EGL_BAD_SURFACE -- this is to ensure consistancy between drivers. Change-Id: Ibb548e0cf767ceee69f2fc4a85811d15a6522277
ests/SurfaceTextureClient_test.cpp
|
9a867a8798fa6ea21f6341db31e38ea64fde6c83 |
22-Feb-2013 |
Michael Wright <michaelwr@google.com> |
Change SurfaceControl setPosition to take floats Bug: 8153162 Change-Id: If3c4b7a3e124ace25999eb9a569dc9a806a1fbc2
urfaceControl.cpp
|
cf0b8c85fb0106751256dba7821f86b5ad03126c |
20-Feb-2013 |
Mathias Agopian <mathias@google.com> |
get rid of Surface::getISurfaceTexture() this was there just for legacy reasons. Change-Id: I0a48d6e04d7efa65033f9f10c91bba557f16ae8b
ests/SurfaceTextureClient_test.cpp
|
e3c697fb929c856b59fa56a8e05a2a7eba187c3d |
15-Feb-2013 |
Mathias Agopian <mathias@google.com> |
Refactoring: Rename SurfaceTextureClient to Surface Change-Id: Ibed34175ae273608393aaa5f0a7df207dc40d709
ndroid.mk
urface.cpp
urfaceComposerClient.cpp
urfaceControl.cpp
urfaceTextureClient.cpp
ests/CpuConsumer_test.cpp
ests/SurfaceTextureClient_test.cpp
ests/SurfaceTexture_test.cpp
|
ac9fa427d4a86745e60a5f7fd8e3ea340c4db907 |
12-Feb-2013 |
Mathias Agopian <mathias@google.com> |
get rid of Surface identity and token we use the IBinder instead. Change-Id: I4aa0b58869ba43f19980013620051e5a261b062d
SurfaceComposerClient.cpp
ayerState.cpp
urface.cpp
urfaceComposerClient.cpp
|
1df8c345854155cbbcb9f80de9d12d66ea70ac08 |
20-Dec-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: disallow NULL Fence pointers This change eliminates the uses of a NULL sp<Fence> indicating that no waiting is required. Instead we use a non-NULL but invalid Fence object for which the wait methods will return immediately. Bug: 7892871 Change-Id: I5360aebe3090422ef6920d56c99fc4eedc642e48
ufferItemConsumer.cpp
ufferQueue.cpp
onsumerBase.cpp
LConsumer.cpp
GraphicBufferProducer.cpp
urfaceTextureClient.cpp
ests/BufferQueue_test.cpp
ests/SurfaceTexture_test.cpp
|
466a192d2088f9238d34597d1aa28da41367c1ca |
08-Jan-2013 |
Andy McFadden <fadden@android.com> |
Minor tweaks. Change-Id: I9f82f574112141b6aa074c42303056cd52d5c478
GraphicBufferProducer.cpp
|
2adaf04fab35cf47c824d74d901b54094e01ccd3 |
18-Dec-2012 |
Andy McFadden <fadden@android.com> |
Rename ISurfaceTexture and SurfaceTexture The C++ class names don't match what the classes do, so rename ISurfaceTexture to IGraphicBufferProducer, and SurfaceTexture to GLConsumer. Bug 7736700 Change-Id: Ia03e468888025b5cae3c0ee1995434515dbea387
ndroid.mk
ufferQueue.cpp
onsumerBase.cpp
LConsumer.cpp
GraphicBufferProducer.cpp
Surface.cpp
SurfaceComposer.cpp
SurfaceTexture.cpp
ayerState.cpp
urface.cpp
urfaceComposerClient.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
ests/BufferQueue_test.cpp
ests/SurfaceTextureClient_test.cpp
ests/SurfaceTexture_test.cpp
|
c911ea531830b9dd5d25cf6f0c03f2f93908c4d1 |
12-Dec-2012 |
Jamie Gennis <jgennis@google.com> |
stop using a deprecated SurfaceTextureClient ctor Change-Id: I8c8282a0debd551db290dd6849faf272a88c704c
ests/SurfaceTextureClient_test.cpp
ests/SurfaceTexture_test.cpp
|
3c1ada982202d97ecd0a9a542b5373e2d78658fb |
12-Dec-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTextureClient: remove a deprecated ctor"
|
4def8600305bc2b7f947c9fc0811095b7c17c8e2 |
12-Dec-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTextureClient: remove a deprecated ctor Change-Id: Ibf2746fdca26851677cd90199c60eab80f6d0c73
urfaceTextureClient.cpp
|
c6f04666c205a72add3c856455bf212f0c84d6fc |
12-Dec-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceFlinger: Move GraphicBufferAlloc to libgui"
|
392edd88cb63d71a21a86a02cf9c56ac97637128 |
30-Nov-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: Move GraphicBufferAlloc to libgui This change moves the GraphicBufferAlloc class from SurfaceFlinger to libgui. Change-Id: Idf31d2004efa2651b60590733f73c4a7b831e8a9
ndroid.mk
raphicBufferAlloc.cpp
|
97eba8904c2f221c42a9473407223a4c3a213f75 |
12-Dec-2012 |
Andy McFadden <fadden@android.com> |
Avoid unnecessary texture bind In SurfaceFlingerConsumer, check to see if native fence sync is enabled. If so, defer the texture binding step to Layer::onDraw. Change-Id: I7d4034a31c0143207eea2509dfa13ef3820f9b8c
urfaceTexture.cpp
|
bf974abe92f7495529916fe0f483f3b56e7c30e3 |
05-Dec-2012 |
Andy McFadden <fadden@android.com> |
Refactor SurfaceTexture a bit. Rearranges updateTexImage() so that the SurfaceFlinger-specific behavior is in a new SurfaceFlingerConsumer subclass. SurfaceTexture behavior should not be altered. Instead of acquire-bind-release we now do acquire-release-bind, but since it's all done with the lock held there shouldn't be any externally-visible change. Change-Id: Ia566e4727945e2cfb9359fc6d2a8f8af64d7b7b7
ufferQueue.cpp
urfaceTexture.cpp
|
a4367996681bae2612beebecb871961c5b361b2c |
07-Dec-2012 |
Jamie Gennis <jgennis@google.com> |
am 50f8d285: am d4e70620: am 72c3f7d8: Revert "ConsumerBase: free buffers outside the lock" * commit '50f8d2856b6644059b31684687842bf9c1f2e814': Revert "ConsumerBase: free buffers outside the lock"
|
72c3f7d88160b7c279f90f0efe3c1cb12cd140ae |
07-Dec-2012 |
Jamie Gennis <jgennis@google.com> |
Revert "ConsumerBase: free buffers outside the lock" This reverts commit b21a4e3b5f7f07ed160ca6e1809313e2a8e2a6a4.
onsumerBase.cpp
|
b5fe96b8130b5bacbc1762ba7f819a9f9b72bf59 |
07-Dec-2012 |
Jamie Gennis <jgennis@google.com> |
am 05989772: am 3ed2736c: am b21a4e3b: ConsumerBase: free buffers outside the lock * commit '05989772d5b46cd5328e88d546f04deef39cc3c8': ConsumerBase: free buffers outside the lock
|
b21a4e3b5f7f07ed160ca6e1809313e2a8e2a6a4 |
07-Dec-2012 |
Jamie Gennis <jgennis@google.com> |
ConsumerBase: free buffers outside the lock This change makes ConsumerBase::onBuffersReleased hold a reference to all its gralloc buffers until after the mutex is unlocked. This prevents slow gralloc::free calls from causing lock contention with rendering threads. Bug: 7675940 Change-Id: I0ec805d1b612afeeecfffec03f982371d27d93be
onsumerBase.cpp
|
73d5662e4c1639e0aa462d420433fe7efa248245 |
20-Nov-2012 |
Mathias Agopian <mathias@google.com> |
fix typo that broke all the builds cherry pick into master since auto-merger is blocked Bug: 7584338 Change-Id: Ie7d7c238de1fd224b3b0bae9669a8dcb2f700a79
ufferQueue.cpp
|
764c197c6fc2bf10b038c33b320a4e95594d52d8 |
20-Nov-2012 |
Mathias Agopian <mathias@google.com> |
fix typo that broke all the builds Bug: 7584338 Change-Id: Ieb8c27a544ac583af9aa1e0376e33a673d2d9673
ufferQueue.cpp
|
bd3e837ec726e5a1c7fca7173d8230ca60a3ba6d |
20-Nov-2012 |
Mathias Agopian <mathias@google.com> |
am c208cdd4: am 1d3612f1: am 2a8c49eb: fix an out-of-bounds memory access * commit 'c208cdd402d767228a34074d589c6368cc656b7d': fix an out-of-bounds memory access
|
2a8c49eb5dd51b2e60c9a78bea00870867d91c03 |
16-Nov-2012 |
Mathias Agopian <mathias@google.com> |
fix an out-of-bounds memory access in this particular case, this OOB is always harmless (and that's why it didn't get fixed from MR1), however, it interfers with valgrind debugging. Change-Id: Ic977e03287e59c4b124a89146c9023bd0cb540a8
ufferQueue.cpp
|
74284b9467a753209054bfa769ba1e6d110e34f9 |
05-Nov-2012 |
Igor Murashkin <iam@google.com> |
Merge "Change ConsumerBase's FrameAvailableListener to be a weak pointer"
|
a4a3149a36bc69a06e4824aeae909ab910661070 |
29-Oct-2012 |
Igor Murashkin <iam@google.com> |
Change ConsumerBase's FrameAvailableListener to be a weak pointer This prevents strong reference cycles when the listener implementation also holds a strong pointer to the ConsumerBase Bug: 7425644 Change-Id: I1514b13a32b18d421c902dddebec0765a989c55c
onsumerBase.cpp
|
f3f7db6346323ca3ec4ec449a2622adddc6306b4 |
31-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Allow global transactions to nest. This change fixes a number of small glitches that can occur when multiple components in the same process are updating surfaces. One would expect that updates to disjoint sets of surfaces would not collide but this is not the case. The first component to close the global transaction causes all pending updates to be applied, including those that another component might not have finished setting up if it also had an open transaction at the same time. Change-Id: I99345958581abbe0e1e325a5bcba37e8941a313a
urfaceComposerClient.cpp
|
dd3cb84cfbe8068790c6233b5829fae9c4a0ee93 |
20-Oct-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: add support for secure displays This change adds support for displays that are not allowed to display surfaces with the eSecure flag set. All non-virtual displays are considered secure, while virtual displays have their secure-ness specified at creation time. Bug: 7368436 Change-Id: I81ad535d2d1e5a7ff78269017e85b111f0098500
SurfaceComposer.cpp
urfaceComposerClient.cpp
|
7f79a2bd5c92bc626890dc16ffb8cd2de934e5fb |
17-Oct-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "BufferQueue: alloc without holding the lock" into jb-mr1-dev
|
2d5e230292c27d59f4c096bc742a0a19abf811c1 |
16-Oct-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: add animation transactions This change adds a transaction flag for WindowManager to indicate that a transaction is being used to animate windows around the screen. SurfaceFlinger will not allow more than one of these transactions to be outstanding at a time to prevent the animation "frames" from being dropped. Bug: 7353840 Change-Id: I6488a6e0e1ed13d27356d2203c9dc766dc6b1759
urfaceComposerClient.cpp
|
1efe099a51e2231bd938a6afcf66e6584deec0f2 |
05-Oct-2012 |
Jamie Gennis <jgennis@google.com> |
BufferQueue: alloc without holding the lock This change makes BufferQueue::dequeueBuffer release its mutex before allocating new buffers. This should alleviate lock contention in SurfaceFlinger where SF's main thread can get blocked waiting for an allocation operation to complete. Bug: 7335075 Change-Id: I1b000539cc616a695afab2e9c68507db69e57b13
ufferQueue.cpp
|
2a09bb321930e1f782599ec902bca1db58b9af77 |
09-Oct-2012 |
Jeff Brown <jeffbrown@google.com> |
Add blankDisplay/unblankDisplay to SurfaceComposerClient. Bug: 7309812 Change-Id: Ia401d642094a46c62f0d26c65da1d11341e203a1
urfaceComposerClient.cpp
|
9504eb915c9628e130f45019bdefda0168089886 |
05-Oct-2012 |
Jesse Hall <jessehall@google.com> |
Fix race condition in ConsumerBase::addReleaseFence() This needs the ConsumerBase mutex locked, but wasn't locking it. Two of the four places that called it already held the lock so were fine. Now addReleaseFence() takes the lock itself, and I added addReleaseFenceLocked() for the two already-locked callers, since in one of them dropping the lock would be inconvenient. Bug: 7289269 Change-Id: I7a5628adb516f8eec782aa6c14128202f96d7b0a
ufferItemConsumer.cpp
onsumerBase.cpp
urfaceTexture.cpp
|
d920670f252d7984f8729cd578ce8c0befa77273 |
04-Oct-2012 |
Stephen Hines <srhines@google.com> |
Fix missing parens in CleanSpec.mk. Change-Id: I0440a942d3e685d619ec9cc402d3293cb3f52df1
leanSpec.mk
|
3fbbd076ad571810d9107ed870cfce2e8c062d10 |
05-Oct-2012 |
Raph Levien <raph@google.com> |
Fix broken CleanSpec.mk in libs/gui The CleanSpec is missing parens, which causes $P to be interpreted as a single variable, and the following printed to the log: Clean step: rm -rf RODUCT_OUT/obj/SHARED_LIBRARIES/libgui_intermediates This patch adds parens as needed. Change-Id: I587998fa67a4884418c286360a577cdbb6ea9a21
leanSpec.mk
|
a573945df7d21cfb73aa9cdba41561105e2ffb01 |
28-Sep-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: enable fence support for exynos5 Change-Id: Iffc48412b8c951116a956a3ac7dab8d75eed13da Bug: 7238122
ndroid.mk
leanSpec.mk
|
3fd12e41afcf323fdb99a4cf6bef0f904d72cc8b |
03-Oct-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: fix up compile options This change adds debug info to SurfaceFlinger's dumpsys to indicate that the USE_WAIT_SYNC compile option was enabled, and it removes the ALLOW_DEQUEUE_CURRENT_BUFFER option. Bug: 7238122 Change-Id: I70e08e34c2ef58aa6d2f88229e781a119f84b5a9
ndroid.mk
ufferQueue.cpp
uiConfig.cpp
urfaceTexture.cpp
|
ba607d53c6a94ea8c4c12571980c4ad159af308b |
01-Oct-2012 |
Jesse Hall <jessehall@google.com> |
Add Fence::waitForever which logs a warning timeout, and use it Bug: 7217641 Change-Id: If0c1a613ead307c4045a47824174bf40c72bc7d7
ufferItemConsumer.cpp
puConsumer.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
|
c01a79d77b829e7de86ef137694e8ad708470ca1 |
28-Sep-2012 |
Andy McFadden <fadden@android.com> |
Pass display arg to blank/unblank This allows us to blank and unblank displays other than the built-in display (e.g. HDMI). Bug: 7240511 Change-Id: I89ea13f9e497be74c3e1231d0c62fb558e93e0f8
SurfaceComposer.cpp
|
38b657265ccc5ae45bd7860a68b0d9373b47a2f3 |
28-Sep-2012 |
Iliyan Malchev <malchev@google.com> |
Revert "Compatibility work around for bad graphics driver dependency." This reverts commit a50b51c03aca449920fc8581a738032a7bce7150 Change-Id: Ibdcd776a7f241dbb2475403ea04f939249774c41
urfaceComposerClient.cpp
|
4803b74e2a12a508f7bbfde6f6a962fe3299c61c |
25-Sep-2012 |
Andy McFadden <fadden@android.com> |
Show build config in dumpsys SurfaceFlinger This adds a line to the "dumpsys SurfaceFlinger" output that shows build-time configuration values. Example: Build configuration: [sf HAS_CONTEXT_PRIORITY] [libui] \ [libgui USE_FENCE_SYNC] Bug 7206633 Change-Id: Ibe1856b459d34a4be6ee83a4ebfd2807e6cc68a0
ndroid.mk
uiConfig.cpp
|
e96e9e1093b5700e9f403a6e2479da7dc36d3b71 |
25-Sep-2012 |
Mathias Agopian <mathias@google.com> |
fix a crasher in SurfaceTexture's setFilteringEnabled bug: 7211067 Change-Id: Id8658a8df429d76c20ab9112858b38e52343dc9c
urfaceTexture.cpp
|
7aff4a5de47bf32b0934f5744cd1df4ce666d2d2 |
24-Sep-2012 |
Jamie Gennis <jgennis@google.com> |
ConsumerBase: make fence names meaningful Change-Id: I3580120cb63c027c327e80ec70e68650b75395de
onsumerBase.cpp
|
d1b330de416adff0d178a5cb7271419d9ed7a89a |
21-Sep-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix an out of bounds array write This change fixes an issue causing the mEglContext member of a SurfaceTexture to get incorrectly zeroed out. This would happen when a call to ConsumerBase::releaseBufferLocked resulted in the current buffer being freed. Freeing the current buffer would set SurfaceTexture::mCurrentTexture to -1, which would then be used by SurfaceTexture::releaseBufferLocked to reset the current slot's EGLSyncKHR to EGL_NO_SYNC_KHR (= 0). This would overwrite the mEglContext field, resulting in context mismatch errors in SurfaceTexture::doGLFenceWaitLocked. The fix is to simply use the buffer slot that's passed in to SurfaceTexture::releaseBufferLocked rather than mCurrentTexture. Change-Id: I0e5e2bd88fcbb354c35a3744f317716fff3e0e41
urfaceTexture.cpp
|
42223f6fdd582dc4e87ad94c212adaed3341f154 |
10-Sep-2012 |
Jeff Boody <jboody@codeaurora.org> |
gui: conditionally set USE_NATIVE_FENCE_SYNC for msm8960 Change-Id: Ib7ad11597ef7c79162a0b0a49a1b8ae16d192c10 Signed-off-by: Iliyan Malchev <malchev@google.com>
ndroid.mk
leanSpec.mk
|
3941cb240d438bfdebe24920bb2ada86456a0bf9 |
18-Sep-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: default to doing GL sync This change makes updateTexImage default to performing the necessary synchronization and adds an argument for SurfaceFlinger to disable that synchronization so that it can be performed lazily. Change-Id: I7c20923cc786634126fbf7021c9d2541aa77be5d Bug: 6991805
urfaceTexture.cpp
|
8dfa92fef9759a881e96ee58d59875d35023aab9 |
18-Sep-2012 |
Andy McFadden <fadden@android.com> |
Plumb display name into SurfaceFlinger The Surface createDisplay() call takes a display name for debugging. This change carries it through SurfaceFlinger and displays it in the "dumpsys SurfaceFlinger" output. Bug 7058158 Change-Id: I79f3474a8656ff1beb7b478e0dbf2c5de666118a
SurfaceComposer.cpp
urfaceComposerClient.cpp
|
71f683ac8d28e93928a9bb1744f43264b4846e8f |
15-Sep-2012 |
Andy McFadden <fadden@android.com> |
New test Added a test to confirm that the transform hint is being respected. Bug: 7162482 Change-Id: I892fe962f8cf2759ff951b4f5065b9ac2732c3d1
ests/SurfaceTexture_test.cpp
|
6905205c8d130b6ea3a813c1b9283492ed183367 |
15-Sep-2012 |
Andy McFadden <fadden@android.com> |
Fix transform hints The hints were being set a little too late, so the pre-rotation stuff wasn't quite working. Bug 7054997 Change-Id: Id8d5c626db7a76f768ba762a145b315878ee08e6
ufferQueue.cpp
|
c272430960047de4e9b2f169fb053bd0aedce3b1 |
12-Sep-2012 |
Andy McFadden <fadden@android.com> |
Merge "Watch for SurfaceFlinger death" into jb-mr1-dev
|
98ff0597bd9e57ba133d54f8f09841f96955cba1 |
10-Sep-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: eglDestroySync after duping its fd This change adds a call to eglDestroySync after we've dup'd the fd for the Android fence that the EGLSyncKHR object wraps. Change-Id: I4fa6ece863260793630d70bb9a69d6284d05d99e
urfaceTexture.cpp
|
61e04b92bdeafc6fca89052d14dab1bd0c384a71 |
10-Sep-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: use eglWaitSync This change adds a compile-option to use eglWaitSyncANDROID to ensure that texturing operations that access the current buffer of a SurfaceTexture do not occur until the buffer is completely written. It also moves this synchronization into a new SurfaceTexture method called doGLFenceWait and changes SurfaceFlinger's Layer class to use that method rather than performing its own wait on the fence. Change-Id: I70afa88086ca7ff49a80e3cd03d423767db7cb88
urfaceTexture.cpp
|
01dbf5539bff4bece3f9bbfa55046b04a8a45e99 |
06-Sep-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: use EGL-created native fences This change adds support for using Android fences that come from EGLSyncKHR objects as the release fence for a buffer. Change-Id: Ice192ce2ec001020f909a2018afdf0f17b24dec9
urfaceTexture.cpp
|
6652b3edcb7ef5402c05db12f477ceb23c27d6ec |
07-Sep-2012 |
Andy McFadden <fadden@android.com> |
Watch for SurfaceFlinger death The ComposerService object wasn't watching for SurfaceFlinger restarts, which doesn't usually matter because the app framework restarts when SurfaceFlinger dies. However, mediaserver continues to run, which means its ComposerService object was trying to use a dead handle, and playback of DRM movies was failing. This adds a DeathRecipient listener and some logic to re-establish the SurfaceFlinger connection. Bug 6645813 Change-Id: I07581b881d3835601aa57d5358c8259d93bc4515
urfaceComposerClient.cpp
|
b27254154642575dfb4bbfa79fbedde7d7ee23dd |
06-Sep-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: move fence handling into ConsumerBase This change moves some common fence handling code into the base class for BufferQueue consumer classes. It also makes the ConsumerBase class initialize a buffer slot's fence with the acquire fence every time a buffer is acquired. Change-Id: I0bd88bc269e919653b659bfb3ebfb04dd61692a0
ufferItemConsumer.cpp
onsumerBase.cpp
puConsumer.cpp
urfaceTexture.cpp
|
00e8c7a88a5b9c4104a71013a713acd3e4d3b77b |
05-Sep-2012 |
Mathias Agopian <mathias@google.com> |
display projection API now has a single function instead of 3 Change-Id: I9bf46d372b77d547486d4bbe6f1953ec8c65e98f
urfaceComposerClient.cpp
|
c68f2ecfa02037144d1a3856f637a77f523cf416 |
31-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
BufferQueue: add a setMaxAcquiredBufferCount check This change adds a check to verify the validity of the value passed to setMaxAcquiredBufferCount. Change-Id: I39730557aa58261e678bd6e4fce11bab78e98362
ufferQueue.cpp
ests/BufferQueue_test.cpp
|
9e75ddda93888755d0b14144b62e896cd9f78f3a |
01-Sep-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: add BufferQueue test infrastructure This change adds some infrastructure for testing the BufferQueue class. It also includes a test that tests the new check in BufferQueue::acquireBuffer that prevents the consumer from acquiring more than one buffer beyond the max acquired buffer count that was set. Change-Id: I38554ad3f9a53d2ddeba7ef0deee35ec2e2f9775
ests/Android.mk
ests/BufferQueue_test.cpp
|
fdb6b49dfa9f1f71b2e564c9f423043f90f9346c |
31-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: disable CpuConsumer tests This change disables the CpuConsumer tests because they require a Gralloc format that is not supported on all devices. Change-Id: Ifaa618062c1dae53d9fcb9e16ba92c480d3dbd0c
ests/CpuConsumer_test.cpp
|
4697528eac85d34b2b375ece1d4b40aebe3fa5dd |
31-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix a few tests Change-Id: Ic74fe8791361f8fe91ad7149720fafd4cc154ac1
ests/SurfaceTextureClient_test.cpp
ests/SurfaceTexture_test.cpp
|
d69097f936d9780957a51ce77335ae409b32aaa3 |
30-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: add some error checks This change adds a few error checks both in the framework and in some tests. Change-Id: I2baf2676942a0dc15866e75852a775a0091ed16d
GraphicBufferAlloc.cpp
urfaceTexture.cpp
ests/SurfaceTexture_test.cpp
|
5e5efde7874a9fab650fd4b724ceef46db850470 |
29-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
BufferQueue: add a check for the max acquired bufs This change adds an error check to ensure that consumers don't acquire more buffers than the maximum that they set. Change-Id: I026643564bde52732e4ee6146972b207ddbbba77
ufferQueue.cpp
|
72f096fb1ad0a0deadbfac5f88627461905d38e8 |
28-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
BufferQueue: use max acquired buffer count This change makes BufferQueue derive the min undequeued buffer count from a max acquired buffer count that is set by the consumer. This value may be set at any time that a producer is not connected to the BufferQueue rather than at BufferQueue construction time. Change-Id: Icf9f1d91ec612a079968ba0a4621deffe48f4e22
ufferItemConsumer.cpp
ufferQueue.cpp
puConsumer.cpp
|
1847f7fd799f92300b3786e49f5883eaa03f4507 |
31-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "BufferQueue: simplify max buffer count handling" into jb-mr1-dev
|
2b9776982360a234803665cb79e8abcfeb0e3c79 |
31-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "BufferQueue: clean up buffer counting" into jb-mr1-dev
|
94f261556cc5f4aa628cd5b71bf923b583f6e3c3 |
30-Aug-2012 |
Wink Saville <wink@google.com> |
Revert "A vendor ril depends on a native screen shot code." This reverts commit 9b5782baf0a8a2d7afc7129453beb5df7abe7650. A new ril for toro, hack no longer needed.
urfaceComposerClient.cpp
|
e191e6c34829aec406a9cfe3e95211f884a311ff |
25-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
BufferQueue: simplify max buffer count handling This change reworks how the maximum buffer count is computed. Change-Id: I7d3745814b9bd6f6f447f86bfea8eb7729914ebf
ufferQueue.cpp
|
31a353da225af5329735451c761b430d82dfda1b |
25-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
BufferQueue: clean up buffer counting This change is a clean up of some of the handling of the maximum number of buffers that are allowed at once. It mostly renames a few member variables and methods, but it includes a couple small refactorings. Change-Id: I9959310f563d09583548d4291e1050a7bbc7d87d
ufferQueue.cpp
urfaceTexture.cpp
ests/SurfaceTexture_test.cpp
|
9b5782baf0a8a2d7afc7129453beb5df7abe7650 |
29-Aug-2012 |
Wink Saville <wink@google.com> |
A vendor ril depends on a native screen shot code. Add a temporary shim until the vendor fixes the ril. Bug: 7073467 Change-Id: Ia95a58bd90677c03406c988d1c29ae785f8662f2
urfaceComposerClient.cpp
|
a50b51c03aca449920fc8581a738032a7bce7150 |
28-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Compatibility work around for bad graphics driver dependency. This is a compatibility shim for one product whose drivers are depending on SurfaceComposerClient::getDisplayInfo( int, DisplayInfo*) when it really shouldn't. Revert this patch when the problem has been resolved. Bug: 7065398 Change-Id: I6542691b81fd1b1e1d79500a62e82d40a3d51db7
urfaceComposerClient.cpp
|
380223bf1b340e7503177254a60d5982f95ab793 |
27-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Remove unused "layer" argument from show(). Change-Id: I8944a9f4a27c330b11e5e837c69b88c8f84145ba
urface.cpp
urfaceComposerClient.cpp
|
9d4e3d2f42e93e2d12bacabe97d307d30c3c20dd |
25-Aug-2012 |
Jeff Brown <jeffbrown@google.com> |
Banish DisplayID from the SurfaceFlinger API. Use only display tokens in the API to refer to new displays. Don't require the caller to specify the display when creating a surface (since in general a surface could be shown on any display). This is intended to be a minimum change just to update the API. Note that SurfaceFlinger still uses DisplayID in a few places internally that might cause some features not to work properly when there are multiple displays (LayerScreenshot, for example). Change-Id: I3d91eec2da406eefd97bcd53655d403ad865a7e6
SurfaceComposer.cpp
SurfaceComposerClient.cpp
urface.cpp
urfaceComposerClient.cpp
ests/SurfaceTexture_test.cpp
ests/Surface_test.cpp
|
490aee0fc5012acf2bf0b1dfe9c09e6fcca606fc |
24-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTexture: inherit from ConsumerBase (try 2)" into jb-mr1-dev
|
04930445031c5f41707806182bb7a152e64ddede |
22-Aug-2012 |
Eino-Ville Talvala <etalvala@google.com> |
Merge "Add BufferItemConsumer, a simple BufferQueue consumer." into jb-mr1-dev
|
9fea3421ffddf6480f57f55a25936a886043d909 |
08-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: inherit from ConsumerBase (try 2) This change makes SurfaceTexture inherit from ConsumerBase. It removes all of the functionality from SurfaceTexture that is now provided by the base class. This includes fixes for two bugs that were found after checking this change in the first time and then reverting it. Change-Id: Ie2d9f4f27cfef26fdac341de3152e842b01a58d2
onsumerBase.cpp
urfaceTexture.cpp
|
e232fdca2a62dc5e81b550f5be8710e36174e7a6 |
21-Aug-2012 |
Eino-Ville Talvala <etalvala@google.com> |
Add BufferItemConsumer, a simple BufferQueue consumer. BufferItemConsumer allows for acquiring BufferQueue's BufferItems, which contain all the data and metadata the BufferQueue has for a given graphics buffer. This consumer is useful when direct access to the native buffer_handles is needed by the client. Also includes a minor cleanup of CpuConsumer's use of 'virtual'. Bug: 6243944 Change-Id: If7dc4192b15ac499555f1eda42a85140f2434795
ndroid.mk
ufferItemConsumer.cpp
puConsumer.cpp
|
84a9a3c0ec35915d3cc40e9e889d4032e189894a |
21-Aug-2012 |
Eino-Ville Talvala <etalvala@google.com> |
Merge "CpuConsumer: inherit from ConsumerBase" into jb-mr1-dev
|
f57e7540d4cf799f18fe87d3536c55f1e0064931 |
21-Aug-2012 |
Eino-Ville Talvala <etalvala@google.com> |
CpuConsumer: inherit from ConsumerBase Change-Id: I55178b1d673ffa0fbc6e63ef47642c64d4d03228
puConsumer.cpp
|
729f48082e2c7660e94830e52006f7af4efb747a |
20-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "Revert "SurfaceTexture: inherit from ConsumerBase"" into jb-mr1-dev
|
f7f6345068fe0644bf296b88a687b361eae0cc98 |
20-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "Revert "SurfaceTexture: call ConsumerBase::freeBufferLocked"" into jb-mr1-dev
|
ce7a6c0fc9d75b80da030d1790321e84475f956a |
20-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
Revert "SurfaceTexture: inherit from ConsumerBase" This reverts commit ed059a8d754770c3cf28b78dba30f7a6ba475dbe Change-Id: I72542c2595771a40c2c88251e0d6eb54e305b99b
onsumerBase.cpp
urfaceTexture.cpp
|
483bccd0d9f7e5e7aa452e9e3e53056387f4b25c |
20-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
Revert "SurfaceTexture: call ConsumerBase::freeBufferLocked" This reverts commit f8d33c652b930abbfb0722f3a2928cbc2ea71078 Change-Id: I1ff2e1cc85824a8fac1051f573d2931db81af511
urfaceTexture.cpp
|
220ef10c5fe44df0ff3898de06028975995a34e4 |
20-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTexture: call ConsumerBase::freeBufferLocked" into jb-mr1-dev
|
f8d33c652b930abbfb0722f3a2928cbc2ea71078 |
20-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: call ConsumerBase::freeBufferLocked This change fixes SurfaceTexture::freeBufferLocked so that it calls the base class implementation. Change-Id: I45d76fb2eb02c1fa6e4e917823ead83e2086bd15
urfaceTexture.cpp
|
d3bbcaff6f0e08db0412d92f42562a2826a58bec |
20-Aug-2012 |
Jean-Baptiste Queru <jbq@google.com> |
resolved conflicts for merge of 21938749 to jb-mr1-dev Change-Id: I17da10797736f3772a143e2015fe25df0bb3eb3f
|
2c7eb92b6394427bfe81962668d46194959bc722 |
18-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTexture: inherit from ConsumerBase" into jb-mr1-dev
|
818b46058aa3006e1d3c178abd36d4f10823f5d9 |
17-Aug-2012 |
Mathias Agopian <mathias@google.com> |
display states can't share the dirty flags Change-Id: Ifade9f2f1a0df9a36aede77a6cf5eee4be534f98
urfaceComposerClient.cpp
|
ed059a8d754770c3cf28b78dba30f7a6ba475dbe |
08-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: inherit from ConsumerBase This change makes SurfaceTexture inherit from ConsumerBase. It removes all of the functionality from SurfaceTexture that is now provided by the base class. Change-Id: I4a881df42810a14ee32d4ef7c8772a8f2510f4c7
onsumerBase.cpp
urfaceTexture.cpp
|
8683fca395d01734ec7946e9f0595ec5d7b754c6 |
13-Aug-2012 |
Mathias Agopian <mathias@google.com> |
improve [un]marshalling of non-binder objects this change introduces a new class LightFlattenable<> which is a protocol to flatten simple objects that don't require binders or file descriptors; the benefit of this protocol is that it doesn't require the objects to have a virtual table and give us a consitant way of doing this. we also introduce an implementation of this protocol for POD structures, LightFlattenablePod<>. Parcel has been update to handle this protocol automatically. Sensor, Rect, Point and Region now use this new protocol. Change-Id: Icb3ce7fa1d785249eb666f39c2129f2fc143ea4a
SensorServer.cpp
ayerState.cpp
ensor.cpp
|
e57f292595bec48f65c8088b00ff6beea01217e9 |
10-Aug-2012 |
Mathias Agopian <mathias@google.com> |
make multi-display more real - displays are represented by a binder on the client side - c++ clients can now create and modify displays Change-Id: I203ea5b4beae0819d742ec5171c27568f4e8354b
SurfaceComposer.cpp
ayerState.cpp
urfaceComposerClient.cpp
|
3165cc21cfea781988407b19bd83292b19f05f55 |
09-Aug-2012 |
Mathias Agopian <mathias@google.com> |
libgui includes refactoring Change-Id: I1d24ec17f5003ec2abab5f7472daaff4cc4cc2d3
urfaceComposerClient.cpp
|
3d1d09c0c116c42f7d083f87628b5f8377b1f275 |
09-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: Fix a fence fd leak. Bug: 6949010 Change-Id: I289992c964504b4fe5458dbd19b248a841ef043f
urfaceTexture.cpp
|
45cb2ba1d52d81e20702b62610422fb09aaedeae |
07-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix an out of bounds array access Bug: 6879028 Change-Id: Ic3d35a9384c0a6dfa4000e7743a6f6859608b0bf
urfaceTexture.cpp
|
1a4d883dcc1725892bfb5c28dec255a233186524 |
03-Aug-2012 |
Jamie Gennis <jgennis@google.com> |
surfaceflinger: refactor FrambufferSurface This change refactors the FramebufferSurface class to inherit from the new ConsumerBase class. Bug: 6620200 Change-Id: I46ec942ddb019658e3c5e79465548b171b2261f2
ndroid.mk
ufferQueue.cpp
onsumerBase.cpp
|
72131d9ef13ffaf3af4ca2fe700426b82baac9fa |
05-Aug-2012 |
Mathias Agopian <mathias@google.com> |
remove unneeded dependencies in libhardware Change-Id: Ibb8d698d594216d0746b0e7270cf87d7e5acab2b
ndroid.mk
urfaceTexture.cpp
|
92efd84f37ce5a8aae74dc9086f825a67b6894e9 |
03-Aug-2012 |
Mathias Agopian <mathias@google.com> |
screen-off animation won't be handled by SF anymore Change-Id: Idc41386804ae7d7eb981c36e1bc55c270870c8d0
SurfaceComposer.cpp
|
4f9c284de4b9159126f69eb1219c410f66cc872c |
02-Aug-2012 |
Romain Guy <romainguy@google.com> |
Add missing break in switch statement Change-Id: I6206cc9ca46c4e2f125d3d820256280586ad66a1
urfaceTexture.cpp
|
12bd497f280a69ae5fe7694ae3146008cacc0eb6 |
31-Jul-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: enable EGL_fence_sync usage for exynos5 Bug: 6876502 Change-Id: I2ec2800881dcba9e4f6ff32ffa1341a2de01f0a2
ndroid.mk
|
c666cae2d5995097ec49a87e375e2afdd92802b7 |
26-Jul-2012 |
Mathias Agopian <mathias@google.com> |
get rid of the shared-memory control block Change-Id: If814060aca1d2ff2619d4adcd57296983d207f7f
SurfaceComposer.cpp
urfaceComposerClient.cpp
|
8785578391eacd4192333d7b0ce3afedd7d163e6 |
25-Jul-2012 |
Mathias Agopian <mathias@google.com> |
add a layerStack attribute to Layers. this attribute can be set through a regular transaction using SurfaceComposerClient (just like any other attribute, eg: position or size) Change-Id: I701a47c677ea6442ca713728a93335328cd2b172
urfaceComposerClient.cpp
|
8b33f032327f8de0dcc0e6d0d43ed80f834b51f6 |
25-Jul-2012 |
Mathias Agopian <mathias@google.com> |
update SF binder protocol to support setting display attributes no change of functionality -- the old behavior is implemented on top of this new protocol. this new protocol will allow, eventually, to pass informations about displays and layer stacks. Change-Id: Ic6c2295e61ec8ecbc8ce01ab7664e35d928202fc
SurfaceComposer.cpp
ayerState.cpp
urfaceComposerClient.cpp
|
6501e9944df131b3b7e293007084735dfa217f24 |
17-Jul-2012 |
Jeff Brown <jeffbrown@google.com> |
Remove freeze(), unfreeze() and setFreezeTint(). This is all dead code. Change-Id: I646673aac793a6ec45021c370a2450f0ea4fbcce
urface.cpp
urfaceComposerClient.cpp
|
f9176a93a5c9061fe001c91bca50dd0a58d54f10 |
16-Jul-2012 |
Jeff Brown <jeffbrown@google.com> |
Remove freezeDisplay(), which is no-op. Change-Id: I2b70249a1545636fd6d98b58057b22f9529cad21
urfaceComposerClient.cpp
|
47ad361cee48a026c8c3695da04aab75e1e7b925 |
10-Jul-2012 |
Steve Critchlow <steve.critchlow@sonymobile.com> |
Fix error trap in SurfaceTexture Client There was an issue in Surface::lock where failure to lock a surface resulted in two bad things happening: - success was returned to the caller (it was apparently locked). - an uninitialised pointer was returned as the buffer. Change-Id: I8b0df81400e0fa0542a8bb993d76923ac96b686e
urfaceTextureClient.cpp
|
e7db724bed5d1e5086801df7705d9b1f2a071785 |
03-Jul-2012 |
Jesse Hall <jessehall@google.com> |
Fix check for fence merge success Change-Id: I9b16526ebfe4ffabf7c4372cca9b192ce046aa21
urfaceTexture.cpp
|
dc5b485f74edf2d2f31c62054eb6c180421a3ade |
30-Jun-2012 |
Jesse Hall <jessehall@google.com> |
Pass fence to HWC on first use of buffer Also do a CPU-wait on the fence before using it for GL composition. Change-Id: I0f645a42a44803276cae11b904e5a26d65871562
urfaceTexture.cpp
|
b42b1ac1587aebda5e2f334d95b620271fafba4e |
28-Jun-2012 |
Jesse Hall <jessehall@google.com> |
Return fence from acquireBuffer Change-Id: Iab22054c1dc4fd84affab3cc5bbdcd5a1e689666
ufferQueue.cpp
puConsumer.cpp
urfaceTexture.cpp
|
c777b0b3b9b0ea5d8e378fccde6935765e28e329 |
28-Jun-2012 |
Jesse Hall <jessehall@google.com> |
Pass fences with buffers from SurfaceTextureClient Change-Id: I09b49433788d01e8b2b3684bb4d0112be29538d3
ufferQueue.cpp
SurfaceTexture.cpp
urfaceTextureClient.cpp
|
02a7be74dd0c4eb47a522cb0f646736cb6d0de01 |
29-Jun-2012 |
Jesse Hall <jessehall@google.com> |
Merge "Clarify aborted updateTexImage use of fences"
|
962174da0303d94180af7648faf90e112b851192 |
29-Jun-2012 |
Jesse Hall <jessehall@google.com> |
Merge "Return fence to client in dequeuBuffer"
|
d58c304cc60be46a363fdcdce6da06e4ecb589b6 |
29-Jun-2012 |
Jesse Hall <jessehall@google.com> |
Clarify aborted updateTexImage use of fences When updateTexImage acquires a buffer but then aborts (due to an error or the buffer being rejected), it releases the newly-acquired buffer. It was passing the buffer slot's fences to releaseBuffer, even though they hadn't been created after the acquire yet. This wasn't a bug, since the fences would be cleared just after the buffer slot was last released, but explicitly passing null fences makes this clearer. Change-Id: I087f2ec3fd02c40f57782c1fca24eb9567e2943d
urfaceTexture.cpp
|
f9783af225aa3b41ec0af36f90941a714269abb7 |
25-Jun-2012 |
Jesse Hall <jessehall@google.com> |
Return fence to client in dequeuBuffer Change-Id: Ic19750793ad993f0e85391f3cabd743ba565d4c9
urfaceTextureClient.cpp
|
3094df359d1e6e2ae8ca4e935cc093f563804c96 |
19-Jun-2012 |
Mathias Agopian <mathias@google.com> |
First prototype atttempting to support an external display both API and implementation will change, this is just a prototype intended to show feasability. SurfaceFlinger is passed an ISurfaceTexture through a new callback, it is in turn used to create an EGLSurface which surfaceflinger will draw into in addition to the main screen. Change-Id: Id0bbb0b854bb7bae44d57246a90b65d4567f9a21
SurfaceComposer.cpp
|
f78575400977f644cf0b12beb2fa5fc278b6ed4c |
15-Jun-2012 |
Jesse Hall <jessehall@google.com> |
Pass fences from BufferQueue to SurfaceTextureClient ISurfaceTexture::dequeueBuffer now returns the buffer's fence for the client to wait on. For BufferQueue, this means passing it through Binder so it can be returned to the SurfaceTextureClient. Now SurfaceTextureClient is responsible for waiting on the fence in dequeueBuffer instead of BufferQueue: one step closer to the goal. Change-Id: I677ae758bcd23acee2d784b8cec11b32cccc196d
ufferQueue.cpp
SurfaceTexture.cpp
urfaceTextureClient.cpp
|
ef19414bd8b77a26f5751f3845be79025a8263fe |
14-Jun-2012 |
Jesse Hall <jessehall@google.com> |
Transfer HWC release fences to BufferQueue After a HWC set, each SurfaceFlinger Layer retrieves the release fence HWC returned and gives it to the layer's SurfaceTexture. The SurfaceTexture accumulates the fences into a merged fence until the next updateTexImage, then passes the merged fence to the BufferQueue in releaseBuffer. In a follow-on change, BufferQueue will return the fence along with the buffer slot in dequeueBuffer. For now, dequeueBuffer waits for the fence to signal before returning. The releaseFence default value for BufferQueue::releaseBuffer() is temporary to avoid transient build breaks with a multi-project checkin. It'll disappear in the next change. Change-Id: Iaa9a0d5775235585d9cbf453d3a64623d08013d9
ndroid.mk
ufferQueue.cpp
puConsumer.cpp
urfaceTexture.cpp
|
d8e812ce6fe9ae0388e98b08456e1d18b9498239 |
14-Jun-2012 |
Jamie Gennis <jgennis@google.com> |
Update ANativeWindow clients for sync This change updates the uses of ANativeWindow to use the new ANW functions that accept and return Sync HAL fence file descriptors. Change-Id: I3ca648b6ac33f7360e86754f924aa072f95242f6
urfaceTextureClient.cpp
ests/Android.mk
ests/CpuConsumer_test.cpp
ests/SurfaceTextureClient_test.cpp
ests/SurfaceTexture_test.cpp
ests/Surface_test.cpp
|
3e87601170141229d661df93e2f59e1ced73474b |
08-Jun-2012 |
Mathias Agopian <mathias@google.com> |
Implement SurfaceFlinger's ANW on top of BufferQueue SF now has its own implementation of ANW for the framebuffer and it uses BufferQueue. FramebufferNativeWindow is now only used by stand-alone apps. Change-Id: Iddeb24087df62bd92b0f78e391dda9b97ddc859c
ufferQueue.cpp
|
8e533069e5721e55cb9768e140e16546c3a4a8b6 |
07-Jun-2012 |
Colin Cross <ccross@android.com> |
surfaceflinger: replace early suspend with binder call from PowerManager SurfaceFlinger will no longer directly synchronize with early suspend. Instead, PowerManagerService will synchronize with SurfaceFlinger to ensure that a black frame has been drawn on the display, and then trigger all early suspend handlers. Change-Id: I07acdd628440d23fdb69db94319ec5d65d3f4919
SurfaceComposer.cpp
|
2466e402a054669ecda0d2b0dcb9cc08c4a9559a |
30-May-2012 |
Mathias Agopian <mathias@google.com> |
am 584fcb32: am 2c8207e9: add the ability to reject buffers in SurfaceTexture::updateTexImage * commit '584fcb3218e07d7b4cc0aeaef41faa4e891b45a4': add the ability to reject buffers in SurfaceTexture::updateTexImage
|
2c8207e9627fe6c7a90e31fae8d71ae49df56845 |
24-May-2012 |
Mathias Agopian <mathias@google.com> |
add the ability to reject buffers in SurfaceTexture::updateTexImage SurfaceFlinger is using this new feature to reject buffers that don't have the right size. Bug: 6498869 Change-Id: I8a7250a47db6c082a357b703feb3b9d0fc8d3443
urfaceTexture.cpp
|
c20bd43b8a376e40e82b398561739f1074196b13 |
23-May-2012 |
Jesse Hall <jessehall@google.com> |
am 138a8d75: am e1082496: Enable SurfaceTexture fence sync for the emulator * commit '138a8d7510e6ba8a402ffacc38c7cc5bfaa5e571': Enable SurfaceTexture fence sync for the emulator
|
e10824965c64663b8878b808206ee382c7ab6af8 |
21-May-2012 |
Jesse Hall <jessehall@google.com> |
Enable SurfaceTexture fence sync for the emulator The host-accelerated GL ES driver doesn't do the implicit synchronization required when fence sync isn't used. Bug: 6515813 Change-Id: I6a667f2db6b519f3557b5abda78775f767841dae
ndroid.mk
|
69df645759da5c2be94a04d999b3161a307d2107 |
21-May-2012 |
Mathias Agopian <mathias@google.com> |
am 83f1d839: am 7e477bfe: make sure BufferQueue releases newly acquired buffers on failures * commit '83f1d83975345bada9886e9ea0ef2b950d90cd77': make sure BufferQueue releases newly acquired buffers on failures
|
49b97c857e699c36e1e8c6e448da1cc4df572225 |
21-May-2012 |
Mathias Agopian <mathias@google.com> |
am ac4a4825: am f899e411: Remove misleading and wrong ALOGW * commit 'ac4a48251180a79ae19e3a7112537c3d0fa260c6': Remove misleading and wrong ALOGW
|
f336014c8dd20223388dc7e00875b4fd5aebdcdd |
21-May-2012 |
Jesse Hall <jessehall@google.com> |
am bd56aabb: am 515f19da: Merge "Recreate EGLImage for previously used slots" into jb-dev * commit 'bd56aabb92097546073c8dd8949bb03161e72c56': Recreate EGLImage for previously used slots
|
7e477bfe11f8bb31622353b64e85721df3cf9702 |
19-May-2012 |
Mathias Agopian <mathias@google.com> |
make sure BufferQueue releases newly acquired buffers on failures this prevents SurfaceTexture producer to hang in dequeueBuffer() when something goes wrong in the consumer. only the consumer gets an error and the current frame is kept instead of the new one. the producer is unaware of the problem. Bug: 6476587 Change-Id: Ie6db5526632aabc3e60229b93dfe29c19491ade4
urfaceTexture.cpp
|
f899e4113a5b5545cd91b4625514d0ab0d33751c |
19-May-2012 |
Mathias Agopian <mathias@google.com> |
Remove misleading and wrong ALOGW Bug: 6476587 Change-Id: I4345f1100db02786bb50ad83ca7b559cad301706
ufferQueue.cpp
|
90ed8508ed89b4fdb5c21d621b29369d31dcb958 |
17-May-2012 |
Jesse Hall <jessehall@google.com> |
Recreate EGLImage for previously used slots SurfaceTexture would only create an EGLImage for a buffer slot when BufferQueue returns a GraphicBuffer, i.e. either the slot was acquired for the first time ever, or the buffer for the slot was reallocated. But the EGLImage may also need to be re-created for a previously-acquired buffer if the slot's EGLImage was destroyed during detachFromContext(); in this case BufferQueue won't return a GraphicBuffer since SurfaceTexture already has a reference to the correct buffer. Bug: 6461693 Change-Id: Ib95d0d757192efe336c5fda0866f857481a6617d
urfaceTexture.cpp
ests/SurfaceTexture_test.cpp
|
a74eb25cbc42a9dde0df6b2303fda9027f77f393 |
15-May-2012 |
Jamie Gennis <jgennis@google.com> |
am dd739965: Merge changes I32fbc2b6,Ifd0ed05b into jb-dev * commit 'dd73996552938ac5165a35f09d389abedcf421ef': SurfaceFlinger: recompute visible regions less libgui: remove setPostTransformCrop
|
e41b318bc4708e1dee9364e73215ff0d51fb76a1 |
17-Apr-2012 |
Eino-Ville Talvala <etalvala@google.com> |
Add a BufferQueue CPU consumer. Aimed for use cases where gralloc buffers need to be consumed by CPU users, such as camera image data streams. The CpuConsumer is a synchronous queue, which exposes raw pointers to the underlying graphics buffers to applications. Multiple buffers may be acquired at once, up to the limit set at time of construction. Change-Id: If1d99f12471438e95a69696e40685948778055fd
ndroid.mk
puConsumer.cpp
ests/Android.mk
ests/CpuConsumer_test.cpp
|
b7a6b96301c00c630610df4cb55a45d666200817 |
14-May-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: remove setPostTransformCrop This change removes the setPostTransformCrop function from SurfaceTextureClient. It also includes a small logging fix in BufferQueue. Bug: 6299171 Change-Id: Ifd0ed05b95dad6085e7a8267fda4d69b76ea3bad
ufferQueue.cpp
urfaceTextureClient.cpp
ests/SurfaceTextureClient_test.cpp
|
f15a83f5814219c167f87cb8aaea622fc8493499 |
11-May-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: add a crop to the layer state This change adds a crop rectangle specified in window coordinates to the layer state. The all window pixels outside this crop rectangle are treated as though they were fully transparent. This change also adds the plumbing necessary for WindowManager to set that crop. Change-Id: I582bc445dc8c97d4c943d4db8d582a6ef5a66081
urface.cpp
urfaceComposerClient.cpp
|
cd1806e210f2633423f0fb14d39fa00d03974223 |
10-May-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: improve some logging and dumping This change updates some of the SurfaceTextureClient and BufferQueue logging and dumping to include the crop, transform and scaling mode. It also removes the uses of the NO_SCALE_CROP scaling mode enum, which was added by accident in a previous change. Change-Id: I62912716a1e48885fb22f12b92678aa13f10fcd9 Bug: 6470541
ufferQueue.cpp
urfaceTextureClient.cpp
|
82c53806ada5c314124431ec0a49fa15a6b5f1d6 |
09-May-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTexture: improve texture matrix computation" into jb-dev
|
cae7c0b955efba6986d9e1fe5a68e48e7a2f806b |
09-May-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "libgui: Add support for post-xform crops." into jb-dev
|
5c1139fea3cc0fd9847a6594d853a458152b2fbc |
09-May-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: improve texture matrix computation This change reduces the shrinking of the crop rectangle in some cases. It adds a way to inform the SurfaceTexture that its texture will be used without bilinear interpolation, and uses knowledge of the pixel format to avoid shrinking unecessarily. Change-Id: I72365f39f74ecb7fcc51b4cf42f2d0fa97727212
urfaceTexture.cpp
|
d72f233ffa125856a44976a50a66ceb669f49ab2 |
07-May-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: Add support for post-xform crops. This change adds support for specifying a crop rectangle to a SurfaceTextureClient that is in post-transformed coordinate space. Change-Id: I247901de343e71b32850f7ae3bac62dfa612ad3d Bug: 6299171
ufferQueue.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
ests/SurfaceTextureClient_test.cpp
ests/SurfaceTexture_test.cpp
|
29267fe8495a74893dfce1bd9eceb6448df7abea |
08-May-2012 |
Mathias Agopian <mathias@google.com> |
return errors properly in BitTube and SensorEventQueue Change-Id: Idf31179f9fcc666e287c7b01b2007431cb60127d
itTube.cpp
ensorEventQueue.cpp
|
2ebc4d6d947ef488198b8777d9190c93904b4b9a |
05-May-2012 |
Mathias Agopian <mathias@google.com> |
set a Sensor's version properly Bug: 6447433 Change-Id: Iaa5d074a8137d9543ea78c2c6f63a750774b3057
ensor.cpp
|
5c8a608497f12ecea4d6e8f1f286baf57c161ea3 |
02-May-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix a memory leak This change fixes a memory leak. Bug: 6414806 Change-Id: I43536689b4219a042749aec2096a1d5c4e664ae3
urfaceTexture.cpp
|
efc7ab6dcea8c22ddd7c0259ef4ab4bbf1e93044 |
18-Apr-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: Add plumbing for active rectangle This change adds the plumbing to SurfaceTextureClient, BufferQueue, and SurfaceTexture to get the active rectangle passed to the ANativeWindow to the buffer consumer. Change-Id: I35da0889b266327ebb079b6a7136fa3e2e8b00e6
ufferQueue.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
ests/SurfaceTexture_test.cpp
|
f4b322801d872b64f6c7dd2d2ffc1e4f8e993eef |
19-Apr-2012 |
Daniel Lam <dalam@google.com> |
SurfaceTexture: detachFromContext fixed Fixed AttachToContextSucceeds test SurfaceTexture test by not deleting the current texture when cleaning up memory. Bug: 6363186 Change-Id: Ib886bfe6bb86e25ea4825d18b5008afba6b33eae
urfaceTexture.cpp
|
2488b20aec097accb20a853d9876bb0a5dc04636 |
21-Apr-2012 |
Mathias Agopian <mathias@google.com> |
add a way to query whether an ANativeWindow consumer is running ahead of the producer Change-Id: Ibccfa1feb56db2ab11f0c0934ce2d570a2b65ae2
ufferQueue.cpp
urfaceTextureClient.cpp
|
24202f5676c32edeef6544cf36e06b9fc970dbde |
23-Apr-2012 |
Mathias Agopian <mathias@google.com> |
update the binder protocol for connect to match that of queueBuffer indeed, connect and queueBuffer return the same data, so it's easier to have them use the same protocol. Change-Id: I4f9fa3be0a80c9ab0a7a4039b282ae843aab02e1
ufferQueue.cpp
SurfaceTexture.cpp
urfaceTextureClient.cpp
|
a0db308c3d62301ae41b2e2bcf295c4ee4c7b08e |
23-Apr-2012 |
Mathias Agopian <mathias@google.com> |
remove SurfaceTexture::connect() use BufferQueue::connect() instead Change-Id: I04aab7cf11304bf962cde38470747f3b19ddba42
urfaceTexture.cpp
|
6c47034f5ec30041c54d8f0479b01bce566440df |
18-Apr-2012 |
Eino-Ville Talvala <etalvala@google.com> |
Fix BufferQueue verbose log Change-Id: Id80742b5c1fd2960cc2eda3a9ba2db1078df5320
ufferQueue.cpp
|
85b217668d6840c8e6a109adfb99461313676f8d |
14-Apr-2012 |
Eino-Ville Talvala <etalvala@google.com> |
Remove fixed USAGE_HW_TEXTURE flag from BufferQueue. USAGE_HW_TEXTURE applies to SurfaceTexture, not to all uses of BufferQueue. Refactor accordingly. Change-Id: Ic7add5e1f2bbec3d3e796ba7f15eaa0633945d8f
ufferQueue.cpp
urfaceTexture.cpp
|
9aa74dbc7070aa396bc425ea3feae3d26e5393f6 |
17-Apr-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix a memory leak This change fixes an issue where we were sometimes setting the SurfaceTexture's EGLDisplay to EGL_NO_DISPLAY in detachFromContext, and then subsequently abandoning the texture. Abandoning while in the detached state would result in the eglDestroyImageKHR calls failing, which resulted in a memory leak. Bug: 6302694 Change-Id: I24c1de0dac029a83c7508075fb8aaeaed96a14ea
urfaceTexture.cpp
|
2efa4b2bb0128cd65ea8ade46f46bacaf72c194f |
18-Apr-2012 |
Jamie Gennis <jgennis@google.com> |
Merge changes Id79430f9,I541d3046 * changes: BufferQueue: check before tracing buffer index SurfaceTexture: shrink all sides when cropping
|
695e331f01b136155b1559b3c878b7c5bb631bc1 |
17-Apr-2012 |
Jamie Gennis <jgennis@google.com> |
BufferQueue: check before tracing buffer index This change adds a check on ATRACE_ENABLED before calling snprintf to trace the buffer index. Change-Id: Id79430f9c69706393efd3d10780a4cc97055e9e0
ufferQueue.cpp
|
91a6826d6794c19cdedfa58c42f8820c5cf5fe2b |
16-Apr-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: shrink all sides when cropping This change makes SurfaceTexture include an offset for all sides of the crop region when cropping. This keeps the image centered, to minimize the visual changes when switching between the texture transform matrix-based cropping and something that does proper cropping (e.g. HWComposer). Change-Id: I541d3046fd92e49221b488444df36d490924d1c5
urfaceTexture.cpp
ests/SurfaceTextureClient_test.cpp
|
82ca93bf66e50dcae6f96dc78e88ff24df2b4f32 |
17-Apr-2012 |
Mathias Agopian <mathias@google.com> |
Merge "s/w rendered apps can now use n-buffering (n>2)"
|
172a62a224967beee9e35e02a5b2fb2705dd2cc0 |
16-Apr-2012 |
Mathias Agopian <mathias@google.com> |
make sure to pass the transform-hint on ANW.connect this optimization was probably lost during ST refactoring. Change-Id: I845978c4b718cb91941d15b30484837f19714abe
ufferQueue.cpp
|
ac6035a12aec38eeb14d0c13636ec980066d9a8f |
13-Apr-2012 |
Mathias Agopian <mathias@google.com> |
s/w rendered apps can now use n-buffering (n>2) Bug: 6311881 Change-Id: I6e52e281e8d432430aad011f6d9dcf35d7b4ac7d
urfaceTextureClient.cpp
|
b364be8e55a2ce0b0480e237cb9aac30bd215585 |
13-Apr-2012 |
Mathias Agopian <mathias@google.com> |
fix a typo causing pre-rotation to never work Change-Id: I8d698ec52d53ef1a553b887c7329413e1f49cc72
ufferQueue.cpp
|
016c8cbce4dde21f2703b9865f52d16b8d5d5ae2 |
04-Apr-2012 |
Daniel Lam <dalam@google.com> |
Enabled cropping support in SurfaceTexture SurfaceTexture will modify the crop rect so it matches the desired output aspect ratio when the scaling mode is NATIVE_WINDOW_SCALING_MODE_CROP. Added a test for this new scaling mode. Change-Id: I60f24dcbc294b65cd10a393d9e27d40f07d27bb6
ufferQueue.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
ests/SurfaceTexture_test.cpp
|
a96b6bdea3d5ece7b1f3bcae40e9fe632ebc8f22 |
12-Apr-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: work around a compiler bug This change works around a compiler bug with the GCC 4.6 toolchain. Bug: 6292211 Change-Id: I004c4750d92a29f193a37d8e605a28fdc3b7f076
ests/SurfaceTexture_test.cpp
|
c2c380259b2a3fbe7cee1dbd3f2e1e23e9ffd5da |
12-Apr-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add a test for user sizes & prerotation This change adds 3 tests for: - User-overridden buffer size - Transform hint - User-overridden buffer size with transform hint Change-Id: Ib15ea354685e436822c506099613b2bffa7b68c9
ests/SurfaceTexture_test.cpp
|
55a701459de964ae3504264a6b8c4dc37f54a9e8 |
10-Apr-2012 |
Michael I. Gold <gold@nvidia.com> |
SurfaceTextureClient: support for application buffer dimensions Add a new API native_window_set_buffers_user_dimensions to allow native applications to override the native window size for the default buffer size. This has lower precedence than the existing native_window_set_buffers_dimensions and allows the two to co-exist. Change-Id: Ie73590e1c94ef0dadbce500bd0941dfabbcace3c
urfaceTextureClient.cpp
|
f0bc2f1d8d37977bd3aef3d3326a70e9e69d4246 |
10-Apr-2012 |
Mathias Agopian <mathias@google.com> |
use in/out structures for queueBuffer() IPC Change-Id: Ie125df2444b62a9a2200586a717dca268852afc9
ufferQueue.cpp
SurfaceTexture.cpp
urfaceTextureClient.cpp
|
fbcda930dd8b2823cfeb160fd0131f5897b7522f |
10-Apr-2012 |
Daniel Lam <dalam@google.com> |
BufferQueue returns proper code on acquire Also removed unnecessary debug messages from SurfaceTextureClient. Change-Id: I291897a44170142f9d42a007b008823fad4683e0
ufferQueue.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
|
abe61bfda4938abd932465e27c29ba9e41aea606 |
27-Mar-2012 |
Daniel Lam <dalam@google.com> |
BufferQueue no longer hardcodes buffer counts BufferQueue is now more flexible as it can be used by SurfaceMediaSource in addition to SurfaceTexture. Change-Id: I4222be8918d63372c44fcd412d9ad241c6a3eeb9
ufferQueue.cpp
|
8cce8a9a75d172e0077960223ac5f2d06df33892 |
06-Apr-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "Fixed disconnect bug in SurfaceTexture"
|
7b5be95cb3903087742f1079fe89cddd8abe3696 |
03-Apr-2012 |
Mathias Agopian <mathias@google.com> |
use a socketpair instead of a pipe in BitTube Bug: 6252830 Change-Id: Ia7a7b08409517214136261c05569dc5959a597ab
itTube.cpp
isplayEventReceiver.cpp
ensorEventQueue.cpp
|
9abe1ebc9575dc5a19bf1dfce6e9b02e03374457 |
27-Mar-2012 |
Daniel Lam <dalam@google.com> |
Fixed disconnect bug in SurfaceTexture BufferQueue's disconnect could race with updateTexImage where invalid buffers could be released. Additionally fixed similar bug with setBufferCount. Tests were added to stress the disconnect mechanism. Change-Id: I9afa4c64f3e025984e8a9e8d924852a71d044716
ufferQueue.cpp
urfaceTexture.cpp
ests/SurfaceTexture_test.cpp
|
0e1080f887bcd80c75910cabe7b2eca224bf739c |
02-Apr-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTexture: add context attach & detach"
|
74bed55fff0132be319bcd1703970516ae28b3a9 |
29-Mar-2012 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add context attach & detach This change adds the detachFromContext and attachToContext methods to SurfaceTexture. These methods allow the SurfaceTexture to switch from one consumer GLES context to another. This change also includes a few cleanups to the error return codes in updateTexImage. Change-Id: I0df1eb599aa7b6f58f07431f242f8f09269559ed
urfaceTexture.cpp
ests/SurfaceTexture_test.cpp
|
851ef8f1bfbb164d61b1528a529a464f0a60dbaf |
30-Mar-2012 |
Mathias Agopian <mathias@google.com> |
reduce IPC with BufferQueue collapse setCrop, setTransform and setScalingMode to queueBuffer() this ends up simplifying things quite a bit and reducing the numnber of IPC needed per frame. Change-Id: I3a13c07603abe4e76b8251e6380b107fde22e6d9
ufferQueue.cpp
SurfaceTexture.cpp
urfaceTextureClient.cpp
|
9285a16450323d0e91513e2c270c2ac03c8b940c |
29-Mar-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "Refactored DummyConsumer"
|
9d61a28d72d85ac0460fb7fba9f85f8a955354c7 |
27-Mar-2012 |
Daniel Lam <dalam@google.com> |
Refactored DummyConsumer DummyConsumer no longer uses a ProxyConsumerListener Change-Id: I0a99428b3f9dae82cb47d5da3589de77653f3d7c
ummyConsumer.cpp
|
9e0b1f880bd790b6e4643387668c74729b891a10 |
27-Mar-2012 |
Colin Cross <ccross@android.com> |
remove libandroid.so from targets that don't need it pdk builds don't have libandroid.so available. Remove it from projects that aren't actually using it. Change-Id: I100dc84aaf8160c1062a122ef6d5aec0534d73fa
ests/Android.mk
|
f71c4ae136f7749b9dfdaa2dd64d771868eeeb2d |
24-Mar-2012 |
Daniel Lam <dalam@google.com> |
Added a DummyConsumer for use with BufferQueue. The DummyConsumer is a consumer that can connect to BufferQueue that does nothing. It is required as BufferQueue checks if a consumer is connected. Also fixes a bug where SurfaceTexture was reusing old texture slots. Bug: 6172739 Change-Id: I5e7a118dd4d07807ba4c763200242b5ee7d3412b
ndroid.mk
ummyConsumer.cpp
urfaceTexture.cpp
|
b0e76f456afaada43ddb0968bb37145219f90cd3 |
23-Mar-2012 |
Mathias Agopian <mathias@google.com> |
remove dependency of EGL on ndk header Change-Id: Ia6e489b5b4f028864bdf54923e81f604710dd8ad
urface.cpp
urfaceTextureClient.cpp
|
ce561372186c7549a8a5fe996ac5965cda087007 |
20-Mar-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: have ST::updateTexImage check the GL ctx This change adds a check to SurfaceTexture::updateTexImage to verify that the current GL context is the same as the one that was used for previous updateTexImage calls. Change-Id: If02d2f787bcfdb528046dc9ddf6665f8a90e1bf4
urfaceTexture.cpp
ests/SurfaceTexture_test.cpp
|
fa5b40ebb8923133df12dc70591bfe35b3f1c9b3 |
15-Mar-2012 |
Jamie Gennis <jgennis@google.com> |
libgui: add BQ consumer buffer free notifications This change adds a new callback for BufferQueue consumers to be notified when the BufferQueue frees some or all of its buffers. This is needed to retain SurfaceTexture behavior where all buffers would be freed when the producer disconnects. This change also modifies the SurfaceTextureGLToGLTest.EglDestroySurfaceUnrefsBuffers test to catch when the buffers are not freed. The implementation is a little complicated because it needs to avoid circular sp<> references across what will be a binder interface (so wp<> can't be used directly). It also needs to avoid the possibility of locking the BufferQueue and consumer (e.g. SurfaceTexture) mutexes in the wrong order. This change also includes a few additional fixes and test cleanups. Change-Id: I27b77d0af15cb4b135f4b63573f634f5f0da2182
ufferQueue.cpp
urfaceTexture.cpp
ests/SurfaceTextureClient_test.cpp
ests/SurfaceTexture_test.cpp
|
b267579ba8dfe3f47d2a481c5a3c2254e3d565a1 |
23-Feb-2012 |
Daniel Lam <dalam@google.com> |
SurfaceTexture: Fully refactored from BufferQueue SurfaceTexture and BufferQueue are separate objects. Change-Id: I230bc0ae6f78d0f9b2b5df902f40ab443ed5a055
ufferQueue.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
|
74ff8c23f44f1546d0c7004302f4c7ba726ff4c0 |
13-Mar-2012 |
Dave Burke <daveburke@google.com> |
attempt to fix a deadlock in SurfaceTextureClient::disconnect - condition wasn't signaled if an error happened between acquire and release - also replace signal with broadcasts Bug: 6109450 Change-Id: I8ac03c7eca35c9cc04a00ef7fad36bb9cb3fcef6
ufferQueue.cpp
|
c2c1f2f24cd70bdcf1958157bab38467bf0fdc71 |
07-Mar-2012 |
Daniel Lam <dalam@google.com> |
BufferQueue: fixed issues with buffer slots not available Bug: 6120953 Change-Id: I61d97d650c8dee0a6d7c19f2f50aa92a5f159095
ufferQueue.cpp
|
757507e3a0a25fe83e60c354b6ac0e975662109a |
06-Mar-2012 |
Mathias Agopian <mathias@google.com> |
Merge "Add ATRACEs for Buffer indices"
|
3fcee50ffaeb745819356e395408b4d7e3239c13 |
02-Mar-2012 |
Daniel Lam <dalam@google.com> |
BufferQueue: fixed acquire operation Bug: 6082872 Change-Id: I897dc61eb84fed953e51f97871cd3ae6321505d4
ufferQueue.cpp
|
546ed2d7d98ce4f1415647913a231a6b4fc6ca66 |
02-Mar-2012 |
Mathias Agopian <mathias@google.com> |
Add ATRACEs for Buffer indices Change-Id: I44d7a9a9bf03f418cab2a4854583aac9e533daee
ufferQueue.cpp
|
1c8e95cf86f2182986385bc1ee85f13f425f3a3a |
24-Feb-2012 |
Jamie Gennis <jgennis@google.com> |
Add tracing to various graphics components. This change adds ATRACE call tracing to BufferQueue, SurfaceTextureClient, SurfaceTexture, SurfaceFlinger, Layer, and EGL. Change-Id: I9d75ed26f5a3f0d1af635da38289520134cfbbb7
ufferQueue.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
|
eae59d2ea77ef57aab203fb185a880ce37ac38d6 |
23-Jan-2012 |
Daniel Lam <dalam@google.com> |
Removed dependecies between BufferQueue and SurfaceTexture Refactored SurfaceTexture and BufferQueue such that share no protected members. Created an consumer facing interface for BufferQueue in preparation of connecting SurfaceTexture and BufferQueue through a binder. Change-Id: I938e63e085128148c58d0e26c7213b30145c109f
ufferQueue.cpp
urfaceTexture.cpp
|
fbb16559168b88e30ffbe6d466f4c044366f503c |
27-Feb-2012 |
Jamie Gennis <jgennis@google.com> |
Merge "Revert "Removed dependecies between BufferQueue and SurfaceTexture""
|
90ac799241f077a7b7e6c1875fd933864c8dd2a7 |
26-Feb-2012 |
Mathias Agopian <mathias@google.com> |
fix libgui header location Change-Id: Iec71706cdd4f29c6904993648ce873e83ef9cafe
ufferQueue.cpp
isplayEventReceiver.cpp
GraphicBufferAlloc.cpp
Surface.cpp
SurfaceComposer.cpp
SurfaceComposerClient.cpp
ayerState.cpp
urface.cpp
urfaceComposerClient.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
ests/SurfaceTexture_test.cpp
ests/Surface_test.cpp
|
9b10c47e112afc3600380895046a4a56e34cf6a8 |
27-Feb-2012 |
Daniel Lam <dalam@google.com> |
Revert "Removed dependecies between BufferQueue and SurfaceTexture" This reverts commit a631399f71dbc7659d2f241968f85d337726ae61
ufferQueue.cpp
urfaceTexture.cpp
|
333023884112259f145bb23c41a05211198d9792 |
23-Jan-2012 |
Daniel Lam <dalam@google.com> |
Removed dependecies between BufferQueue and SurfaceTexture Refactored SurfaceTexture and BufferQueue such that share no protected members. Created an consumer facing interface for BufferQueue in preparation of connecting SurfaceTexture and BufferQueue through a binder. Change-Id: Iff55e740e36a7f70c9f7a17ee7a5af38e3d21f0f
ufferQueue.cpp
urfaceTexture.cpp
|
b856052c00dfef70d0957482c72c2979ffc4733a |
31-Jan-2012 |
Daniel Lam <dalam@google.com> |
Refactored query function from SurfaceTexture into BufferQueue Change-Id: Id1cb6cc38d01edb4fcfcad867c5a7693bdcc3ab1
ufferQueue.cpp
urfaceTexture.cpp
|
6b091c53000c843211c218ce40287a7edca9bc63 |
23-Jan-2012 |
Daniel Lam <dalam@google.com> |
Refactored ISurfaceTexture calls from SurfaceTexture into BufferQueue. Change-Id: I514f6b802f6b49c9ae27bed37bf0b9d23da03c9a
ndroid.mk
ufferQueue.cpp
urfaceTexture.cpp
|
99fe3c6d3dcb6fb26bf283343f946d031b052dff |
07-Feb-2012 |
Mathias Agopian <mathias@google.com> |
make sure to ignore SIGPIPE in the write side of BitTube Change-Id: If4f037f4403d3ecbcd5f91248354765fc0fa13cb
itTube.cpp
|
99ce5cdeb383216dee95af4d90e47406b0948ea1 |
01-Feb-2012 |
Mathias Agopian <mathias@google.com> |
separate transactions from updates with this changes, SF transactions are handled as soon as possible but do not trigger updates. the update is delayed until the next vsync. this allows us to work much better without requiring triple-buffering. Change-Id: I1fa10794d0cf742129f0877698b7b1e1f2ec7401
isplayEventReceiver.cpp
|
bff957f0bd0b7d4085dabaefb0852d428a807134 |
23-Jan-2012 |
Daniel Lam <dalam@google.com> |
SurfaceTexture: use fence sync on omap4 & s5pc110 This change enables the use of the EGL_KHR_fence_sync extension in SurfaceTexture on omap4 and s5pc110 platforms. Change-Id: Icad5245bab445413ffb8a7c823c296b678bf3250
ndroid.mk
|
1db13d79518f600d65a4fc006fe42900b890966e |
19-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Get AID_GRAPHICS from right place Change-Id: I97b1754dc7260fec083275c71a8f71ebfb2cefa8
SurfaceComposerClient.cpp
|
e6f43ddce78d6846af12550ff9193c5c6fe5844b |
06-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGE(_IF) to (IF_)ALOGE(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/#/c/157220 Bug: 5449033 Change-Id: Ic9c19d30693bd56755f55906127cd6bd7126096c
itTube.cpp
isplayEventReceiver.cpp
SurfaceComposer.cpp
ensorEventQueue.cpp
ensorManager.cpp
urface.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
|
32397c1cd3327905173b36baa6fd1c579bc328ff |
06-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGW(_IF) to (IF_)ALOGW(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/157065 Bug: 5449033 Change-Id: I00a4b904f9449e6f93b7fd35eac28640d7929e69
ensorManager.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
|
c267bab3d1c7980a03541283e88c0b6df378b826 |
05-Jan-2012 |
Steve Block <steveblock@google.com> |
Merge "Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF) DO NOT MERGE"
|
2adea706d445e837053403a00286a21c00e22649 |
05-Jan-2012 |
Glenn Kasten <gkasten@google.com> |
Merge "Use the standard CC_LIKELY and CC_UNLIKELY macros"
|
99ed22412db547c59d3da08114d9d5a586442b30 |
15-Dec-2011 |
Glenn Kasten <gkasten@google.com> |
Use the standard CC_LIKELY and CC_UNLIKELY macros Several source files privately defined macros LIKELY and UNLIKELY in terms of __builtin_expect. But <cutils/compiler.h> already has CC_LIKELY and CC_UNLIKELY which are intended for this purpose. So rename the private uses to use the standard names. In addition, AudioFlinger was relying on the macro expanding to extra ( ). Change-Id: I2494e087a0c0cac0ac998335f5e9c8ad02955873
SurfaceComposer.cpp
SurfaceComposerClient.cpp
|
a19954ab377b46dbcb9cbe8a6ab6d458f2e32bca |
04-Jan-2012 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGI(_IF) to (IF_)ALOGI(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/156801 Bug: 5449033 Change-Id: Ib08fe86d23db91ee153e9f91a99a35c42b9208ea
urfaceTexture.cpp
|
9d4536835248525f32f1504a3d28d5bbfa0a2910 |
20-Dec-2011 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGD(_IF) to (IF_)ALOGD(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/156016 Bug: 5449033 Change-Id: I4c4e33bb9df3e39e11cd985e193e6fbab4635298
urfaceTexture.cpp
urfaceTextureClient.cpp
|
ace62f2b79792222f964e2465821539da2813c06 |
13-Dec-2011 |
Jamie Gennis <jgennis@google.com> |
am 74e0fcae: am a1dee3f5: Merge "SurfaceTexture: fix a verbose-log compile error" into ics-mr1 * commit '74e0fcaed1cd20ae8632224ff5a5404ff1a6e497': SurfaceTexture: fix a verbose-log compile error
|
988637e559cb76d53568b93571e41c728f2f1b1d |
10-Dec-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix a verbose-log compile error Change-Id: I045231207e068d950bb0cb5085717af5d9454ed1
urfaceTexture.cpp
|
478ae5eb5a0047e1b2988c896cff6363b455ee50 |
07-Dec-2011 |
Mathias Agopian <mathias@google.com> |
Improve the VSYNC api a bit. - add the ability to set the vsync delivery rate, when the rate is set to N>1 (ie: receive every N vsync), SF process' is woken up for all of vsync, but clients only see the every N events. - add the concept of one-shot vsync events, with a call-back to request the next one. currently the call-back is a binder IPC. Change-Id: I09f71df0b0ba0d88ed997645e2e2497d553c9a1b
isplayEventReceiver.cpp
DisplayEventConnection.cpp
|
a4fbecd1198899a3a4e55795406a06e7c111b13e |
30-Nov-2011 |
Mathias Agopian <mathias@google.com> |
am 55d3880e: am bb1e7d43: Merge changes I7e973a35,Ib3386fcc into ics-mr1 * commit '55d3880eed3450748eb7b97281e030902ee29c2a': SurfaceTexture: add EGL_KHR_fence_sync option SurfaceTexture: add a blit-to-FBO test
|
86edf4f6470ee0f108bf40d3c1d23bf0a78c9c38 |
14-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add EGL_KHR_fence_sync option This change adds a compile-time option for SurfaceTexture to use the EGL_KHR_fence_sync extension to synchronize access to Gralloc buffers. Bug: 5122031 Change-Id: I7e973a358631fff5308acf377581b811911fe790
urfaceTexture.cpp
|
fe27e2f4688301629f38a06c34e3466c9889b3b1 |
12-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add a blit-to-FBO test This change adds a test for blitting (via GL rendering) from a SurfaceTexture to an FBO. Change-Id: Ib3386fcc3f37153277f3e37a26347441bb80ab58
ests/SurfaceTexture_test.cpp
|
d0566bc26fcf6ca396118701fa11900b627f2c09 |
18-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Add support for sending VSYNC events to the framework use gui/DisplayEvent to receive the events. Events are dispatched through a unix pipe, so the API is compatible with utils/Looper. see gui/DisplayEvent.h for more info. Bug: 1475048 Change-Id: Ia720f64d1b950328b47b22c6a86042e481d35f09
ndroid.mk
isplayEventReceiver.cpp
DisplayEventConnection.cpp
SurfaceComposer.cpp
|
439cf8576d3b846c0aa0944d84372259bf075d51 |
29-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Fix build. Revert "Add support for sending VSYNC events to the framework" This reverts commit f3918c5bd4bc9f02f74da42995564150ca2dd382. Change-Id: I998e3e1aa3fa310829ae973b64fe11b01f6f468f
ndroid.mk
SurfaceComposer.cpp
|
461afeb9fde149f9455acbadf1257d08d33e8eb3 |
18-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Add support for sending VSYNC events to the framework use gui/DisplayEvent to receive the events. Events are dispatched through a unix pipe, so the API is compatible with utils/Looper. see gui/DisplayEvent.h for more info. Bug: 1475048 Change-Id: If4126023fc9c067e56087ec7d16a8fd542ce1794
ndroid.mk
SurfaceComposer.cpp
|
3ad3807a5c4039618175c042a1121c926c2c62e9 |
29-Nov-2011 |
Mathias Agopian <mathias@google.com> |
BitTube::read now handles EAGAIN Change-Id: Iacda2386342ba0727bbf278f6c597488d5467bb8
itTube.cpp
|
41f673c9b3aac0d96e41c928845c39186d565212 |
18-Nov-2011 |
Mathias Agopian <mathias@google.com> |
split ComposerService out of SurfaceComposerClient.h Change-Id: I1eb691f7ca263d5895d871ab675bb5826e0323c6
urfaceComposerClient.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
ests/Surface_test.cpp
|
6b7c5da722128a89fb939bf3677d9cc04421e29f |
22-Nov-2011 |
Mathias Agopian <mathias@google.com> |
am cc4d02e0: am 07a2d831: Merge "don\'t report an error when disconnecting from an abandoned surfacetexture" into ics-mr1 * commit 'cc4d02e0cbb99341a0508838c88eeef53180fdfd': don't report an error when disconnecting from an abandoned surfacetexture
|
93a098fb6eb709aa404f1fb9febabddd2c35e785 |
22-Nov-2011 |
Mathias Agopian <mathias@google.com> |
am 8390cf39: am 8646cd42: Merge "enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices" into ics-mr1 * commit '8390cf39f8a4f74f7baa91d23cba06894a3fb9b5': enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices
|
185a0a0420f54f9588ec1c7230313023a7a2259b |
22-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
am c2597295: am 53cf2020: Merge changes I37fd43b5,I91eb29db,I0491ce35 into ics-mr1 * commit 'c25972950c2ea62fb085524dbe737c2bf0f08f4a': SurfaceTexture: fix a couple tests EGL: default to swap interval 1 SurfaceTexture: clean up some tests
|
7723773df352e413f30c8c49c188446c43f25cd3 |
22-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Merge "don't report an error when disconnecting from an abandoned surfacetexture" into ics-mr1
|
75cf5a7480386856c76d40b301acf94eb329f5da |
22-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Merge "enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices" into ics-mr1
|
e3603d7d090ba092c76f7e1c8ace3841154ab1a1 |
20-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix a couple tests This change fixes some robustness issues with the EglDestroySurfaceUnrefsBuffers and EglDestroySurfaceAfterAbandonUnrefsBuffers tests. The tests previously depended upon GL implementation details that should not have been relied upon. Change-Id: I37fd43b56568efe1dbe69d85e892be8a1cf44d20
ests/SurfaceTexture_test.cpp
|
59769469e4b9b2d8b12c020eb44b030b3927a50b |
20-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
EGL: default to swap interval 1 This change explicitly sets swap interval 1 on the window when an EGLSurface is created to render to it. Change-Id: I91eb29dbee3ae4a55076b921f084d503fbe94e03
urfaceTexture.cpp
ests/SurfaceTexture_test.cpp
|
6f4cdfe0dbe50d1cc0ce8c03451ab261e8ea3232 |
20-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: clean up some tests This change cleans a few things up in the SurfaceTexture tests: - Wraps a few long lines. - Refactors the multithreading portions of SurfaceTextureGLToGLTest into a new test fixture called SurfaceTextureGLThreadToGLTest. - Changes some of the tests that were creating their own EGLSurface to use the SurfaceTextureGLToGLTest fixture. - Reorders the test functions so that they are immediately below to the test fixture that they use. Change-Id: I0491ce3528a7ff2b4f1e83602ba290269c087297
ests/SurfaceTexture_test.cpp
|
8bee68fac2dba0a72a58a243601d5d7d12e116e6 |
19-Nov-2011 |
Mathias Agopian <mathias@google.com> |
am d0df44b5: am 4d71053b: Merge "attempt to fix bug 5313580" into ics-mr1 * commit 'd0df44b5c979e00a19187cea35768ba26557e447': attempt to fix bug 5313580
|
8b8a004148f2e6337dbf02ef8046d800bf300e89 |
18-Nov-2011 |
Mathias Agopian <mathias@google.com> |
don't report an error when disconnecting from an abandoned surfacetexture this happens often with CPU Surfaces, which disconnect long after their surfacetexture has been abandoned. Change-Id: If49da03b72f99130e01b2b9bcbd444bb38f7ed4e
urfaceTexture.cpp
|
7c6eba666917308a64fadb0f0e08d7c041311976 |
15-Nov-2011 |
Mathias Agopian <mathias@google.com> |
enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices this flag should be enabled for all targets, but currently some have issues with it, so we're turning it on only for tested targets. this will hopefully resolve some performance issues. Bug: 5553562, 5631630 Change-Id: I54c7a9e2068586898ab13e405d95534669260537
ndroid.mk
urfaceTexture.cpp
|
6285c6cf1076e15bef12da8800ed64e4bd6e2ec8 |
18-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Merge "attempt to fix bug 5313580" into ics-mr1
|
b963e22ca29b5df1f527a5d4f35ba93788304e49 |
18-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
am 9da22d2c: am 2ba13186: Merge "SurfaceTexture: fix a bug with buffer reallocation" into ics-mr1 * commit '9da22d2cc31069d86a92021d8540bb5a77c9591b': SurfaceTexture: fix a bug with buffer reallocation
|
a36bcd53ac075054bb39ef506687f4daaf9bac6b |
18-Nov-2011 |
Mathias Agopian <mathias@google.com> |
attempt to fix bug 5313580 the working theory here is that a Surface object has become non-promotable because it lost its last reference; later Surface::readFromParcel is called the previous surface is found in the cache, but can't be promoted. this causes a new Surface object to be created which will promptly try to connect to the CPU_API -- this in turn will fail because the previous (now dead) surface is still connected. To fix this, we make sure to disconnect from the SurfaceTexture when Surface[TextureClient] is destroyed. Change-Id: I422234868a05d7b7d283e9d5a85f7ab79e65d8a9
urfaceTextureClient.cpp
|
e984dd11c1c48bde7ce1054692db9a065f4df5f0 |
18-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTexture: fix a bug with buffer reallocation" into ics-mr1
|
aaa3ecff4b49e0918c252e02b3aa18a3ad0d503d |
18-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix a bug with buffer reallocation This change fixes an issue involving buffer reallocation and the ALLOW_DEQUEUE_CURRENT_BUFFER mode in SurfaceTexture. The bug happened when the buffer slot currently attached to the GL texture was selected for dequeuing, but the dequeue operation caused the buffer to be reallocated. Because the buffer is new, the image producer could fill the buffer and queue it before an updateTexImage call, which would result in the "slot %d is current" error in queueBuffer. Bug: 5631630 Change-Id: Icdd8bc5cad3c7db43953446d9be2603aaea11a8d
urfaceTexture.cpp
|
1c46c42c165401566e037d3536480bd2c8c0f811 |
17-Nov-2011 |
Mathias Agopian <mathias@google.com> |
am abdade71: am 69c17a11: Merge "Revert "enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices"" into ics-mr1 * commit 'abdade71bc17153696fe2abe281c5a3b0c2e5abe': Revert "enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices"
|
ccf5b9febc9486c67ace40fbfc53b49eadf2c159 |
17-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
am 7765fc65: am fd6b64f6: Merge "SurfaceTexture: Fix to return the oldest of free buffers to Client on Dequeue call" into ics-mr1 * commit '7765fc651a9519dd2f0ac9d3374a50e9865c5c99': SurfaceTexture: Fix to return the oldest of free buffers to Client on Dequeue call
|
c554d2b8ad94a367bc40d25666ab2c51ae95276f |
17-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Merge "Revert "enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices"" into ics-mr1
|
c21180ee67d645ebe0a0f381e18790609016f6c6 |
17-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Revert "enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices" This reverts commit e7758be6da85728df6b4215f413660c67c5a9740. Seemed to cause failures un SurfaceTexture. Bug: 5627450
ndroid.mk
urfaceTexture.cpp
|
c1ef3c4d7d008b04331c56490ec755f040b3e57a |
16-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTexture: Fix to return the oldest of free buffers to Client on Dequeue call" into ics-mr1
|
029f760674b90a1265249b0ea4c9d5d42e2b4454 |
15-Nov-2011 |
Mathias Agopian <mathias@google.com> |
am 556a406c: am 3aa684ec: Merge "enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices" into ics-mr1 * commit '556a406cf4dd8a7faa318e0d522d899f8b9da7dc': enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices
|
a929748ddb67cbece3337c7fda7877fdeb973aa4 |
10-Nov-2011 |
Sunita Nadampalli <sunitan@ti.com> |
SurfaceTexture: Fix to return the oldest of free buffers to Client on Dequeue call Surface Texture dequeue logic is modified to return the oldest of the free buffers to Client on dequeue call. Currently dequeue method is returning the first buffer index which is free. The parsing is done in ascending order of the buffer slot indices. This leads to returning the buffer which has been just queued to composer, and hence display, and this defeats the purpose of having minimum dequeue count as 2 in asynchrnouse mode. This is fixed by checking all the free slots and returning the oldest buffer. Change-Id: Ibbac10593c3994c278c601af0480b171635ecdd4 Signed-off-by: Sunita Nadampalli <sunitan@ti.com>
urfaceTexture.cpp
|
251ce852cc1f29808ed9537dae00a9ef7e58edcf |
15-Nov-2011 |
Mathias Agopian <mathias@google.com> |
enable ALLOW_DEQUEUE_CURRENT_BUFFER for tegra devices this flag should be enabled for all targets, but currently some have issues with it, so we're turning it on only for tested targets. this will hopefully resolve some performance issues. Bug: 5553562 Change-Id: I939992b4cd0debea980dec0127c72be2dff33af8
ndroid.mk
urfaceTexture.cpp
|
8c11963dda80d4add300520a8863bed39231825d |
14-Nov-2011 |
Mathias Agopian <mathias@google.com> |
am 738d8cae: am c93a151f: Merge "Define, document, and test the behavior of very large SurfaceTextures" into ics-mr1 * commit '738d8cae2239d194429676f2889cfae3c8f7ba08': Define, document, and test the behavior of very large SurfaceTextures
|
194c76c0477189700fda068e19b953b1d9af201a |
10-Nov-2011 |
Mathias Agopian <mathias@google.com> |
Define, document, and test the behavior of very large SurfaceTextures updateTexImage() now throws a runtime exception when its native counterpart fails Bug: 5506633 Change-Id: I151a6f685d465966e7df4df624412ab2da62e95f
ests/SurfaceTexture_test.cpp
|
eade85c60c8b2a199d45a02ea7496409d771b25d |
03-Nov-2011 |
Jamie Gennis <jgennis@google.com> |
am c5ce130f: Merge "SurfaceTexture: various logging improvements" into ics-mr1 * commit 'c5ce130f658303299bf55091373951f7fd33ae36': SurfaceTexture: various logging improvements
|
6ee96ad6a3da260f2473f78ea0582fd0970cf156 |
19-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: various logging improvements Change-Id: I1f7216276547a1e9f9343c88c6cc1c24efcdcdbc
urfaceTexture.cpp
|
7796e962da502e0adaff0d407023f731a83a422f |
26-Oct-2011 |
Mathias Agopian <mathias@google.com> |
Merge "Rename SensorChannel to BitTube"
|
6807e59e0ff943cc6225d46e3c33a8a7eae9b3d7 |
20-Oct-2011 |
Steve Block <steveblock@google.com> |
Rename (IF_)LOGV(_IF) to (IF_)ALOGV(_IF) DO NOT MERGE See https://android-git.corp.google.com/g/#/c/143865 Bug: 5449033 Change-Id: I0122812ed6ff6f5b59fe4a43ab8bff0577adde0a
urfaceTexture.cpp
urfaceTextureClient.cpp
ests/SurfaceTexture_test.cpp
|
5cae0d0699a169e468fff3e21165f35db12f2cde |
21-Oct-2011 |
Mathias Agopian <mathias@google.com> |
Rename SensorChannel to BitTube
ndroid.mk
itTube.cpp
SensorEventConnection.cpp
ensorChannel.cpp
ensorEventQueue.cpp
|
83d3fa10d5d53308fafee8e702ac4dc86dc8383f |
20-Oct-2011 |
Jesse Hall <jessehall@google.com> |
Merge "SurfaceTexture: add tests for buffer leaks"
|
79e3125d56cca5aba88097b5ccd4f1e128bc8141 |
20-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add tests for buffer leaks This change adds two tests to ensure that eglDestroySurface does not cause Gralloc buffers to be leaked. Bug: 5472838 Change-Id: Id675d74e34b6479f2d68314d40de94aede69f142
ests/SurfaceTexture_test.cpp
|
baf0e06dea2300ed79fb5874b706eb4115fc2ad7 |
19-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
am 827d069a: Merge "SurfaceTexture: free buffers when disconnect fails" into ics-mr0 * commit '827d069afb297b6d96c995c03da9d4ee17e60679': SurfaceTexture: free buffers when disconnect fails
|
13c5ca3b5562ac673a08b17790d89460729c6e7d |
19-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: free buffers when disconnect fails This change makes SurfaceTextureClient free its references to all the buffers even when the disconnect binder call to the SurfaceTexture fails. Bug: 5384823 Change-Id: Iad787fbae5fda4769546fd52276e4e4030c62be6
urfaceTextureClient.cpp
|
7731f4eb63a128b31484d4014c18e74c6a32c18a |
18-Oct-2011 |
Mathias Agopian <mathias@google.com> |
am 9a0732af: Merge "SensorManager reconnects to sensor service when the later dies" into ics-mr0 * commit '9a0732af1bd96a7d8247dee124a7da389137a52f': SensorManager reconnects to sensor service when the later dies
|
0ee55fd4e51bb340587730a68f4b52cce288d97b |
18-Oct-2011 |
Mathias Agopian <mathias@google.com> |
Merge "SensorManager reconnects to sensor service when the later dies" into ics-mr0
|
31218730d4d3f36d897ba6020c629d6b29ad0d5d |
17-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
am 3a735078: Merge "SurfaceTexture: report binder transaction failures" into ics-mr0 * commit '3a73507801b56da83140fad14a1a3d4eced213d9': SurfaceTexture: report binder transaction failures
|
2532077bb664860b7177b1e932af1448881574e5 |
17-Oct-2011 |
Mathias Agopian <mathias@google.com> |
am fefffc68: Merge "add logging and defensive code when initializing sensors" into ics-mr0 * commit 'fefffc685ab703b44f6e32b5ec45292b22d370a3': add logging and defensive code when initializing sensors
|
8e42e48f4ea6bd8988a2ab5667601564d6f6b9ee |
17-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTexture: report binder transaction failures" into ics-mr0
|
1a2b83a17d3bdb2440b8b5b96136f7916a5528b5 |
17-Oct-2011 |
Mathias Agopian <mathias@google.com> |
SensorManager reconnects to sensor service when the later dies if system process ever restarted, processes using a SensorManager would loose the ability to use it, resulting to a crash. we now listen for sensor service death and reconnected if necessary. Bug: 5445240 Change-Id: Ia47f8b26cdcecb729fa22bf11d55e10fcaef8cfc
ensorManager.cpp
|
be58de0d627fa0ecb087eeff95da13c783bf2392 |
16-Oct-2011 |
Mathias Agopian <mathias@google.com> |
add logging and defensive code when initializing sensors Bug: 5445240 Change-Id: I9dc7d27d3e8b4f15989488859831526d8c7ded3b
ensorManager.cpp
|
28378392fd5aa3e0a392c9eb64634055678c3987 |
13-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: make sync transactions explicit This change enables a layer or orientation update transaction sent to SurfaceFlinger to explicitly request a synchronous transaction. Change-Id: I97cbba610c13679849f66114b216fa6dbf12f2a9
SurfaceComposer.cpp
urfaceComposerClient.cpp
|
8a29ff2a356816694c695db70460f93c7fb4ae6f |
15-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: report binder transaction failures This change fixes the ISurfaceTexture error reporting for the case where the binder transaction fails. Bug: 5082219 Change-Id: I6517532992e3a76dc9eb5e4a36af43a562391aaa
SurfaceTexture.cpp
|
c901ca0abc0a7b90deb8754ae48542de0bfd1567 |
12-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
Surface: fix a protected buffer test This change renames the ScreenshotsOfProtectedBuffersFail to ScreenshotsOfProtectedBuffersSucceed and changes the test to verify that the screenshot succeeds. Change-Id: I960bb8eed4211578cb4dc446b08392937da064b6
ests/Surface_test.cpp
|
b8d69a55f1c187a35ac41e69de63251f5501b6f4 |
11-Oct-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceFlinger: update orientation via transactions This change merges the ISurfaceComposer::setOrientation functionality into ISurfaceComposer::setTransactionState. It enables the window manager to atomically update both the display orientation and the position and size of the windows in a single transaction with SurfaceFlinger. Bug: 5439574 Change-Id: I18a8ccc564d7d760ef8afb2d015ccdb7a7963900
SurfaceComposer.cpp
urfaceComposerClient.cpp
|
fb1b5a2f333800574b0da435d1200cf9b13d723f |
28-Sep-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: parameterize the texture target This change adds a hack to allow Android Browser to use a SurfaceTexture to stream RGBA images to a GL_TEXTURE_2D texture object. Change-Id: Idb90064d5d4b920959ef3be7451362ac5012460e
urfaceTexture.cpp
|
fa28c35c21d1bf8b38f541758c291bc17a2d7270 |
17-Sep-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add name support This change adds support for setting a string that can be used to identify a SurfaceTexture object in log messages. Change-Id: Ib4ee085f36c8830dc964c05ef1654f5a55dfcd60
urfaceTexture.cpp
|
06649fece4d97a89c6b197a570b6012e9ad9d228 |
16-Sep-2011 |
Mathias Agopian <mathias@google.com> |
cleanup: fix typos in logs Change-Id: Ib5744564a873ea2b84100174673dc4d3ae109fcf
urfaceTexture.cpp
|
7f739ae68c57435964f69c397ec0cf344d0701a2 |
05-Sep-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTexture: fix a test deadlock"
|
66378c63e6f1c51147f21d098a5568e0724c152d |
03-Sep-2011 |
Pannag Sanketi <psanketi@google.com> |
Error check in queuebuffer in SurfaceTextureClient In queuebuffer, if the surfacetexture returns an error, surfacetextureclient should check for that and pass on the error. Change-Id: Ie6d70e779fac0702f372eb4df5ecb655280875ee
urfaceTextureClient.cpp
|
bc82a96491d545b4a2a44ff536bd4f06b724372d |
31-Aug-2011 |
Xia Wang <xiaw@google.com> |
Merge "Integreate surfacetexture test into our continuous test framework."
|
4c875166c8d186de29e254c28261ac576930ab98 |
31-Aug-2011 |
Xia Wang <xiaw@google.com> |
Integreate surfacetexture test into our continuous test framework. Change-Id: Ic481f3a431166851947676d676749543c7afbbf7
ests/Android.mk
|
e68a52b0a2fbf239c23e622bda45ae50ee7e82ab |
31-Aug-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix a test deadlock This change fixes a test issue that resulted in a deadlock. Change-Id: I4729e8dd47c8f5fea49bfeff3cea58627ead6d04 Bug: 5174876
ests/SurfaceTexture_test.cpp
|
41b6aabf356d8a505da37b1d046bc9010028fe8b |
31-Aug-2011 |
Mathias Agopian <mathias@google.com> |
fix Surface positions are not floats Added Surface.setPosition(float, float) which allows to set a surface's position in float. Bug: 5239859 Change-Id: I903aef4ad5b5999142202fb8ea30fe216d805711
urfaceComposerClient.cpp
|
70e3f81d0fbc92394928c44fb0137787a8595665 |
26-Aug-2011 |
Mathias Agopian <mathias@google.com> |
make sure to re-initialize SurfaceTexture to its default state on disconnect this caused problems where the NavigationBar would disapear or be drawn in the wrong orientation. Change-Id: I083c41338db83a4afd14f427caec2f31c180d734
urfaceTexture.cpp
urfaceTextureClient.cpp
|
87a96ea9eae3f998381735ec65496e256f871c3c |
24-Aug-2011 |
Mathias Agopian <mathias@google.com> |
Fix an issue where Surface::lock() would never update the output region 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
urface.cpp
|
7f7e85898f6dd9325418a2d2a30a8df48e52b66d |
18-Aug-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTexture: fix queues-to-composer"
|
582270d69db94286a248bd829f1ae6f910d45124 |
18-Aug-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix queues-to-composer 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
SurfaceComposer.cpp
urface.cpp
urfaceTextureClient.cpp
|
29b5762efc359022168e5099c1d17925444d3147 |
18-Aug-2011 |
Mathias Agopian <mathias@google.com> |
don't return the current buffer from dequeueBuffer 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
urfaceTexture.cpp
|
3902be629bd94de62db0039004d0b25556227cbf |
17-Aug-2011 |
Mathias Agopian <mathias@google.com> |
fix a small race condition when returning the default width/height of a SurfaceTexture Change-Id: I581bf609505dfb5d4ec5957b2ef2c77df6cfb15f
urfaceTexture.cpp
|
4925ee11f980cdeba1166fe07a6b59ff88b25d5c |
11-Aug-2011 |
Dave Burke <daveburke@google.com> |
Revert "error out when SurfaceTexture APIs are called while not connected" This reverts commit a04cda9986366ab480ad8008c4d923271b05d78e. Conflicts: include/gui/SurfaceTexture.h libs/gui/SurfaceTexture.cpp Change-Id: Ib655016462c496ee2a27f7cb33a6e8b18cfe684a
urfaceTexture.cpp
|
3477588d13a8dfb4fefe01a8c81c0c74f8f5c72f |
11-Aug-2011 |
Mathias Agopian <mathias@google.com> |
Merge "Read leftover parcel data when a parceled Surface is found in the cache."
|
8e19c2e97e11505ee2ecf336275fd956f2ccfa22 |
11-Aug-2011 |
Mathias Agopian <mathias@google.com> |
fix a crasher in SurfaceTexture::updateTexImage() 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
urfaceTexture.cpp
|
2560d14ce8e38984032d999e3fdf8da9a47baf3c |
11-Aug-2011 |
Mathias Agopian <mathias@google.com> |
rework dequeueBuffer()'s main loop. 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
urfaceTexture.cpp
|
ef51b992192adf4fc432686ab346f5fc7a13bc95 |
11-Aug-2011 |
Mathias Agopian <mathias@google.com> |
error out when SurfaceTexture APIs are called while not connected - also log a warning when freeAllBuffers is called with a non empty buffer queue - rename freeAllBuffers to freeAllBuffersLocked Change-Id: Idb71fdcf233b9ccae62d5a2a7c3c4bad2501d877
urfaceTexture.cpp
|
e5d6eb81e29e0fb914ce8fdaae17190b0dbae1a1 |
10-Aug-2011 |
Ted Bonkenburg <tedbo@google.com> |
Read leftover parcel data when a parceled Surface is found in the cache. 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
urface.cpp
|
2db6f0a40b7f4d903f546e94af762f141953ebb2 |
10-Aug-2011 |
Mathias Agopian <mathias@google.com> |
fix a crasher in dumpsys Bug: 5141729 Change-Id: Ib104d49c8660621180966be099198fe29c5bebf5
urfaceTexture.cpp
|
b0c15c9908d9e61554b04c7469b62618e7778167 |
09-Aug-2011 |
Mathias Agopian <mathias@google.com> |
free all buffers when ANativeWindow::disconnect is called Change-Id: Ie06e73e5b44398cda9e99876f78175b5eef765dc
urfaceTexture.cpp
|
5bfc24515bb5c8ea7975f72d538df37753733a2f |
09-Aug-2011 |
Mathias Agopian <mathias@google.com> |
return correct value from query after connecting a surface 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
SurfaceTexture.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
|
af08d8ab6dd2188544ca4f038f33c1c4ed8447cf |
09-Aug-2011 |
Mathias Agopian <mathias@google.com> |
Merge "improve dumpsys SurfaceFlinger output"
|
e47498f8f258967ff62d070f08ff2dadd4ae2b56 |
09-Aug-2011 |
Mathias Agopian <mathias@google.com> |
add some logs to track a crash in eglCreateImageKHR Bug: 5111008 Change-Id: I3e7f5b986151e80cbded39e0dec057770da52fc1
urfaceTexture.cpp
|
ad795baecccf239621cbffa0249c8e855296cae6 |
09-Aug-2011 |
Mathias Agopian <mathias@google.com> |
improve dumpsys SurfaceFlinger output we now output the handle and size of all buffers of each layer. Change-Id: I8d011ee4ae9199f4198bd07bed770ec3bcf02986
urfaceTexture.cpp
|
97a9884edcc6fbb311386ecfcd6e3045437f0df0 |
04-Aug-2011 |
Mathias Agopian <mathias@google.com> |
Add a 'release' method to the SurfaceTexture public Java API Bug: 5063618 Change-Id: I689cb0c01c14e597ccfb4eb0972e64fa570bd4e8
urfaceTexture.cpp
|
d05b34a07940f3d6009b90b3eda067a2d0a35d2c |
02-Aug-2011 |
Mathias Agopian <mathias@google.com> |
Merge "connect/disconnect is now called from our EGL wrapper"
|
81a63350527cafce6929309533c58586878f10b5 |
30-Jul-2011 |
Mathias Agopian <mathias@google.com> |
connect/disconnect is now called from our EGL wrapper 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
urfaceTextureClient.cpp
|
1c121f68fc6ac4abff17203b55253d6aeee64bc5 |
31-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: allow set_buffer_count(2) 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
urfaceTexture.cpp
|
96e108271bb5da44a130c8b5976fc63879403735 |
26-Jul-2011 |
Mathias Agopian <mathias@google.com> |
Merge "remove dead code and member variables."
|
3fbce7c56082e4e0d23f1c1c89983d3841853ed7 |
26-Jul-2011 |
Mathias Agopian <mathias@google.com> |
remove dead code and member variables. also fix some comments and improve debugging logs. Change-Id: I83e55309f306332b59e1ec46104c4a7fffbf3c97
urfaceTexture.cpp
urfaceTextureClient.cpp
|
fa1e002cec5dc33ebe52685dc81d644f783811a8 |
25-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTexture: enable RGB external textures"
|
8d14330bd7c8ce855efb2284b306a314759ac4df |
25-Jul-2011 |
Ted Bonkenburg <tedbo@google.com> |
Merge "Add support for creating a Surface from a a SurfaceTexture."
|
bd050ab2af1421d527d1a80ce59dd8d9940a838c |
16-Jul-2011 |
Ted Bonkenburg <tedbo@google.com> |
Add support for creating a Surface from a a SurfaceTexture. 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
urface.cpp
|
1f8e09f40d16ae377164d86e91385ad3d8e78e82 |
20-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: enable RGB external textures 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
urfaceTexture.cpp
ests/SurfaceTexture_test.cpp
|
7b305fffc39d0fe0926e7fd2d7f6a524fbce62b7 |
19-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add the abandon method. 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.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
ests/SurfaceTexture_test.cpp
|
6e50219aee68ae6e76943f969374dae1b27154b3 |
21-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add a deadlock scenario test 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
ests/SurfaceTexture_test.cpp
|
1259e9d6ac474f3e9dec8569fb694c61eeeef4d3 |
22-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
Merge changes I799532f7,I5cffa6eb * changes: SurfaceTexture: fix a comment SurfaceTexture: remove getAllocator
|
bb66c9b5a9c16dee93559eb738746a2d0a9b2db3 |
21-Jul-2011 |
Mathias Agopian <mathias@google.com> |
Fix a few issues with NATIVE_WINDOW_TRANSFORM_HINT - 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
urfaceTextureClient.cpp
|
976f494d53cb239307fd810ce592b5b5de1cbc41 |
19-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: remove getAllocator 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
SurfaceTexture.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
|
c10d9d90b2088a3304076e0dc4bf05cdbb5d45ab |
21-Jul-2011 |
Mathias Agopian <mathias@google.com> |
clean-up. get rid ofunused code and members in Surface[Control].cpp Change-Id: Ia7790ae28af2c2ac99eae01c2c5044ace4a490a4
SurfaceComposerClient.cpp
urface.cpp
urfaceComposerClient.cpp
ests/SurfaceTextureClient_test.cpp
|
97c602c5af5f3ffd69009bf496d86347b71a2b4c |
20-Jul-2011 |
Mathias Agopian <mathias@google.com> |
implement: "Add an ANativeWindow API for SurfaceFlinger to suggest an optimal buffer orientation" Bug: 4487161 Change-Id: I883f34efe542c2a566d04966f873374f40c50092
SurfaceTexture.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
|
933389f75814bb62e8153528f9cff2cb329b77df |
19-Jul-2011 |
Mathias Agopian <mathias@google.com> |
use SurfaceTexture new scaling mode in SF SF now obeys SurfaceTexture's scaling mode instead of inferring it from the buffer's size Change-Id: I4d50e9851abedd7e64bfcfc8af9eefb9fb668529
urfaceTexture.cpp
urfaceTextureClient.cpp
|
7734ebfe47f42f980c1b44c1f284a91d8ad1d6c7 |
14-Jul-2011 |
Mathias Agopian <mathias@google.com> |
Add set_scaling_mode() to ANativeWindow. This allows to specify the scaling mode independently from the buffer size. Change-Id: Iaa2baa660445531a97d3fac192e580f4929c5d3b
SurfaceTexture.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
|
a2f3b90d986936b6584331efd766b4996ff74b5a |
19-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTexture: add a multi-SurfaceTexture test"
|
8f9dbf9e13b927de2524116c30544f7dfbbbf56c |
14-Jul-2011 |
Mathias Agopian <mathias@google.com> |
move lock/unlock implementaion outside of Surface into SurfaceTextureClient 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
urface.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
|
0b7c4953a1995e22932ee93a7f494a79547e19c8 |
15-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTexture: fix SurfaceTextureGLToGLTest"
|
2773004a83624ed41cf3f94f2b11878cd8521812 |
15-Jul-2011 |
Mathias Agopian <mathias@google.com> |
fix a typo in ISurfaceTexture IPC code Change-Id: Ied1d9ddb0d849b17219d0ea3d333ce12be849419
SurfaceTexture.cpp
|
677517ae3f380e701a47abe4738b748fb3ca161d |
15-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
Merge changes Id9aa1003,I8c154189 * changes: SurfaceTexture: make (dis)connect into an IPC SurfaceTexture: add support for new connect values
|
fe0a87b54654a1392650e7f1862df473287d8332 |
14-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: make (dis)connect into an IPC 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.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
|
2640bfd1680b1be023aae091503ffbda707e3234 |
15-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix SurfaceTextureGLToGLTest 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
ests/SurfaceTexture_test.cpp
|
3e646d62e5b99bf479c775e88fa8324229a0670f |
13-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add support for new connect values This change adds support to SurfaceTextureClient for the new enum values that can be passed to the ANativeWindow connect call. Change-Id: I8c15418909e43a15673a9b22a5eb40df6923b273
urfaceTextureClient.cpp
|
71753982479b9a68e36d43fbb58de0331ea5797c |
12-Jul-2011 |
Jeff Brown <jeffbrown@google.com> |
Merge "Remove the simulator target from all makefiles. Bug: 5010576"
|
baa44b89ec159fd65230cbb8ebab62d63a513b0b |
12-Jul-2011 |
Jeff Brown <jeffbrown@google.com> |
Remove the simulator target from all makefiles. Bug: 5010576 Change-Id: I04d722f258951a3078fe07899f5bbe8aac02a8e8
ndroid.mk
ests/Android.mk
|
c8251a06df70de70d45ac477af816dcee7580205 |
12-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add a multi-SurfaceTexture test This change adds a test that does simple, unverified GL rendering to multiple SurfaceTextures. Change-Id: I51a41d68ae5a27e01ae93842242897b0d3558ca6
ests/SurfaceTextureClient_test.cpp
|
bee205fd58a27c10a0895de5339e76025d429d2b |
01-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
EGL: fix the ANativeWindow size/fmt override 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
urfaceTextureClient.cpp
|
798ff739a1da6bea3f5f3ff13b580062e1a3a03a |
07-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTexture: enable newly passing tests."
|
47dd726460e3a02ec80f14e300bb3a42884fc1e5 |
06-Jul-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: enable newly passing tests. This change enables the following four SurfaceTextures tests: UpdateTexImageBeforeFrameFinishedWorks UpdateTexImageAfterFrameFinishedWorks RepeatedUpdateTexImageBeforeFrameFinishedWorks RepeatedUpdateTexImageAfterFrameFinishedWorks Change-Id: I7632630bc97873e50d4a765ffc44a86f16ae62f1
ests/SurfaceTexture_test.cpp
|
9303eee7dcfc340b2aa598b617e02cd361baa5cc |
02-Jul-2011 |
Mathias Agopian <mathias@google.com> |
fix ScreenshotsOfProtectedBuffersFail - 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
ests/Surface_test.cpp
|
d9e8c64c3dce1612eb948a5c16ba4ff62202b423 |
01-Jul-2011 |
Mathias Agopian <mathias@google.com> |
return an error code with gralloc buffer allocation failures Change-Id: I471e5d37ea7a42fc8a0f93446ee3b4229da37807
GraphicBufferAlloc.cpp
urfaceTexture.cpp
|
19e0a8bfe9a15543b0bd7991cce08e5362e9f5cd |
01-Jul-2011 |
Pannag Sanketi <psanketi@google.com> |
Merge "Minor fix in SurfaceTexture"
|
292a31a4c2ae2f6faf134e8e4a726583017dad06 |
24-Jun-2011 |
Pannag Sanketi <psanketi@google.com> |
Minor fix in SurfaceTexture Change-Id: Ic859715becf3e6d5107bd8beb8c577034d00ec52
urfaceTexture.cpp
|
698c0873cf2e07bdc7fd1e72169aee2a19fa40d7 |
29-Jun-2011 |
Mathias Agopian <mathias@google.com> |
SF transactions are now O(1) wrt IPC instead of O(N). Change-Id: I57669852cbf6aabae244ea86940a08a5a27ffc43
SurfaceComposer.cpp
SurfaceComposerClient.cpp
ayerState.cpp
urfaceComposerClient.cpp
ests/SurfaceTexture_test.cpp
ests/Surface_test.cpp
|
dfcff4b4ef8b602ba485848b394b16d14847821e |
17-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add a CPU -> GL sync test. 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
ests/SurfaceTexture_test.cpp
|
50c4efc2a44fd312febeda76c8d1a6dc42cee8f8 |
28-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: consume buffers after err checks 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.
urfaceTexture.cpp
|
3d8063b02e06020c8062addcc9ec49048d3bdb9a |
27-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: change onFrameAvailable behavior 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
urfaceTexture.cpp
|
14a0e58074f2698829b6554f578e6762c377caa3 |
24-Jun-2011 |
Grace Kloba <klobag@google.com> |
Add allowSynchronousMode to SurfaceTexture constructor. Change-Id: I54f30a3c16bbe6b813f3bcd1d389da5627531304
urfaceTexture.cpp
|
1e7fa9e945d98eab76ff92f37c25040429a6c0a0 |
23-Jun-2011 |
tedbo <tedbo@google.com> |
Add method to create a ParcelSurfaceTexture from android.view.Surface. Change-Id: I05e343ab7e327478f60322af9373574b70c148f5
urface.cpp
|
c8c5152b19e20abe76dbc63b782700ae01aa4116 |
15-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: make tests use a large framebuffer. 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
ests/SurfaceTexture_test.cpp
|
b36bb97ae37a0fbcb6a35770eb86ac5931409d0d |
21-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTexture: fix a NULL ptr dereference."
|
1c4414091cfb93206067fb64eba445653739d40f |
20-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix a NULL ptr dereference. 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
urfaceTextureClient.cpp
|
07ed1a94bcad9b78b20f74f890d4271099da3a97 |
15-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: enable a test that now passes. This change enables the QueryFormatAfterSettingWorks. Change-Id: Ic868011a36a6c86c8646880246cd5b6960a13364
ests/SurfaceTextureClient_test.cpp
|
d05bb2ed4c99894965134994cf23c9e47274f56e |
15-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: enable a test that is now passing. This change enables the TexturingFromCpuFilledYV12BufferPow2 test. Change-Id: Ib356ee3d2f8979f34f849fd4090f598295e2e92e
ests/SurfaceTexture_test.cpp
|
5dd0c4fd7efcb99bdd346ed01f1a8f1d2baa8ef1 |
14-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: increase the test's Surface layer. 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
ests/SurfaceTexture_test.cpp
|
1876d13e45ae044d4c1f6f2ee176f52f22d8a26c |
18-Mar-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add some RGBA_8888 tests. Change-Id: Id09915c98a00eca1209b7dab32039a06d260908e
ests/SurfaceTexture_test.cpp
|
8b69defa2fe2cf6a34b00e322a557d8a4dddea41 |
07-Apr-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTextureClient: minor test refactoring. Change-Id: Iabc6d27ca35d30d896c6aef65c4f1b5a1eed47b8
ests/SurfaceTextureClient_test.cpp
|
135abde4c24db77915407e3d9d2478c237638684 |
14-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "SurfaceTexture: add a format querying test."
|
80728d87c9db75d07fafc80e8d5c5f8dd6a58359 |
14-Jun-2011 |
Mathias Agopian <mathias@google.com> |
Merge changes I9b8e1962,I7bb843ca * changes: Temporarily don't return the current buffer in synchronous mode unify SurfaceTexture and Surface
|
e122079be632b849a71181d83a6d38b701f642f5 |
05-May-2011 |
Mathias Agopian <mathias@google.com> |
Temporarily don't return the current buffer in synchronous mode activate synchronous mode by default.
urfaceTexture.cpp
ests/SurfaceTextureClient_test.cpp
|
a67932fe6864ac346e7f78b86df11cf6c5344137 |
20-Apr-2011 |
Mathias Agopian <mathias@google.com> |
unify SurfaceTexture and Surface Add the concept of synchronous dequeueBuffer in SurfaceTexture Implement {Surface|SurfaceTextureClient}::setSwapInterval() Add SurfaceTexture logging fix onFrameAvailable
ndroid.mk
Surface.cpp
SurfaceComposer.cpp
SurfaceComposerClient.cpp
haredBufferStack.cpp
urface.cpp
urfaceComposerClient.cpp
urfaceTextureClient.cpp
|
a6f35dd36e974c67976c6b4411c31b61f30a3853 |
12-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add a format querying test. 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
ests/SurfaceTextureClient_test.cpp
|
2510d9576ff2c529d584082aa1098480a73079e4 |
13-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: disable a deadlocking test. This change disables the UpdateTexImageAfterFrameFinishedWorks test because it's currently causing deadlocks on some devices. Change-Id: Ic9186db207e8d656f3af5d86fa138c7d96393c55
ests/SurfaceTexture_test.cpp
|
824efa74e7ff0a8dd95302daf73c23a056da0d07 |
13-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add a pixel tolerance to the tests. This change adds a default tolerance of 2 to all the pixel value checks in the SurfaceTexture tests. Change-Id: Id5a7cdffdfae16076e2daf4964a3326105b5ae2c
ests/SurfaceTexture_test.cpp
|
5451d15ee209f29d64beea87583f7058dee69911 |
08-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add some GL->GL tests. 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
ests/SurfaceTexture_test.cpp
|
52226048095c2eb27ede0c3389626df270a0abff |
08-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: add getTransformMatrix tests. 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
ests/SurfaceTextureClient_test.cpp
|
736aa9573bb7b78f9c315f396c104491b3639426 |
13-Jun-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix a getTransformMatrix crash. 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
urfaceTexture.cpp
|
b62013f6aafee08cfad25a2712dc32264e44f783 |
18-May-2011 |
Mathias Agopian <mathias@google.com> |
9-axis sensor fusion with Kalman filter Add support for 9-axis gravity and linear-acceleration sensors virtual orientation sensor using 9-axis fusion Change-Id: I6717539373fce781c10e97b6fa59f68a831a592f
ensor.cpp
|
8dda6b7bf8f6e30cee286a6c048f1cc2adfa3a94 |
25-May-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: disable a failing test. 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
ests/SurfaceTextureClient_test.cpp
|
c2c8dfd71b84598f01074416e57cc3469d5b8ed2 |
24-May-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix an error check in dequeueBuffer. 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
urfaceTexture.cpp
ests/SurfaceTextureClient_test.cpp
|
8cd5ba4b7f01d3a54a8f8bc6d1793aa5fc8e09ef |
19-May-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: clean up some comments, tests, etc. This change fixes up some stale comments, member variable names, log messages and disables a failing test. Change-Id: Ic1d3344b18066cf710e4a42838b2417c6b1f2f6c
urfaceTexture.cpp
urfaceTextureClient.cpp
ests/SurfaceTextureClient_test.cpp
|
d7e291fecd2e6a104c713b4e45860734d02833c6 |
18-May-2011 |
Teng-Hui Zhu <ztenghui@google.com> |
Disable error report temporarily to enable inline video bug:4435022 Change-Id: I06f05a4781ad432ab71db93f0815eb89cd2e7a69
urfaceTexture.cpp
|
cf46eb9817dfbfc020720d1e45b5c085252500fb |
12-May-2011 |
Mathias Agopian <mathias@google.com> |
fix onFrameAvailable Change-Id: I391fe9f6684ac9fd4f91416ce18b583f7087d966
urfaceTexture.cpp
|
68c7794183a7dbfe3b20d4ce832f8eb79c2c619a |
10-May-2011 |
Mathias Agopian <mathias@google.com> |
Add SurfaceTexture logging Change-Id: If1b74be5230813fb76429935d88b9d4a7c41700c
urfaceTexture.cpp
|
8072711307aa98ee5ee6f7369860ae38c3e19656 |
03-May-2011 |
Mathias Agopian <mathias@google.com> |
Implement {Surface|SurfaceTextureClient}::setSwapInterval() Change-Id: I8382e346ddaa2c4c8ff56ac3ffd7f0109572f188
SurfaceTexture.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
ests/SurfaceTextureClient_test.cpp
|
7a5b22c4e33928f81c2e8a3d85050c35bd44b1e0 |
26-Apr-2011 |
Mathias Agopian <mathias@google.com> |
new tests for SurfaceTexture synchronous mode Change-Id: Icfdaa625238246f8d0224efe28fdf2c1c24203f8
ests/SurfaceTextureClient_test.cpp
|
b3e518c820c7dbe35587bd45c510e4e5e7cfd9c9 |
22-Apr-2011 |
Mathias Agopian <mathias@google.com> |
Add the concept of synchronous dequeueBuffer in SurfaceTexture Change-Id: Ic94cbab092953243a0746e04bbe1b2eb0cc930ef
urfaceTexture.cpp
|
eafabcdc1639fb96062d9e3c39b0ae27b0238ae1 |
20-Apr-2011 |
Mathias Agopian <mathias@google.com> |
unify SurfaceTexture and Surface Change-Id: I49da2f5d8408e4cd7e148cfb777bb4ff68cd8f37
SurfaceTexture.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
ests/SurfaceTextureClient_test.cpp
|
c04f153353cdb0d291297d10452239f791d3fd2b |
26-Apr-2011 |
Mathias Agopian <mathias@google.com> |
Fix a bug where setgeometry couldn't be undone 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
SurfaceTexture.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
|
697526bc9e44ce61c88614f98387ae8bbf0a187e |
01-May-2011 |
Iliyan Malchev <malchev@google.com> |
frameworks/base: android_native_buffer_t -> ANativeWindowBuffer Change-Id: Idc2eabaa805bb6d308ebb315872623f28d428417 Signed-off-by: Iliyan Malchev <malchev@google.com>
urface.cpp
urfaceTextureClient.cpp
ests/SurfaceTextureClient_test.cpp
ests/SurfaceTexture_test.cpp
ests/Surface_test.cpp
|
41abd67302b52aefadc2b3dea42226f16bf6d9ba |
15-Apr-2011 |
Iliyan Malchev <malchev@google.com> |
frameworks/base: make the ANativeWindow query() method const 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>
urface.cpp
urfaceTextureClient.cpp
|
39a01c66947cd56c80ff406c277d9debc0efa7cc |
29-Apr-2011 |
Jamie Gennis <jgennis@google.com> |
Merge "libgui: enable tests in the 'tests' build."
|
cc57d6f8830e533734925f102307df2e6cff6de7 |
28-Apr-2011 |
Mathias Agopian <mathias@google.com> |
Fix uninitialized variable in SurfaceTexture Change-Id: Ie77cdad481fc0522ff5ea3b7e14ce94e07150793
urfaceTexture.cpp
|
7fcb077c5522c56e266947e073c8750019e5a98a |
27-Apr-2011 |
Jamie Gennis <jgennis@google.com> |
libgui: enable tests in the 'tests' build. This change makes the libgui makefile recurse into the tests directory so that the tests get built by a top-level make when TARGET_BUILD_VARIANT=tests. Change-Id: I6f623cc4b86dfeb00b9d21823316dbd9def23110
ndroid.mk
ests/Android.mk
|
3cd5a117083e6a53b9946e8c316377658ab79b3d |
26-Apr-2011 |
Mathias Agopian <mathias@google.com> |
Report errors when eglCreateImageKHR fails Change-Id: Ica39b72ac2505675e619ef4994bd67b98bf6e7da
urfaceTexture.cpp
|
1b528fb9d818044973abf656c9d2d3c1192bcfdc |
26-Apr-2011 |
Jamie Gennis <jgennis@google.com> |
EGL: Allow creating a SurfaceTexture EGLSurface. This change removes the check that disallowed the creation of an EGLSurface that would send frames to a SurfaceTexture. Change-Id: I44c6d5df503cc676a88144d72d39b414692ce4c9
ests/SurfaceTextureClient_test.cpp
|
fc850124b35abd00a31e9bcf57e14e0fa74f4cd7 |
26-Apr-2011 |
Jamie Gennis <jgennis@google.com> |
libgui: Fix the tests so they build. Change-Id: I7205b0819e5801ac549109ff562c3ab1b113d176
ests/SurfaceTexture_test.cpp
ests/Surface_test.cpp
|
0ef4e15a6c12778daf464a4953d7e15e651f49ac |
20-Apr-2011 |
Mathias Agopian <mathias@google.com> |
Get rid of the "pid" parameter from createSurface Change-Id: I28635e3f803e6abe965d79998e305f54a202465d
SurfaceComposerClient.cpp
urfaceComposerClient.cpp
|
7e3d7f341ab3789fe25064670374159a35e35ed3 |
19-Apr-2011 |
Mathias Agopian <mathias@google.com> |
Merge "changes to SurfaceTexture needed for unification with SF"
|
7a042bf324fe3f3d5d4085fda21fe50dc0c362b4 |
12-Apr-2011 |
Mathias Agopian <mathias@google.com> |
changes to SurfaceTexture needed for unification with SF - implement connect/disconnect - implement missing query - handle texture_2d in addition to texture_external_oes Change-Id: I971a70821f00f22b01f5337de4a7d451177fec4d
urfaceTexture.cpp
urfaceTextureClient.cpp
|
4cb18881b55b82a24873ccd8e298bc2d5a9c17e5 |
09-Apr-2011 |
Mathias Agopian <mathias@google.com> |
Fix a GraphicBuffer leak in SurfaceTexture This leak was intentional, it was there to deal with the fact that some gralloc implementations don't track buffer handles with file-descriptors so buffers needed to stay alive until there were registered, which is not guaranteed by binder transactions. In this new implementation, we use a small BBinder holding a reference to the buffer, which with tuck into the parcel. This forces the reference to stay alive until the parcel is destroyed, which is guaranteed (by construction) to happen after the buffer is registered. this allows the public facing API to not expose the previous hack. Change-Id: I1dd6cd83679a2b7457ad628169e2851acc027143
GraphicBufferAlloc.cpp
urfaceTexture.cpp
|
47d8730a2463f38a695ab95b533b0d9728f266a3 |
06-Apr-2011 |
Mathias Agopian <mathias@google.com> |
remove more unused references to ISurface Change-Id: I2201f1ca2bb8f203a081d94a0134f798778dfbef
urface.cpp
|
a5c75c01620179ce00812354778a29a80d76e71f |
01-Apr-2011 |
Mathias Agopian <mathias@google.com> |
SurfaceTexture can now force the client to request a buffer SurfaceTexture now has the concept of default size a new method, setDefaultBufferSize() to set it. When the default size is changed, dequeueBuffer() will return a value telling the client that it must ask for a new buffer. The above only applies if the client has not overriden the buffer size with setGeometry. Change-Id: I520dc40363054b7e37fdb67d6a2e7bce70326e81
urfaceTexture.cpp
urfaceTextureClient.cpp
ests/SurfaceTextureClient_test.cpp
|
d87f162026454f5a3e6437ed0c9ef51651a6b939 |
26-Mar-2011 |
Mathias Agopian <mathias@google.com> |
merge libsurfaceflinger_client into libgui this is the first step in unifying surfacetexture and surface. for this reason the header files were not moved, as most of them will eventually go away. NOTE: currently we keep libsurfaceflinger_client.so as an empty library to workaround prebuilt binaries wrongly linking against it. Change-Id: I130f0de2428e8579033dc41394d093f4e1431a00
ndroid.mk
GraphicBufferAlloc.cpp
Surface.cpp
SurfaceComposer.cpp
SurfaceComposerClient.cpp
ayerState.cpp
haredBufferStack.cpp
urface.cpp
urfaceComposerClient.cpp
ests/Android.mk
ests/Surface_test.cpp
|
1d01a12e7150be569557b64da9b8663c62c13594 |
18-Feb-2011 |
Eino-Ville Talvala <etalvala@google.com> |
Add support for timestamps into SurfaceTexture. API addition: The timestamps are represented as nanoseconds from some arbitrary time point. Like the SurfaceTexture transform matrix, the timestamp retrieved by getTimestamp is for the last frame sent to the GL texture using updateTexImage(). Camera HAL change: Expect vendors to set these timestamps using native_window_set_buffers_timestamp(). For now, they are autogenerated by SurfaceTextureClient if set_buffers_timestamp() is never called, but such timing is likely not accurate enough to pass a CTS test. bug:3300707 Change-Id: Ife131a0c2a826ac27342e11b8a6c42ff49e1bea7
SurfaceTexture.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
|
5c0c93a8c49b4053744efb8953b915fa7f0923a5 |
14-Mar-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: disallow unsupported uses. This change makes the ANativeWindow_lock NDK function error out if it is passed an ANativeWindow with a concrete type that is not Surface. It also makes eglCreateWindowSurface fail if it is passed a SurfaceTextureClient as its 'window' argument. Bug: 4087277 Change-Id: Ie68c50c52d88f72d8a387f6c094908044c83a88c
ests/SurfaceTextureClient_test.cpp
|
bae774eb20bebd409441b93386b51bccda75f546 |
14-Mar-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTextureClient: Add ISurfaceTexture getter. This change adds a getter method to SurfaceTextureClient to get the ISurfaceTexture object with which the SurfaceTextureClient is communicating. Bug: 4086509 Change-Id: Ifec621e0fe5392a5be56b2348fdc54067cbebcdd
urfaceTextureClient.cpp
ests/SurfaceTextureClient_test.cpp
|
391bbe2246a7547dbf3460c231b3c5ba691d4eb1 |
14-Mar-2011 |
Jamie Gennis <jgennis@google.com> |
ANativeWindow: add query for the concrete type. This change adds a query to the ANativeWindow interface for getting the concrete type of the ANativeWindow. Bug: 4086509 Change-Id: I64aa86d72fbca3b52a98e1fc35608737781a3178
urfaceTextureClient.cpp
ests/SurfaceTextureClient_test.cpp
|
d99c088f35960b7f0ef948c3bb948a99a800eba1 |
11-Mar-2011 |
Jamie Gennis <jgennis@google.com> |
SurfaceTexture: fix transform matrix computation. This change fixes the transform matrix computation in SurfaceTexture when a crop rectangle is specified by the image producer. It also adds a test for this case as well as a basic test for the uncropped case. Bug: 4070775 Change-Id: I1481c9ce9d08fe7f2bff86d3afdeab7d4002b157
urfaceTexture.cpp
ests/Android.mk
ests/SurfaceTexture_test.cpp
|
134f0422866e8985188ed10dfbdcb8e6c34b87f7 |
08-Mar-2011 |
Jamie Gennis <jgennis@google.com> |
ANativeWindow: add queues-to-window-composer check. This change adds a new 'method' to the ANativeWindow interface to check whether buffers queued to the window will be sent directly to the system window compositor. Change-Id: I4d4b199e328c110b68b250029aea650f03c8724d Bug: 3495535
urfaceTextureClient.cpp
ests/Android.mk
ests/SurfaceTextureClient_test.cpp
|
9d4d6c101d90d4a1d1ca9413cf3eb89d1f1898d6 |
27-Feb-2011 |
Jamie Gennis <jgennis@google.com> |
Add the MIN_UNDEQUEUED_BUFFERS query to ANW. This change adds a new query to ANativeWindow for getting the minimum number of buffers that must be left un-dequeued during the steady-state operation of the ANativeWindow. Change-Id: Ie8c461fc26b02ecde02ddb4f95bf763662cf1551 Related-Bug: 3356050
urfaceTexture.cpp
urfaceTextureClient.cpp
|
e839fdad46c1474368de63626cc07b4ed46cd350 |
07-Feb-2011 |
Jamie Gennis <jgennis@google.com> |
am c7839751: am c2efcd2c: Merge "Initialize the SurfaceTexture transform fields." into honeycomb * commit 'c7839751aa1de52e0c3aab7dd1518b0fc8f2ee0a': Initialize the SurfaceTexture transform fields.
|
f73935bb0da395f5126b67837e815d237dcae5ac |
04-Feb-2011 |
Jamie Gennis <jgennis@google.com> |
Initialize the SurfaceTexture transform fields. Change-Id: I2c25f15949253a1dbe493fef440e5ef118c40e71 related-bug: 3426067
urfaceTexture.cpp
|
08b4ea31a8e265025066ed94b02f08819fac46e5 |
03-Feb-2011 |
Jamie Gennis <jgennis@google.com> |
am 421d94c2: am ecb4b3f0: Merge "Pass the IGraphicBufferAlloc to SurfaceTextureClient." into honeycomb * commit '421d94c20321e1de528416b279bf148baba47b39': Pass the IGraphicBufferAlloc to SurfaceTextureClient.
|
1b20cde313b5ef8acdace742328df867956d24cb |
03-Feb-2011 |
Jamie Gennis <jgennis@google.com> |
Pass the IGraphicBufferAlloc to SurfaceTextureClient. This change passes a reference to the IGraphicBufferAlloc binder object to SurfaceTextureClient objects. When STC objects are created they query their associated ISurfaceTexture object for the IGraphicBufferAlloc that the SurfaceTexture uses to allocate buffers. Having the SurfaceTextureClient hold this reference prevents the GraphicBufferAlloc in SurfaceFlinger from freeing the allocated buffers before the SurfaceTextureClient is done with them. Change-Id: Ib8e30e8b37fdd60438cbb4cb7e9174d0ba6d661c related-bug: 3362519
SurfaceTexture.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
|
0eb8851e8cc35f443646000220e42dba3adfab8b |
26-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Clear GL errors before updating a SurfaceTexture. Change-Id: Ibdac657ae9e9ccae53c63abed9caf1f1513915c2
urfaceTexture.cpp
|
68f9127e88ca6fd849d0f28bcd8776e04aab22e6 |
29-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Reset ANativeWindow crop on buffer geometry changes. 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
urfaceTextureClient.cpp
|
749172269ac6b6f7a430e64f604e7f040524e0a1 |
28-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Quiet the SurfaceFlingerClient dequeueBuffer error. This is a temporary WAR for the case where dequeueBuffer is called when all the buffers owned by a SurfaceTexture are not available - either they're the current texture buffer or the next one. Currently, an error is returned in that case, and this change just prevents that error from being logged. In the future this will be fixed to not return an error in that case. Bug: 3356050 Change-Id: Ic6cc304881a63ce134cfd0bcb4265e3e3fa94b6a
urfaceTextureClient.cpp
|
c4d4aeab52435c177ded6abdd578fec8191f0f5d |
13-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Implement SurfaceTexture frame-available callback. This change implements the onFrameAvailable callback for the SurfaceTexture java class. It includes the C++ SurfaceTexture code as well as the JNI and Java code to enable the callback. Change-Id: Ifd8b8e7ad46ee70cba6da1c2e96dab8045d1ea30
urfaceTexture.cpp
|
a214c64d7fb3baf9138cc5314f2111ecf5056c6c |
14-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Fix SurfaceTexture transform matrix. Change-Id: I31520c547cafa5cc85cd0f73883ab3a9ff4648e2
urfaceTexture.cpp
|
73e8b9e52411785189a35640e3ccb18574e38263 |
15-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Compare GraphicBuffers using handles. This change fixes a bug in SurfaceTextureClient where GraphicBuffers were being compared using pointer comparison rather than handles. Change-Id: Ib8989af94be32d4efd86e020a732f5143088a863
urfaceTextureClient.cpp
|
9a78c90cd46b2a3bd637b056873149d3b94384b4 |
13-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Fix remote GraphicBuffer allocation in SurfaceFlinger. This change fixes a horrible hack that I did to allow application processes to create GraphicBuffer objects by making a binder call to SurfaceFlinger. This change introduces a new binder interface specifically for doing this, and does it in such a way that SurfaceFlinger will maintain a reference to the buffers until the app is done with them. Change-Id: Icb240397c6c206d7f69124c1497a829f051cb49b
urfaceTexture.cpp
|
e5366c567a49e587879929ed4e5c98425ea17740 |
13-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Add logging to SurfaceTextureClient. Change-Id: I984c3b9c88f8af613a50138188ff1b770e2de6b4
urfaceTextureClient.cpp
|
235c424c9a2e3cc5c24aae8bd9cc6f9db0808b42 |
12-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Fix a bug in SurfaceTexture::dequeueBuffer. This change fixes a bug that allowed the most recently queued buffer to be returned by dequeueBuffer. At the next updateTexImage call, the dequeued buffer would be set as the contents of the texture even though the client could be writing to it. Change-Id: I53dc14eed13262475627d5551337df57fd78fe00
urfaceTexture.cpp
|
f238e28500ca756fbd9e323f728ce7c8dda59475 |
10-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Implement crop & transform for SurfaceTexture. This change adds support for the setCrop and setTransform methods of the SurfaceTexture C++ class. The crop and transform for the current texture will be accessed by applications as a single texture coordinate transform matrix. Change-Id: I6482bf96f680e5c175364e848936db3908d6c8f8
urfaceTexture.cpp
|
67eedd74ab78c2bfed9fcdc74947b97289254ca4 |
09-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Fix a bug in SurfaceTexture::setBufferCount. We need to reset mCurrentTexture and mLastQueued in setBufferCount because it frees all of the buffers associated with the buffer slots. Change-Id: Ie2f834ec1c07ce7a4ab9b2b5fc5fe8c294010c60
urfaceTexture.cpp
|
e70d8b43938e17beebcc0c97a9373a1906f6f2bf |
09-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Add method logging to the SurfaceTexture C++ class. Change-Id: Ic05b05428d34c04634ce9fc3f924ff3322bb2da2
urfaceTexture.cpp
|
3461e0fadff06f77874676a90d4ea12c0405a925 |
08-Jan-2011 |
Jamie Gennis <jgennis@google.com> |
Initialize the SurfaceTexture buffer slots. Change-Id: I81a562ad897173f33cd6a2127737718a7db610eb
urfaceTexture.cpp
|
8ba32fade11abb73f3fd47ea0953c9528eb5b91f |
20-Dec-2010 |
Jamie Gennis <jgennis@google.com> |
Add the SurfaceTexture C++ implementation. This change adds the C++ implementation of SurfaceTexture and related classes. The goal of this is for a SurfaceTexture to be passed to camera service or Stagefright in place of a Surface to allow camera preview or decoded video frames to be streamed to an OpenGL ES texture that an application can use. Change-Id: I55c83a7017f1ecb81c9c9e3252cbd118b914296c
ndroid.mk
SurfaceTexture.cpp
urfaceTexture.cpp
urfaceTextureClient.cpp
|
2ffb24799e579c47a73c992ab567f05c4bf0c962 |
17-Sep-2010 |
Mathias Agopian <mathias@google.com> |
Fix typo which causes sensors to fail miserably Change-Id: Ieca18fc089e2bdf7d049f213836971b54d11cd76
ensorEventQueue.cpp
|
aeda9afdba5c28d4d152e3ec3bce74be42949065 |
17-Sep-2010 |
Mathias Agopian <mathias@google.com> |
part of fix for [3004226] Cannot end the call - Proximity sensor doesn't work - In SensorEventQueue, only bail on errors from Looper::loopOnce - Improve sensor error logging Change-Id: Ib3cf8d5d9fdac8513a3d753155827e0feeda1662
ensorEventQueue.cpp
|
59abe7e0909bf4b7bf7b9601e1e40a05f6d4fd8a |
14-Sep-2010 |
Jeff Brown <jeffbrown@google.com> |
Replace epoll() with poll() and rename PollLoop to Looper. As part of this change, consolidated and cleaned up the Looper API so that there are fewer distinctions between the NDK and non-NDK declarations (no need for two callback types, etc.). Removed the dependence on specific constants from sys/poll.h such as POLLIN. Instead looper.h defines events like LOOPER_EVENT_INPUT for the events that it supports. That should help make any future under-the-hood implementation changes easier. Fixed a couple of compiler warnings along the way. Change-Id: I449a7ec780bf061bdd325452f823673e2b39b6ae
ensorEventQueue.cpp
|
45e0acb41acf30a1b7592ea7e695d96aca3ccd3b |
08-Sep-2010 |
Dianne Hackborn <hackbod@google.com> |
Modify native ALooper to take an explicit ident. The ALooper API now uses an explicit "identifier" for the integer that is returned rather than implicitly using the fd. This allows the APIs that had the fd to be a little more sane. Change-Id: I8507f535ad484c0bdc4a1bd016d87bb09acd7ff0
ensorEventQueue.cpp
|
a48bcf62b6a26f24a0bdd2b44bb39fadce499e92 |
30-Jul-2010 |
Mathias Agopian <mathias@google.com> |
Added SensorManager.getMinDelay() Exposed the new "min delay" sensor property through native and java sensor apis. This allows the caller to know what is the maximum rate at which a sensor can return events, or, if a sensor works in "update" mode (events returned only when the value changes). Also augmented SensorManager.regusterSensorEvent() so that it can accept a value in microsecond in addition to the 4 constants already defined. Change-Id: If425e9979892666df8c989d7de3c362230fa19e0
ensor.cpp
ensorEventQueue.cpp
|
d03d9ced3fe0c115bd7af5537cdb57e94e165005 |
23-Jul-2010 |
Mathias Agopian <mathias@google.com> |
Fix a memory corruption when writting Sensor into a parcel Change-Id: I03f703ae2224f43924031bfea4c68aa979bb9f05
ensor.cpp
|
e3c8234765050023b8a588607f819e8cc41a6363 |
22-Jul-2010 |
Mathias Agopian <mathias@google.com> |
propagate sensor event rate properly Change-Id: I32e67d30e4295285a6827956cc8161b2025d70bc
ensorEventQueue.cpp
|
a7352c9f4a6e642c29782b19db5bc0bd98feddc8 |
15-Jul-2010 |
Mathias Agopian <mathias@google.com> |
new SensorService remove old sensor service and implement SensorManager on top of the new (native) SensorManger API. Change-Id: Iddb77d498755da3e11646473a44d651f12f40281
SensorEventConnection.cpp
SensorServer.cpp
ensor.cpp
ensorEventQueue.cpp
ensorManager.cpp
|
589ce85ee4174829cfedce91b6b2509d2a4002eb |
14-Jul-2010 |
Mathias Agopian <mathias@google.com> |
first step at implementing the native sensor support in this commit: - implemented the C stub - implemented the binder interfaces involved - implemented most of the C++ client side missing: - SensorManager cannot connect to the SensorServer yet (because there is no SensorServer yet) Change-Id: I75010cbeef31c98d6fa62fd5d388dcef87c2636b
ndroid.mk
SensorEventConnection.cpp
SensorServer.cpp
ensor.cpp
ensorChannel.cpp
ensorEventQueue.cpp
ensorManager.cpp
|