7077506f9945b87b02bdd47ffce75a5b813c821c |
|
14-Nov-2011 |
Dave Burke <daveburke@google.com> |
Revert "Discard framebuffer rendering queues when discarding layers" This reverts commit da96f8ac2c1c35a54f3f36e6d776cb386a251d03.
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
da96f8ac2c1c35a54f3f36e6d776cb386a251d03 |
|
11-Nov-2011 |
Romain Guy <romainguy@google.com> |
Discard framebuffer rendering queues when discarding layers Bug #5581817 Change-Id: If612846ec5f7793710fc4df152791fb32c506551
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
5cd5c3f7e4df99f47e3def6e3707b9eb8205aef3 |
|
18-Oct-2011 |
Romain Guy <romainguy@google.com> |
Return early when we cannot allocate a hardware layer Bug #5462308 Change-Id: I52dab809662f6f42a49ca03edc50f6b98fc35a06
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
7953745dd565167113f8cbfc461bc0521d32d870 |
|
12-Oct-2011 |
Romain Guy <romainguy@google.com> |
Reduce the size of libhwui by 50% This change removes unnessary symbols. All symbols are hidden by default, public APIs with exported symbols are explicitly marked with ANDROID_API. Change-Id: I692fde432a86c12108de1cfd1f6504919a7d5f3f
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
a9dc86b21defc26db0d71f276aff5c3af0b62ff5 |
|
11-Oct-2011 |
Romain Guy <romainguy@google.com> |
Correctly apply transforms when getting a TextureView's bitmap Bug #5439406 Change-Id: I271a9a2e38f5b3600dc158f8f442a6b0893f472b
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
8a3957d43bcae93fbb9f6b4b4c3de8abdb3c953c |
|
08-Sep-2011 |
Romain Guy <romainguy@google.com> |
Add reminder in the code to fix T-junctions Change-Id: I52b112694f930e641f01fb78dc55412986023411
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
65b345fa22b878e141b8fd8ece9c208df00fa40f |
|
28-Jul-2011 |
Romain Guy <romainguy@google.com> |
Reclaim more memory, more often. Yay. Change-Id: I04557ad575c307a55088549f48f0e9ad994b7275
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
eea60692b060737faeaa02bb30f5b79e2202b482 |
|
27-Jul-2011 |
Romain Guy <romainguy@google.com> |
Improve layers debugging Change-Id: Ia4950dd5f0e0a224ecb69c581d33aa4f32260a7c
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
ec19b4a764d512091a780fc93ced567dfbf80914 |
|
08-Jul-2011 |
Romain Guy <romainguy@google.com> |
Use NEAREST filtering mode for TextureView.getBitmap(). Change-Id: I4649062bbdf18ebba7924bdf578f39ad8f6576ac
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
9ace8f5e79e76893fe4ca9e4d10f6c4056330485 |
|
08-Jul-2011 |
Romain Guy <romainguy@google.com> |
Use NEAREST filtering for layers whenever possible. Change-Id: Id5bee1bd4a322cf93e8000b08e18f1e1b058648e
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
4a5a71518a71a44dbccb3af9a08b82056ea748b3 |
|
25-Jun-2011 |
Romain Guy <romainguy@google.com> |
Don't set texture parameters on every frame. Change-Id: Iec368405ad6a4ccfd569a0b3b4d681871a770396
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
80429c458506485904715180d10584092a5cd082 |
|
25-Jun-2011 |
Romain Guy <romainguy@google.com> |
Properly tear down TextureView Change-Id: Ic23cd9257889d0abe8cc3fc1d04a66d0505e383e
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
a9489274d67b540804aafb587a226f7c2ae4464d |
|
23-Jun-2011 |
Romain Guy <romainguy@google.com> |
Add the ability to specify the opacity of a TextureView TextureView assumes its content is opaque by default. Change-Id: Iba873423566a5b67c388081838bd910dceba32ba
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
d6b2a00dd43257d1498b09175bff63663f6cb861 |
|
18-Jun-2011 |
Romain Guy <romainguy@google.com> |
Add error checking to LayerRenderer::copyLayer This method is invoked by TextureView.getBitmap() and failures must be caught to avoid leaving the GL context in a potentially bad state. Change-Id: I620de395ba1bc20154de58c81963223dc55cac78
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
77a811610f99e21da7f88dafef60d09f345d0506 |
|
15-Jun-2011 |
Romain Guy <romainguy@google.com> |
Add TextureView.getBitmap() This API can be used to get a Bitmap copy of the content of a TextureView. Change-Id: I07522216c353720fba5cab333174f58f484eb911
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
8f0095cd33558e9cc8a440047908e53b68906f5f |
|
03-May-2011 |
Romain Guy <romainguy@google.com> |
Allows to render with an OpenGL context inside a TextureView. Change-Id: I59453f7fc3997f0502a1c5d325d37fed376fabc7
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
aa6c24c21c727a196451332448d4e3b11a80be69 |
|
29-Apr-2011 |
Romain Guy <romainguy@google.com> |
New widget: TextureView Bug #4343984 TextureView can be used to render media content (video, OpenGL, RenderScript) inside a View. The key difference with SurfaceView is that TextureView does not create a new Surface. This gives the ability to seamlessly transform, animate, fade, etc. a TextureView, which was hard if not impossible to do with a SurfaceView. A TextureView also interacts perfectly with ScrollView, ListView, etc. It allows application to embed media content in a much more flexible way than before. For instance, to render the camera preview at 50% opacity, all you need to do is the following: mTextureView.setAlpha(0.5f); Camera c = Camera.open(); c.setPreviewTexture(mTextureView.getSurfaceTexture()); c.startPreview(); TextureView uses a SurfaceTexture to get the job done. More APIs are required to make it easy to create OpenGL contexts for a TextureView. It can currently be done with a bit of JNI code. Change-Id: Iaa7953097ab5beb8437bcbbfa03b2df5b7f80cd7
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
9fc27819d75e24ad63d7b383d80f5cb66a577a0d |
|
27-Apr-2011 |
Romain Guy <romainguy@google.com> |
Correctly compute tex coords for rect layers. Bug #4192695 This change also fixes Javadoc links in the framework. Change-Id: Ia548bcb18baba5d6fe6a4a04a2278e3a3bd465b2
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
40667676e542a9daeafeac9904c30004e8706fd3 |
|
18-Mar-2011 |
Romain Guy <romainguy@google.com> |
Optimize rect-shaped layers. This brings back an optimization disabled in HC-MR1. This time the correct geometry is generated to avoid unnecessary blending. Change-Id: Id56404dc46bb84c75facc25c18488a690741b592
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
6217a71cd281003a376d998269d577d26a61c206 |
|
16-Mar-2011 |
Romain Guy <romainguy@google.com> |
Fix performance issue in Launcher Bug #3515248 The problem is caused by the fast path when compositing layers on screen. The fast path draws a single quad using glDrawArrays() whereas the general path draws an arbitrary mesh using glDrawElements(). It looks like there's an issue in the driver since glDrawArrays() is significantly slower than glDrawElements() for a quad (6 vertices!) This change just gets rid of the fast path. Change-Id: Ib2361253ec67f44a988270f76c183422f12ce537
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
40a787f89a6f4c20f2c7fce29e5bc53954305f34 |
|
03-Mar-2011 |
Romain Guy <romainguy@google.com> |
Properly initialize FBO textures for linear filtering. Change-Id: I67fc4fd760483ef85809be8d6e608cf4f469650f
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
09b7c91de73b59aa3f679b3ae3ba299f82ec9f8a |
|
03-Feb-2011 |
Romain Guy <romainguy@google.com> |
Allocate layers from the layers pool. Bug #3413433 This change will be beneficial to Launcher to avoid hiccups when swiping pages of icons. When a layer is discarded, it is kept in the layers pool instead of being destroyed right away. This favors memory reuse over allocations. Change-Id: Ifb6944ba83d6ceb67c331527c0827b26ce648eb1
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
62687ec12cb8e0b1d4044a235b1387b9a8c3b4b4 |
|
03-Feb-2011 |
Romain Guy <romainguy@google.com> |
Don't clobber the local dirty rect after rendering a layer. Bug #3417254 Bug #3413433 Change-Id: I8045e9ec414ebe4ce4d38124142a00726d2c634d
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
beff8d83ef062975459f149ad0c632a3797d78ce |
|
02-Feb-2011 |
Romain Guy <romainguy@google.com> |
Fix incorrect dirty rectangle transformation in hardware layers. Bug #3413433 Change-Id: Iba201c7c4b4f11937797f3afcbf20c5a7395be25
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
3a3133d876caf60ebff2176ad75c3dcf0259148d |
|
02-Feb-2011 |
Romain Guy <romainguy@google.com> |
Update layers based on the dirty region. Bug #3413433 This helps Launcher when a widget updates during a scroll, or when interacting with widgets on the workspace if layers are still turned on. Change-Id: Ic7a42eb34f74f4ae988039754f815e2efd1d1e4f
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
a45c056e62be0ca97edbdd6f6660822cf453c886 |
|
27-Jan-2011 |
Chet Haase <chet@google.com> |
Merge "Fix display List bugs" into honeycomb
|
678e0adbdbac5fa3f25ca8371fdff1b3182f67e9 |
|
25-Jan-2011 |
Chet Haase <chet@google.com> |
Fix display List bugs Various property setters in View need to invalidate the parent's cache to get redrawn properly when accelerated with display lists. Also, fix logic around display lists and old-style Animations in ViewGroup. Change-Id: I70e1c2fa49e62228ee4a1301a006ce50bda4c305
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
4f09f5417b5c14fd31336dacfff86972e7885a03 |
|
27-Jan-2011 |
Romain Guy <romainguy@google.com> |
Don't draw the same triangles several times. Bug #3388197 Change-Id: Ief1dfd9447f144e9992340a173d2893e5e049129
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
7d7b5490a0b0763e831b31bc11f17d8159b5914a |
|
25-Jan-2011 |
Romain Guy <romainguy@google.com> |
Enable partial invalidates when rendering with OpenGL. Change-Id: Ie8be06c4776b815e8737753eb8003b4fd8936130
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
c88e357d1ed9dadfc0efb3dfbe92f24460674ef5 |
|
22-Jan-2011 |
Romain Guy <romainguy@google.com> |
Fix regression with hardware layers. The renderer was checking whether the layer's region is a rect to draw it with a simple quad. This test was done against the layer's region structure, which was cleared after generating the mesh. Unfortunately Region::isRect() returns true when the region is empty, which was causing the renderer to always use a quad to draw a mesh on screen. Change-Id: If4b874579ee0cedcb67367c9efa5c0c98ca55231
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
42f3a4b7c35dd1ea1922356eb3611af8cde05179 |
|
19-Jan-2011 |
Romain Guy <romainguy@google.com> |
Make embedded hardware layers work. Bug #3369474 Change-Id: Ib6d7fb44eedda9dc2933b5e1b176f307968af91d
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
fb13abd800cd610c7f46815848545feff83e5748 |
|
17-Jan-2011 |
Romain Guy <romainguy@google.com> |
Fix 9patch rendering in ExpandableListView. Change-Id: I60843d61a40b0cb7dd09923cb4489a5a76f20486
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
f219da5e32e85deb442468ee9a63bb28eb198557 |
|
16-Jan-2011 |
Romain Guy <romainguy@google.com> |
Don't blend transparent pixels when rendering layers. With this change, the rendere keeps track of what regions are rendered into and generates a mesh that matches these regions exactly. The mesh is used to composite the layer on screen. Change-Id: I1f342576b9134fb29caff7fb8f4c1da179fe956d
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
ada830f639591b99c3e40de22b07296c7932a33f |
|
13-Jan-2011 |
Romain Guy <romainguy@google.com> |
Cleanup implementation of hardware layers. The new implementation relies on OpenGLRenderer's existing layer code instead of duplicating it. The new code is much cleaner, with simpler and better APIs and allows tracking of drawn regions inside layers. Region tracking is not yet enabled but this will be done in a future CL. Change-Id: Ie826121a2227de8252c77b992a61218defea5143
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
1fc883b271707c4206ae20cc9a935d7bd4a7485e |
|
12-Jan-2011 |
Romain Guy <romainguy@google.com> |
Add logging to the new layers API. Change-Id: I78b9426eb17de3e775aca9fafe4a50bd9c0785c4
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
57066eb64c9a190d1afc87bb060bbb2d31e5b86c |
|
12-Jan-2011 |
Romain Guy <romainguy@google.com> |
Cleanup GL objects on the correct thread. Change-Id: Iddfea6e08a6591a4fab147151098ef27005f373d
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
a9d0711392689a94b9f76eb0c16d0718c005603e |
|
12-Jan-2011 |
Romain Guy <romainguy@google.com> |
Don't break the build! Change-Id: I42f68c7b023c03adeedc4e979e5f4705188ee9f4
/frameworks/base/libs/hwui/LayerRenderer.cpp
|
6c319ca1275c8db892c39b48fc54864c949f9171 |
|
11-Jan-2011 |
Romain Guy <romainguy@google.com> |
Better backend for hardware layers. With this new backend, a hardware layer is only recreated when its associated view is udpated. This offers fast composition in GL and fast update of the layer in GL as well. Change-Id: I97c43a612f5955c6bf1c192c8ca4af10fdf1d076
/frameworks/base/libs/hwui/LayerRenderer.cpp
|