summaryrefslogtreecommitdiffstats
path: root/services/surfaceflinger
Commit message (Collapse)AuthorAgeFilesLines
...
* | fix an issue where updates could starve transactionsMathias Agopian2011-12-022-9/+2
| | | | | | | | | | Bug: 5700586 Change-Id: Iaa4adc1a6aea1db6e2943efe4caca1f6cbebfa72
* | am e2970700: am e8ba2aba: Merge "add a way to access the version string of ↵Mathias Agopian2011-11-301-1/+9
|\ \ | |/ | | | | | | | | | | the h/w implementation of EGL" into ics-mr1 * commit 'e2970700e921da4226061988a6e8953b1fbfb5a9': add a way to access the version string of the h/w implementation of EGL
| * Merge "add a way to access the version string of the h/w implementation of ↵Mathias Agopian2011-11-301-1/+9
| |\ | | | | | | | | | EGL" into ics-mr1
| | * add a way to access the version string of the h/w implementation of EGLMathias Agopian2011-11-291-1/+9
| | | | | | | | | | | | | | | | | | | | | we use a hidden egl extension. the version string is printed in SF's dumpsys log. Change-Id: I123eb4bde6de462bb2404c67b74d6d6219a48d6a
* | | am 55d3880e: am bb1e7d43: Merge changes I7e973a35,Ib3386fcc into ics-mr1Mathias Agopian2011-11-301-1/+1
|\ \ \ | |/ / | | | | | | | | | | | | * commit '55d3880eed3450748eb7b97281e030902ee29c2a': SurfaceTexture: add EGL_KHR_fence_sync option SurfaceTexture: add a blit-to-FBO test
| * | SurfaceTexture: add EGL_KHR_fence_sync optionJamie Gennis2011-11-291-1/+1
| |/ | | | | | | | | | | | | | | 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
* | Add support for sending VSYNC events to the frameworkMathias Agopian2011-11-2915-27/+720
| | | | | | | | | | | | | | | | | | 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
* | Fix build.Mathias Agopian2011-11-295-110/+27
| | | | | | | | | | | | | | | | Revert "Add support for sending VSYNC events to the framework" This reverts commit f3918c5bd4bc9f02f74da42995564150ca2dd382. Change-Id: I998e3e1aa3fa310829ae973b64fe11b01f6f468f
* | Merge changes If4126023,Iacda2386,I1eb691f7,Ib56139f8Mathias Agopian2011-11-297-243/+174
|\ \ | |/ |/| | | | | | | | | | | * changes: Add support for sending VSYNC events to the framework BitTube::read now handles EAGAIN split ComposerService out of SurfaceComposerClient.h rewrite SF's message loop on top of Looper
| * Add support for sending VSYNC events to the frameworkMathias Agopian2011-11-295-27/+110
| | | | | | | | | | | | | | | | | | 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
| * rewrite SF's message loop on top of LooperMathias Agopian2011-11-283-216/+64
| | | | | | | | Change-Id: Ib56139f87a5c0b124e34da5c8151207219b2577b
* | temporarily hardcode Nexus S refresh rateMathias Agopian2011-11-231-0/+1
|/ | | | Change-Id: Id8465f679b96636041b4b891d0b358c387d456c3
* remove hack that hardcoded the refresh rateMathias Agopian2011-11-161-4/+0
| | | | Change-Id: Ibdd40b337c547e80ef8541856015f1380c8d58ed
* rework a bit how we manage EGL extensionsMathias Agopian2011-11-141-16/+0
| | | | | | | | | | | | | - don't advertise extensions that are not supported by any implementation - remove EGL_ANDROID_swap_rectangle which is not implemented by anybody and confuses people - add some comments about mandatory extensions Bug: 5428001 Change-Id: Id8dc48116ac1d1eb79ec9ef55d03e29d4257c1f3
* Back to 59fpsDave Burke2011-11-091-1/+1
| | | | Change-Id: I8d89e5e27f1abc5a2e36cb832eb4db2ca83c2cc6
* Fix an issue where we could wait for a non-existing transactionMathias Agopian2011-11-071-14/+16
| | | | | | | | | | This fixes the issue: "Call not sent" dialog takes too long to dismiss after hitting OK" Note: the system would recover after a 5 second timeout. Bug: 5534520 Change-Id: Ifa37e594b50581f498479a5858672441b3d7dd87
* Merge "Fix rotation displays frame N-1 briefly while rotating" into ics-mr1Mathias Agopian2011-11-074-9/+52
|\
| * Fix rotation displays frame N-1 briefly while rotatingMathias Agopian2011-11-044-9/+52
| | | | | | | | | | | | | | | | | | | | The ScreenShot layer is now created hidden. The screenshot itself is aquired during the transaction when the layer is made visible. This guarantees the screenshot and the layer happen atomically with respect to screen updates. Bug: 5534521 Change-Id: Ida23e1f13d5716ec83b78a15712e0646d6cf8729
* | workaround to set the WM refresh rate to 48 Hz for tuna devices onlyMathias Agopian2011-11-042-0/+15
|/ | | | | | | this is TEMPORARY until we can do this properly. Bug: 5572464 Change-Id: I6537706d636a83a4a50e2900d6b829dd89b6f245
* fix Corrupted graphics while playing You Tube on orientation changeMathias Agopian2011-10-261-0/+2
| | | | | Bug: 5432124 Change-Id: If948b9797b1ec6fff80ca5ea94508abcaced9f31
* Merge "Fix software GL renderer."Xavier Ducrohet2011-10-211-1/+1
|\
| * Fix software GL renderer.Xavier Ducrohet2011-10-211-1/+1
| | | | | | | | Change-Id: I07ab2709fa694e41aa3fcc5b9dfc809f55853ab4
* | am aa938c8d: Merge "mDirtyRegion is single threaded, but could be accessed ↵Mathias Agopian2011-10-212-2/+23
|\ \ | |/ |/| | | | | | | | | from a hwc thread" into ics-mr0 * commit 'aa938c8d9c0e71c9b556657cb33794210ce6ebf8': mDirtyRegion is single threaded, but could be accessed from a hwc thread
| * mDirtyRegion is single threaded, but could be accessed from a hwc threadMathias Agopian2011-10-212-2/+23
| | | | | | | | | | | | | | | | | | | | We now have mInvalidateRegion which holds the region to invalidate, it can be set from any thread as long as mInvalidateLock is held. We use fine-grained locking here because mInvalidateRegion can be set from anywhere, in particular frmo HWC callbacks. Bug: 5466774 Change-Id: Iafca20aa3f5b25a87755e65bde7b769aa8f997bc
* | am 16bece04: Merge "added dpi and refresh rate info in SF\'s dumpsys" into ↵Mathias Agopian2011-10-201-2/+9
|\ \ | |/ | | | | | | | | | | ics-mr0 * commit '16bece04bdbac9af5228436f70267ec5763315de': added dpi and refresh rate info in SF's dumpsys
| * added dpi and refresh rate info in SF's dumpsysMathias Agopian2011-10-201-2/+9
| | | | | | | | Change-Id: I2327248eb1993689367e3daeaccba74c172dfceb
* | am 70ac412b: Merge "Add a LayerScreenshot" into ics-mr0Dave Burke2011-10-186-28/+226
|\ \ | |/ | | | | | | * commit '70ac412b2fe7be2507189a9fdfb30c43b36d56ac': Add a LayerScreenshot
| * Add a LayerScreenshotMathias Agopian2011-10-186-28/+226
| | | | | | | | | | | | | | | | | | | | A LayerScreenshot is a special type of layer that contains a screenshot of the screen acquired when its created. It works just like LayerDim. Make sure to call compositionComplete() after rendering into a FBO. Bug: 5446982, 5467587, 5466259 Change-Id: I5d8a1b4c327f9973d950cd4f4c0bca7f62825cd4
* | am f7613743: Merge "Don\'t call hwc set() if there is nothing new to do" ↵Mathias Agopian2011-10-181-2/+10
|\ \ | |/ | | | | | | | | | | into ics-mr0 * commit 'f7613743f29f38cbbaf4ae09996c380845a17daf': Don't call hwc set() if there is nothing new to do
| * Don't call hwc set() if there is nothing new to doMathias Agopian2011-10-181-2/+10
| | | | | | | | | | | | | | | | | | | | there was situations where SF's main loop would run (as if there was an invalidate), but the dirty region was empty (so no new buffers were retired). In this case we return early and don't swap, which would cause drawing artifacts. Bug: 5476838 Change-Id: Id3b7bf4b7aabec7919c50d9278eb2165973a4c3d
* | am 23bf2505: Merge "Make sure set GL state properly" into ics-mr0Mathias Agopian2011-10-184-40/+30
|\ \ | |/ | | | | | | * commit '23bf250522b7dff9acd14c5900b66b1df9c76745': Make sure set GL state properly
| * Make sure set GL state properlyMathias Agopian2011-10-184-40/+30
| | | | | | | | | | | | | | | | | | when taking a screenshot, in particular, we could end up with stale GL state when drawing LayerDim which resulted in incortect rendering. Bug: 5467587 Change-Id: Id9fbed2843481d31063620f3662b364c7e3ac781
* | am 840b8a67: Revert "Add a LayerScreenshot"Mathias Agopian2011-10-176-226/+28
|\ \ | |/ | | | | | | * commit '840b8a678537519c27ddf2f818494eaa20a135d4': Revert "Add a LayerScreenshot"
| * Revert "Add a LayerScreenshot"Mathias Agopian2011-10-166-226/+28
| | | | | | | | This reverts commit d6809f40cf61203573ec5dbc437f695cd132cc18.
* | am 4fb6416e: Merge "we need to guarantee that h/w comp set() is called when ↵Mathias Agopian2011-10-171-9/+7
|\ \ | |/ | | | | | | | | | | a buffer has been retired" into ics-mr0 * commit '4fb6416e3a21031a88921a784ae62b13d8a1a39f': we need to guarantee that h/w comp set() is called when a buffer has been retired
| * we need to guarantee that h/w comp set() is called when a buffer has been ↵Mathias Agopian2011-10-161-10/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | retired removed a test that could violate this guarantee. note that we have no proof tha this ever happened, but consequences could be hard lock-ups. the code here was intended to track the region to update for displays that can do partial update. the logic discarded the update entirely if that region was empty. instead we just redraw the whole thing (note that we should never be there with an empty region and retired buffers though). Bug: 5466259 Change-Id: I91ccab3b1a599e729e438eb833939e2236da6854
* | Merge branch 'master' of ssh://android-git:29418/platform/frameworks/baseElliott Hughes2011-10-176-174/+298
|\ \ | |/ |/|
| * SurfaceFlinger: Remove display freezing codeJamie Gennis2011-10-144-155/+5
| | | | | | | | | | | | | | This change removes the dead code from SurfaceFlinger that resulted from disabling support for freezing the display. Change-Id: I4e5ff00c94b4c7a79af2f65c9850c135210068ed
| * SurfaceFlinger: add some layer update testsJamie Gennis2011-10-142-1/+276
| | | | | | | | | | | | | | This change adds two tests for SurfaceFlinger's behavior when updating the position and size of a layer. Change-Id: Id5e3ca1d7e629a3bd2c2d28275d80c7f9256d6da
| * SurfaceFlinger: make sync transactions explicitJamie Gennis2011-10-142-18/+17
| | | | | | | | | | | | | | This change enables a layer or orientation update transaction sent to SurfaceFlinger to explicitly request a synchronous transaction. Change-Id: I97cbba610c13679849f66114b216fa6dbf12f2a9
* | Add a LayerScreenshotMathias Agopian2011-10-146-28/+226
|/ | | | | | | | A LayerScreenshot is a special type of layer that contains a screenshot of the screen acquired when its created. It works just like LayerDim. Bug: 5446982 Change-Id: I7814aff2380e7e146937f2b641907be2a30c76cc
* SurfaceFlinger: update orientation via transactionsJamie Gennis2011-10-112-2/+15
| | | | | | | | | | | 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
* Merge "fix an issue where the screen could stay off"Mathias Agopian2011-10-104-21/+2
|\
| * fix an issue where the screen could stay offMathias Agopian2011-10-104-21/+2
| | | | | | | | | | | | | | | | this would happen when toggling on/off/on very fast, the screen could stay black (while the panel is on). Bug: 5429724 Change-Id: Ic8aa6aff066e6267923c0d47ef65e314e7bb6d41
* | Merge "Fix screen off animation when in landscape"Mathias Agopian2011-10-101-2/+10
|\ \ | |/
| * Fix screen off animation when in landscapeMathias Agopian2011-10-101-2/+10
| | | | | | | | Change-Id: I4bc5b12d7a64a4bf8b9a851594be4d60b790d1ed
* | Merge "enable EGL_IMG_context_priority for the omap4 platform"Mathias Agopian2011-10-101-0/+3
|\ \ | |/ |/|
| * enable EGL_IMG_context_priority for the omap4 platformMathias Agopian2011-10-071-0/+3
| | | | | | | | | | Bug: 5311015 Change-Id: Icaad3d1c963d382ac0a4b9121fe20d3408846c2b
* | SurfaceFlinger: screenshots w/ protected buffersJamie Gennis2011-10-073-30/+38
|/ | | | | | | | | This change modifies SurfaceFlinger's screenshot behavior when a layer with a protected buffer is visible. The previous behavior was to simply fail the screenshot. The new behavior is to render the screenshot using a placeholder texture where the protected buffer would have been. Change-Id: I5e50cb2f3b31b2ea81cfe291c9b4a42e9ee71874
* Force a repaint when hwc invalidate hook is calledMathias Agopian2011-10-052-6/+4
| | | | | | | without this prepare() would be called but not set() since the dirty region is empty. Change-Id: I038acfbdad4c16015357ccde4d1949391d6f989d