replicant-frameworks_native/libs/ui
Mathias Agopian cbb288bfe8 fix [2068105] implement queueBuffer/lockBuffer/dequeueBuffer properly
Rewrote SurfaceFlinger's buffer management from the ground-up.
The design now support an arbitrary number of buffers per surface, however the current implementation is limited to four. Currently only 2 buffers are used in practice.

The main new feature is to be able to dequeue all buffers at once (very important when there are only two). 

A client can dequeue all buffers until there are none available, it can lock all buffers except the last one that is used for composition. The client will block then, until a new buffer is enqueued.

The current implementation requires that buffers are locked in the same order they are dequeued and enqueued in the same order they are locked. Only one buffer can be locked at a time.

eg. Allowed sequence:   DQ, DQ, LOCK, Q, LOCK, Q
eg. Forbidden sequence: DQ, DQ, LOCK, LOCK, Q, Q
2009-09-07 16:32:45 -07:00
..
tests Region now has its own implementation instead of relying on SkRegion, which allows us to break libui's dependency on libcorecg. 2009-05-17 23:34:16 -07:00
Android.mk fix [2068105] implement queueBuffer/lockBuffer/dequeueBuffer properly 2009-09-07 16:32:45 -07:00
BufferMapper.cpp Fix a debug statement in BufferMapper 2009-07-30 12:24:41 -07:00
Camera.cpp resolved conflicts for merge of 04c7d0f8 to master 2009-07-08 17:26:05 -07:00
CameraParameters.cpp auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
EGLUtils.cpp added EGLUtils::strerror 2009-08-07 16:37:21 -07:00
EventHub.cpp Work on issue #2079167: Flickering issue across multiple UI 2009-09-02 17:20:25 -07:00
EventRecurrence.cpp auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
FramebufferNativeWindow.cpp second take, hopefully this time it doesn't break one of the builds: "SurfaceFlinger will now allocate buffers based on the usage specified by the clients. This allows to allocate the right kind of buffer automatically, without having the user to specify anything." 2009-08-11 23:32:29 -07:00
ICamera.cpp some work to try to reduce the code size of some native libraries 2009-05-26 16:12:20 -07:00
ICameraClient.cpp resolved conflicts for merge of 04c7d0f8 to master 2009-07-08 17:26:05 -07:00
ICameraService.cpp some work to try to reduce the code size of some native libraries 2009-05-26 16:12:20 -07:00
IOverlay.cpp some work to try to reduce the code size of some native libraries 2009-05-26 16:12:20 -07:00
ISurface.cpp fix [2068105] implement queueBuffer/lockBuffer/dequeueBuffer properly 2009-09-07 16:32:45 -07:00
ISurfaceComposer.cpp get rid of references to MemoryDealer in SurfaceFlinger 2009-07-02 18:50:51 -07:00
ISurfaceFlingerClient.cpp fix a bug that caused the PixelFormat viewed by Surface to be wrong. 2009-08-19 17:46:26 -07:00
KeyCharacterMap.cpp auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
KeyLayoutMap.cpp auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
KeyLayoutMap.h auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
LayerState.cpp move libbinder's header files under includes/binder 2009-05-20 12:55:03 -07:00
MODULE_LICENSE_APACHE2 auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
NOTICE auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
Overlay.cpp Adding resizeInput and setAttributes for overlay 2009-07-29 17:53:38 -07:00
PixelFormat.cpp auto import from //depot/cupcake/@135843 2009-03-03 19:31:44 -08:00
Rect.cpp minor clean-up to Rect and Point. 2009-05-26 17:47:39 -07:00
Region.cpp should fix sim build 2009-07-06 18:07:26 -07:00
SharedBufferStack.cpp fix [2068105] implement queueBuffer/lockBuffer/dequeueBuffer properly 2009-09-07 16:32:45 -07:00
Surface.cpp fix [2068105] implement queueBuffer/lockBuffer/dequeueBuffer properly 2009-09-07 16:32:45 -07:00
SurfaceBuffer.cpp fix [2068105] implement queueBuffer/lockBuffer/dequeueBuffer properly 2009-09-07 16:32:45 -07:00
SurfaceComposerClient.cpp fix [2068105] implement queueBuffer/lockBuffer/dequeueBuffer properly 2009-09-07 16:32:45 -07:00
SurfaceFlingerSynchro.cpp move libbinder's header files under includes/binder 2009-05-20 12:55:03 -07:00