summaryrefslogtreecommitdiffstats
path: root/libs/surfaceflinger/SurfaceFlinger.cpp
Commit message (Collapse)AuthorAgeFilesLines
...
* | fix a memory corruption where a SF Client could be used after it's been ↵Mathias Agopian2009-06-191-36/+39
| | | | | | | | destroyed
* | release the last reference to surfaces explicitely instead of letting it go ↵Mathias Agopian2009-06-191-3/+5
| | | | | | | | implicitely when the message is destroyed
* | new Permission class used to improve permission checks speed (by caching ↵Mathias Agopian2009-06-151-21/+14
| | | | | | | | results)
* | fix a bunch of problems with destroying surfaces.Mathias Agopian2009-06-041-36/+60
| | | | | | | | now, all destruction path, go through the purgatory which is emptied when ~ISurface is called, but we also make sure to remove the surface from the current list from there (in case a client forgot to request the destruction explicitely).
* | merge master to master_glMathias Agopian2009-05-221-19/+18
|\ \
| * \ am 69a6c3eb: Merge change 2292 into donutAndroid (Google) Code Review2009-05-211-15/+15
| |\ \ | | |/ | | | | | | | | | | | | | | | Merge commit '69a6c3ebd46a8de0e896747757f364322c12608d' * commit '69a6c3ebd46a8de0e896747757f364322c12608d': split boot animation out of SurfaceFlinger
| | * split boot animation out of SurfaceFlingerMathias Agopian2009-05-211-15/+15
| | | | | | | | | | | | | | | | | | Conflicts: data/etc/platform.xml
| * | move libbinder's header files under includes/binderMathias Agopian2009-05-201-4/+4
| | |
| * | am 0124a15: Merge change 626 into donutAndroid (Google) Code Review2009-04-291-2/+12
| |\ \ | | |/ | | | | | | | | | | | | | | | Merge commit '0124a150157d69a9f0ea109be2390afb5399b8a7' * commit '0124a150157d69a9f0ea109be2390afb5399b8a7': fix 1803886 android15 Translucent GLSurfaceView demo does not display properly
| | * fix 1803886 android15 Translucent GLSurfaceView demo does not display properlyMathias Agopian2009-04-271-2/+12
| | |
| | * AI 143171: am: CL 142873 fix [1732012] Only show screen rotation animation ↵Mathias Agopian2009-03-271-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | when triggered by sensor Original author: mathias Merged from: //branches/cupcake/... Automated import of CL 143171
| | * AI 143160: am: CL 142856 new-new-new-new rotation animation. it may still ↵Mathias Agopian2009-03-271-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | change one more time. Original author: mathias Merged from: //branches/cupcake/... Automated import of CL 143160
| | * Automated import from //branches/donutburger/...@142446,142446Mathias Agopian2009-03-241-2/+1
| | |
| | * Automated import from //branches/donutburger/...@141502,141502Mathias Agopian2009-03-241-1/+2
| | |
* | | Region now has its own implementation instead of relying on SkRegion, which ↵Mathias Agopian2009-05-171-9/+12
| | | | | | | | | | | | allows us to break libui's dependency on libcorecg.
* | | created an new EGL extension called ANDROID_swap_rectangleMathias Agopian2009-05-071-5/+9
| | | | | | | | | | | | | | | | | | ANDROID_swap_rectangle allows to specify the rectangle affected by eglSwapBuffers(), anything outside of this rectangle is unchanged. in particular EGL_BUFFER_DESTROYED only applies to that rectangle. This extension as well as EGL_BUFFER_PRESERVED allow major optimizations on surfaceflinger, which can redraw only the dirty area during compositing. However, ANDROID_swap_rectangle allows further optimizations in EGL by reducing the amount of copy-back needed. ANDROID_swap_rectangle is particularily important for software implementations.
* | | update surfaceflinger, libui and libagl to the new gralloc apiMathias Agopian2009-05-041-20/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | - Currently the lock/unlock path is naive and is done for each drawing operation (glDrawElements and glDrawArrays). this should be improved eventually. - factor all the lock/unlock code in SurfaceBuffer. - fixed "showupdate" so it works even when we don't have preserving eglSwapBuffers(). - improved the situation with the dirty-region and fixed a problem that caused GL apps to not update. - make use of LightRefBase() where needed, instead of duplicating its implementation - add LightRefBase::getStrongCount() - renamed EGLNativeWindowSurface.cpp to FramebufferNativeWindow.cpp - disabled copybits test, since it clashes with the new gralloc api - Camera/Video will be fixed later when we rework the overlay apis
* | | make use of the perfectly fine List.h instead of our own reimplementation of ↵Mathias Agopian2009-04-281-1/+1
| | | | | | | | | | | | a linked list.
* | | get rid of an old hack to work around a bug around glDeleteTextures() in the ↵Mathias Agopian2009-04-241-7/+0
| | | | | | | | | | | | adreno drivers
* | | get rid of the "show fps" debug optionMathias Agopian2009-04-241-11/+1
| | |
* | | Surfaces are now destroyed properly in SurfaceFlinger.Mathias Agopian2009-04-241-43/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | First, the window manager tells us when a surface is no longer needed. At this point, several things happen: - the surface is removed from the active/visible list - it is added to a purgatory list, where it waits for all clients to release their reference - it destroys all data/state that can be spared Later, when all clients are done, the remains of the Surface are disposed off: it is removed from the purgatory and destroyed. In particular its gralloc buffers are destroyed at that point (when we're sure nobody is using them anymore).
* | | a brand new MessageQueue for SurfaceFlinger.Mathias Agopian2009-04-241-27/+48
| | |
* | | more Surface lifetime managementMathias Agopian2009-04-241-10/+62
| | | | | | | | | | | | | | | Surfaces are now destroyed once all references from the clients are gone, but they go through a partial destruction as soon as the window manager requests it. This last part is still buggy. see comments in SurfaceFlinger::destroySurface()
* | | more splitting of Surface/SurfaceControl. Surface.java is now implemented in ↵Mathias Agopian2009-04-161-36/+2
| | | | | | | | | | | | | | | | | | terms of Surface and SurfaceControl. The WindowManager side of Surface.java holds a SurfaceControl, while the client-side holds a Surface. When the client is in the system process, Surface.java holds both (which is a problem we'll try to fix later).
* | | fix a few typos in comments. this is really intended as a git pull/push test.Mathias Agopian2009-04-161-5/+5
| | |
* | | Merge commit 'goog/master' into master_glMathias Agopian2009-04-101-0/+1
|\ \ \ | |/ / | | | | | | | | | Conflicts: libs/utils/Parcel.cpp
| * | Merge commit 'korg/cupcake'The Android Open Source Project2009-03-271-4/+8
| |\ \ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: core/java/android/webkit/WebView.java core/java/android/widget/TwoLineListItem.java preloaded-classes
| | * | Automated import from //branches/cupcake/...@142873,142873Mathias Agopian2009-03-251-3/+6
| | | |
| | * | Automated import from //branches/cupcake/...@142856,142856Mathias Agopian2009-03-251-1/+2
| | | |
| | * | Automated import from //branches/cupcake/...@142445,142445Mathias Agopian2009-03-241-2/+1
| | | |
| | * | auto import from //branches/cupcake_rel/...@141571The Android Open Source Project2009-03-191-1/+2
| | |/
| * | Merge commit 'remotes/korg/cupcake' into mergeJean-Baptiste Queru2009-03-181-120/+92
| |\ \ | | |/ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: core/java/android/view/animation/TranslateAnimation.java core/jni/Android.mk core/res/res/values-en-rGB/strings.xml libs/audioflinger/AudioFlinger.cpp libs/surfaceflinger/LayerScreenshot.cpp packages/SettingsProvider/src/com/android/providers/settings/SettingsProvider.java
| * | Add missing <limits.h> includeJean-Baptiste Queru2009-01-261-0/+1
| | | | | | | | | | | | This should fix the build for gcc 4.3.2
* | | Integrate from //sandbox/mathias/donut/...@145728Mathias Agopian2009-04-101-166/+88
| | | | | | | | | | | | SurfaceFlinger rework for new EGL driver model support.
* | | AI 143320: am: CL 143171 am: CL 142873 fix [1732012] Only show screen ↵Mathias Agopian2009-03-271-3/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | rotation animation when triggered by sensor Original author: mathias Merged from: //branches/cupcake/... Original author: android-build Merged from: //branches/donutburger/... Automated import of CL 143320
* | | AI 143309: am: CL 143160 am: CL 142856 new-new-new-new rotation animation. ↵Mathias Agopian2009-03-271-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | it may still change one more time. Original author: mathias Merged from: //branches/cupcake/... Original author: android-build Merged from: //branches/donutburger/... Automated import of CL 143309
* | | Automated import from //branches/master/...@142447,142447Mathias Agopian2009-03-241-2/+1
| | |
* | | Automated import from //branches/master/...@141504,141504Mathias Agopian2009-03-241-1/+2
| |/ |/|
* | auto import from //branches/cupcake/...@137873The Android Open Source Project2009-03-111-8/+10
| |
* | auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-031-0/+1840
| |
* | auto import from //depot/cupcake/@135843The Android Open Source Project2009-03-031-1840/+0
| |
* | auto import from //branches/cupcake/...@131421The Android Open Source Project2009-02-131-94/+47
| |
* | auto import from //branches/cupcake/...@130745The Android Open Source Project2009-02-101-19/+36
|/
* auto import from //branches/cupcake/...@125939The Android Open Source Project2009-01-091-20/+4
|
* Code drop from //branches/cupcake/...@124589The Android Open Source Project2008-12-171-44/+35
|
* Initial ContributionThe Android Open Source Project2008-10-211-0/+1895