- normalize (with ICU) each BiDi run before shaping them
We are normalizing by "chuncks" and starting from the end of the string. Each "chunck"
is composed of the main code point and its associated diacritics.
Fix bug #5738435 TextLayoutCache should be able to take care about diacritics during shaping
Change-Id: I7288027a7fa8eafb8b9f38d449625be60214548a
...rotating to landscape
When doing spell checking in the same process as the spell checker, we
need to make sure it is still done asynchronously.
Putting this in I noticed quite a few threading issues in this code, so
I also addressed those (which became very obviously a problem with the
async stuff here now).
Also tweaked the service side to run spell checking at background priority.
Change-Id: I01bafe3bec6bceeca911d6bf2f61a486a2fd4c48
Bug 5755099
In extracted text mode, we spell check the background and the foreground
edit text. All changes in the background are already propagated to the
foreground, and updates on the foreground may trigger a spell check
of the entire text since we use setText.
Change-Id: Ie44c3d9113258082ac6df5890851d0e21c702ea2
Some GPU architectures could not handle the previous implementation
of our glyph cache. Frequent uploads would cause memory problems in the GPU
and eventually a crash due to these memory issues. The solution is to move to
a system of several, smaller caches instead of one monolythic cache for all
glyphs.
Change-Id: I0fc7a323360940d16d5a33eeb33abfab194c5920
This optimization along with the previous one lets us render an
application like Gmail using only 30% of the number of GL commands
previously required
Change-Id: Ifee63edaf495e04490b5abd5433bb9a07bc327a8
Bug 5753061
https://android-git.corp.google.com/g/#/c/154756/1 revealed an
other bug in SpanSet. The fitered (non empty) spans were added
in their original position instead of being indexed by count.
The nullation on recycle hence left null holes in the array.
Change-Id: If5c1435cee9a2cb88a608aa8e5f4f2f23382154c
We need to work more like before in determining whether the menu
key is needed -- in some cases look back in the window list to
determine this if we don't know the value from the current window.
This requires adding a new private flag indicating whether the
compat menu state is known for a window, which is set by
PhoneWindow as part of its existing process of computing the flag
for its own windows.
Now we can have a new API on WindowState to determine the value
of this flag for a window, which if needed walks back in the window list
to find a window the value is known for (or stops at what the policy
has determined is the top full-screen window, so we stop like we used
to at things like the lock screen or the bottom of an application).
Change-Id: I829de6d629b5af8bcb422cb85249ee4041c7205e
Bug: 5738552
If value has ringer set to VIBRATE_OFF, we need to update it to the
now default, as VIBRATE_OFF is inconsistent with the new UI controls.
Make sure notification vibrate setting follows ringer vibrate setting.
Change-Id: I0f15a3d1ea8502d542e3178f732cc2503104458f
Bug: 4586251
Original CL was for ics-mr1. We decided it should be in master
instead. Original CL
https://android-git.corp.google.com/g/154083
Current ssl cert logic makes callbacks to webkit from the
UI thread. This is not right. Move the callbacks to proper thread.
Change-Id: Ie3de7dbaed7780dbb6cf537ca1d29686d867b784