| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
Bug #10151807
Change-Id: I7ba4804fa3619088fea70eb55f10519fff0bf5f0
|
|
|
|
| |
Change-Id: Ic26ddc7151eb5462bcd243b21daf7187ed6d3bec
|
|
|
|
|
|
| |
Bug #7353771
Change-Id: I89a08a58608e374f1c604a26ee0769d5850b2f7b
|
|
|
|
|
|
|
|
|
| |
Bug #7353771
This API can be used when scaling large images down to a small size
to get nicer looking results.
Change-Id: If09087eed36077eee5355f6047a3ca67747d7d9e
|
|
|
|
| |
Change-Id: Ie28538a2104d21154fdc78a56525e7403f08287d
|
|
|
|
|
|
|
| |
The missing header was being transitively included through a
Skia header which is being removed.
Change-Id: I5a65bae076027951fe07d1e7eecd4732124fb0e4
|
|
|
|
|
|
|
| |
See https://android-git.corp.google.com/g/156016
Bug: 5449033
Change-Id: I4c4e33bb9df3e39e11cd985e193e6fbab4635298
|
|
|
|
|
|
|
|
|
|
|
| |
Bug #5566149
Lazily initialize font renderers
Keep 60% of the texture cache when an app goes to the background
Delete least used font renderer when going to the background
Delete all font renderers on full memory trim
Change-Id: I3c2454d46dc1107ec0f0f72a9ce69cbbcc8825e7
|
|
|
|
|
|
|
|
|
|
| |
Bug #3179882
Resources were freed following garbage collections on a worker thread.
This worker thread had no EGL context, which would cause the renderer
to incorrectly assume that the memory was liberated.
Change-Id: Ifdb51f94ddf42641e8654522787bfac532976c7c
|
|
|
|
| |
Change-Id: I07955de166a89b5053c6c13f250bb3e2936ca86e
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change also adds a new memory usage flag. When turned on, the
following is printed after every frame:
D/OpenGLRenderer( 3723): Current memory usage / total memory usage (bytes):
D/OpenGLRenderer( 3723): TextureCache 3766680 / 20971520
D/OpenGLRenderer( 3723): LayerCache 3538944 / 8388608
D/OpenGLRenderer( 3723): GradientCache 135168 / 524288
D/OpenGLRenderer( 3723): PathCache 41180 / 4194304
D/OpenGLRenderer( 3723): TextDropShadowCache 0 / 2097152
D/OpenGLRenderer( 3723): FontRenderer 0 262144 / 262144
D/OpenGLRenderer( 3723): FontRenderer 1 262144 / 262144
D/OpenGLRenderer( 3723): FontRenderer 2 262144 / 262144
D/OpenGLRenderer( 3723): Other:
D/OpenGLRenderer( 3723): FboCache 2 / 12
D/OpenGLRenderer( 3723): PatchCache 31 / 512
D/OpenGLRenderer( 3723): Total memory usage:
D/OpenGLRenderer( 3723): 8268404 bytes, 7.89 MB
This should help tracking possibe memory issues.
Change-Id: I83f483ca1d2dbef904829bce368e33fe5503e8d6
|
|
|
|
| |
Change-Id: I41d9334dcd9871634037344ab49bf69383498161
|
|
|
|
|
|
|
|
|
| |
This optimization is currently disabled until Launcher is
modified to take advantage of it. The optimization can be
enabled by turning on RENDER_LAYERS_AS_REGIONS in the
OpenGLRenderer.h file.
Change-Id: I2fdf59d0f4dc690a3d7f712173ab8db3848b27b1
|
|
|
|
|
|
|
|
| |
We now use a copy of SkPaint objects to avoid having it changed from under us.
We reuse copies that have not changed. We also copy the SkMatrix every time to
avoid the same problem.
Change-Id: If3fd80698f2d43ea16d23302063e0fd8d0549027
|
|
|
|
| |
Change-Id: I210ffa8f1d76a102bb7d971c649c20a74d03fbe6
|
|
|
|
| |
Change-Id: I36e6069bd58f78c609cdd1f3e4560c98f128f48e
|
|
|
|
|
|
| |
Bug #2950691
Change-Id: I57e2bc1d1a23e8683c25de7d09d6f5af2df59f41
|
|
|
|
| |
Change-Id: I754c671cf790ad5ae8bf047ad328034217da4ecc
|
|
|
|
| |
Change-Id: Ib05b398ae03e734da2dab0496df416fed4570b1c
|
|
|
|
| |
Change-Id: Ieabaa25338d2f4b8d4fd90e7401ad6e7452eae11
|
|
|
|
|
|
|
|
|
|
|
|
| |
The makefile variable USE_OPENGL_RENDERER must be set to true to compile
libhwui and the related code in the JNI layer.
This change also removes obsolete APIs from Canvas that must not be used
and would be confusing if left in. These APIs were remnants of our first
attempt at an OpenGL renderer for the view hierarchy and had not been
taken out before Android 1.0 was released.
Change-Id: I2475ff1307212bab26c926724f3c508681c7dae1
|
|
|
|
|
|
|
|
|
|
|
|
| |
When an app tries to render a bitmap or path larger than the GPU's maximum
texture size, the drawing command is ignored and a warning is logged. This
change also makes texture drawing more robust by catching potential errors
during texture creation.
This change also fixes a crash in the FontRenderer. The destructor would
sometimes try to free an uninitialized array.
Change-Id: I95ae0939c52192d97b340aa02417bf6d0c962c57
|
|
|
|
|
|
|
|
| |
This change removes the need for the SortedList and instead just
add a generated id to each FBO stored in the cache. This is an
artificial way to store several FBOs with the same dimensions.
Change-Id: I9638364e9bdc0f2391261937a0c86096f20505bf
|
|
|
|
|
|
|
|
|
| |
This change introduces a new generational cache called GenerationMultiCache
that can store several values with the same key. This can be used to use
multiple layers of the same size at the same time, without recreating them
over and over again.
Change-Id: I425466a20908b862c5f464a0f9e582ec18cbd7ac
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The cache is used to draw layers so that a new
texture does not have to be recreated every time
a call to saveLayer() happens.
The FBO cache used a KeyedVector, which is a bad
idea. The cache should be able to store several
FBOs of the same size (this happens a lot during
scrolling with fading edges for instance.) This
will be changed in a future CL.
Change-Id: Ic316189e625f0dbcf0d273a71cc981a433d48726
|
|
|
|
| |
Change-Id: I944f82fe3255de38dc04048cc8bd861f578f01a7
|
|
|
|
|
|
|
|
|
| |
The texture cache was previously checking the number of stored textures. This was
not very useful as this could easily lead to an abuse of memory. The new cache
instead tracks the total size occupied in RAM by the cached textures. When a new
texture is generated, older textures are kicked out as needed.
Change-Id: Ib27142f4a018d5bf84774c1fb6f45a67a85f20bc
|
|
|
|
| |
Change-Id: Icf5e0635e789f5ea53268c22fad51cf733b5b1a6
|
|
|
|
| |
Change-Id: I08bd6daf25351daca3ae552e1cfcfce85eefa73b
|
|
Change-Id: I58e962c3a8b2bc75c2605fe369ad3002579d86e0
Add texture cache.
Change-Id: I1c0e5581d228869e114438258a1014e33e024ad7
|