summaryrefslogtreecommitdiffstats
path: root/libs/hwui/utils
Commit message (Collapse)AuthorAgeFilesLines
* Fix TinyHashMap to use generic hash_type instead of hash_tAshok Bhat2014-02-071-4/+2
| | | | | | | | | | | | | TinyHashMap used hash_t(key) to generate hashcode. This would not work for 64-bit pointers as hash_t is declared as an uint32_t. Replaced the hash_t(key) call to more generic android::hash_type(key). This function is a template function declared in TypeHelpers.h and has a version available for all data types including pointers. Change-Id: I612cf18b49ca7c30b63f9d6938df68fed7d80d08 Signed-off-by: Ashok Bhat <ashok.bhat@arm.com>
* Draw Operation mergingChris Craik2013-04-151-0/+72
| | | | | | | | | | | | | | | | | | Merge simple bitmap draw operations and text operations to avoid issuing individual gl draws for each operation. Merging other ops to be done eventually. The methods are different - the bitmap merging generates a single mesh for reused, unclipped images (esp. repeated images in a listview) The text approach queries just defers the normal font rendering until the last drawText in the sequence that can share the same shader. Patches are sorted and merged, but don't yet have a multiDraw implementation. For now, the pretending-to-merge gives better sorting behavior by keeping similar patches together. Change-Id: Ic300cdab0a53814cf7b09c58bf54b1bf0f58ccd6
* Stop worker threads on memory trim & fix bad pointer accessRomain Guy2013-03-201-0/+58
| | | | Change-Id: I6fe7e31aeb6dd41fa65ab952caed97bc2da510d7
* Move blur code from FontRenderer to utils/Blur.cppRomain Guy2013-03-082-0/+189
| | | | Change-Id: I2cebbfbcb722ed4b37e54ffbf8b53bb92ad0c964
* Remove obsolete header fileRomain Guy2013-02-151-36/+0
| | | | | | We now use the same mechanism to compare keys everywhere in libhwui. Change-Id: I8b3cb25b13f4f38eb6f12aed0356f796a773617c
* Revert "Revert "Use RenderScript for large text blurs""Chris Craik2013-02-131-0/+42
| | | | | | This reverts commit bf5703e52e3304246cbf0e73f6976f7d7312d238. Change-Id: Ic6f991277dec9e80a6fed93db91499726b30ab2a
* Revert "Use RenderScript for large text blurs"Chris Craik2013-02-131-42/+0
| | | | | | This reverts commit 3f76e65d251ead65fe8ff98e3bd4c7623fbaac07 Change-Id: Ia81cd485e5ca696bb284c419dc8a1d2f3247100e
* Use RenderScript for large text blursChris Craik2013-02-121-0/+42
| | | | | | Still fall back to simple path for small tasks Change-Id: I492f1b3f7d6fec1738f3e45cbfb15864bd23a392
* Sanitize display list propertiesRomain Guy2012-05-181-4/+0
| | | | | | | | | | | The comparisons used in the various properties setters could fail badly in some specific conditions. The scale properties in particular did not use the same comparisons. This change also clamps alpha to the 0..1 range which avoids overflow issues with lowp registers in GLSL computations. Change-Id: I3e73b584e907a14e2c33d0865ca0d2d4d5bff31d
* Make LTE_FLOAT a strict weak order.Jeff Brown2011-09-161-1/+1
| | | | | | | | | | | | | | | | | Bug: 5327776 Currently LTE_FLOAT isn't even a valid partial order, let alone a strict weak order as needed by binary search. Consequently, KeyedVectors with keys whose types have operator< using LTE_FLOAT sometimes find the wrong values! This problem affects several graphics caches including the TextLayoutCache. (This is still not a total order because NaNs are not comparable but hopefully we don't ever search for NaNs this way!) Change-Id: Ic447a34c7d87f681ee81538f22a0937a039072dd
* Add TextLayout CacheFabrice Di Meglio2011-03-021-245/+0
| | | | | | | | - use GenerationCache for caching - move GenerationCache.h from libs/hwui/utils to include/utils - add #define for cache activation / deactivation Change-Id: Ifaf519f0b5e33b087a453e4aa6430162d8438f20
* Free resources only from the GL context thread.Romain Guy2010-11-111-1/+1
| | | | | | | | | | 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
* Optimize FBO drawing with regions.Romain Guy2010-11-024-12/+12
| | | | | | | | | 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
* Small cleanup.Romain Guy2010-10-181-2/+2
| | | | Change-Id: I0e5b9154a2d93af793d62f462d68cb7c6c3f6d75
* Use VBOs to render most geometries.Romain Guy2010-10-181-4/+4
| | | | Change-Id: I4360dc4fe5693ab425450c107282b2c22db4dca7
* Optimize 9patch rendering.Romain Guy2010-10-121-0/+40
| | | | | | | This change detects empty quads in 9patches and removes them from the mesh to avoid unnecessary blending. Change-Id: I4500566fb4cb6845d64dcb59b522c0be7a0ec704
* Move GenerationCache to the utils directory.Romain Guy2010-10-081-0/+245
| | | | Change-Id: I210ffa8f1d76a102bb7d971c649c20a74d03fbe6
* Better cache for layers, reduce memory usage and increase framerate.Romain Guy2010-10-083-0/+433
Change-Id: I5ff864a361db4791bd5ff6be716f7ce692ef572d