Bug #5333924
This might break applications trying to use AsyncTask on a looper
that is not the main thread, but such apps would already have
issues (AsyncTask has a single static handler and attempting to
use AsyncTask outside of the main thread would likely result
in weird threading issues in other parts of the app.)
Change-Id: Ibbf480627fc7b91326a27d4f5e5af49e8c5b5115
- makes TextLayoutCache not carring about start/count. Basically he will cache the result for
the full string and gives back the "chunk" corresponding to start/count
- changed the TextLayoutCacheValue API to take start/count parameters
- added the Harfbuzz LogClusters in TextLayoutCacheValue as it is needed for extracting the start/count "chunk"
- fix potential issue of cache key leaking
Change-Id: I9276f9bec744e8de36349acfba8429f7c6f83394
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
calls.
If a View is added to a ViewGroup during the ViewGroup's
onAttachedToWindow method, the child can receive two calls to
onAttachedToWindow. Guard against this.
Change-Id: I845d0cb2c9172071eee1eadc6bc2dd282ee0ef43
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
When applying the new bitmap from the editor to the client,
recycle the old bitmap, and set the reference to the editor
bitmap to null.
Change-Id: I7d79e4b8410e5035fa51b20be4b1ada391c84c28
- Drastically cut down the number of times we supply the AudioSink with data
by estimating the time until the sink would run out of data and then scheduling
a refill in advance of that.
- Use a dedicated looper for video decoders since they are currently taking
too long to return from OMX_FillThisBuffer (bug 5325201)
- Revise thread priorities for the OMX dispatcher and software codecs, instead
of running them at ANDROID_PRIORITY_AUDIO, they now only run at
ANDROID_PRIORITY_FOREGROUND
- Since threads created by pthread_create inherit all of the parent threads
attributes including thread priority, briefly reset thread priority to
ANDROID_PRIORITY_FOREGROUND before instantiating OMX components and then
restore it.
Change-Id: If9332a3a20dad5485333d68c11de0d2d5d3fffc3