Previously we relied on Double.parseDouble() to decode tokens. Since
that method is expensive, we deferred calling it unless absolutely
necessary.
Now we decode the literal type immediately. For efficiency we decode
the token right out of the char buffer. This makes things more
complicated but it saves many calls to charAt().
With this change overall performance is 7% faster for JSON documents
cited in the bug.
benchmark run ms linear runtime %
GsonParseFull no switch, no int parse 309 ============================ 93%
GsonParseFull baseline 330 ============================== 100%
http://b/3201883
Change-Id: I436b6769956b1357a17c807a327d3a234691c73f
GL renderer was not initializing scissor correctly for translucent
surfaces, resulting in invisible window backgrounds in some cases
like fading popup windows
Change-Id: I87a964986e1ba2c4f59708c8892c5fa71903e6fc
V8 can be smarter about the memory it uses and the frequency
of garbage collection but we need to inform it of the values
to use. As this varies device to device look it up and store
it on the WebViewCore to be read by native code over JNI.
See also https://android-git.corp.google.com/g/#change,78691
Bug: 3075565
Change-Id: Ib52f4df775b80b386fc98f1d71b5687f01c12b2e
extract mode IME window
Make the SelectionModifierCursorController track its show/hide state
more accurately in the presence of an extract mode IME.
Lazily initialize CursorControllers so that we don't end up creating
them for various TextViews where they are not needed.
Change-Id: Ib76a95d9e7669016cf11b8b0add8843b438068ea
Refactored ViewRoot, NativeActivity and related classes to tell the
dispatcher whether an input event was actually handled by the application.
This will be used to move more of the global default key processing
into the system server instead of the application.
Change-Id: If06b98b6f45c543e5ac5b1eae2b3baf9371fba28
StrictMode now replaces the default CloseGuard.Reporter with one that
calls onVmPolicyViolation, which is a renamed version of
onSqliteObjectLeaked.
Change-Id: Iea980662e2ee91939960c83b8768a8172379617a
Addresses these bugs:
3061847 - With no headers, PreferenceActivity crashes
2888426 - minor typo in DevicePolicyManagerService.ActiveAdmin.writeToXml()
3159155 - IllegalStateException:"Can not perform this action after
onSaveInstanceState" while dismissing a DialogFragment
3155995 - PopupWindow.showAtLocation does not respect LayoutParams
Also tweak the new fragment APIs to use abstract classes instead of
interfaces as base classes.
Change-Id: I9c0b4337fe0e304b737b5f7c2762762372bb3020
Who knew there were so many Loopers in the system server?
This adds dropbox logging for the activity manager thread, policy
thread, and window manager thread.
The goal's to catch more stuttering.
Change-Id: I999a6ff4a955f0ef549b12a38796b843ade5fe66
New up and initialise the data structure for tracking autofillable
form fields properly. We should not wait for the first autofill
message from WebCore as we have some special state values we need
to set.
Change-Id: Ic30b9ac69436f784d65e50dcabe6af1ef3326ff4