We need to pass them to WebViewCore as they are per process base. If we drop
them, the counter in the JWebCoreJavaBridge can be out of order.
Part 2 of fixing http://b/issue?id=2087410
* changes:
When we get 304 and switch to cacheLoader, need to set mFromCache to be true. So that the cache loading will not create a new mCacheResult which overwrites the old cache data.
Use the fact that the scroller keeps track of the current velocity
to accelerate subsequent flings. The current velocity is added to
the new velocity if the flings are in the same general direction
and if the fling animation hasn't been aborted.
This makes it easier to move to the top or bottom of very large
pages (either in overview mode or reading mode) by taking
consecutive flings as a cue from the user that they want to
page faster. The user can stop the fling with any action as
before.
fixes http://b/issue?id=2066090
This change adds the EventHandler error codes to WebViewClient for the public
api. Previously, the api was ambiguous about the value of the errorCode
parameter and falsely documented that the values are HTTP status codes.
(companion change in external/webkit)
Add a boolean parameter to WebViewCore.java nativeSizeSize().
If set, only layout if the width has also changed.
If clear, layout if the height alone has changed.
Layout is clear when called from zoom setup, and set otherwise.
Remove the code that hides the title bar when the page finishes loading.
When the user double taps, if it did not result in changing the viewing
mode (i.e. on a mobile site), send a message to the client so we can
toggle the title bar's visibility. Required for a change to
packages/apps/Browser
Change-Id: I0040fd183ce5673a4069e943f38eb31599c0ca7d
The onSizeChange code is called when the device is rotated and
when the title bar is hidden. In the latter case, it is in response
to the zooming transition from overview mode to reading mode, and
the zoom center should not be recomputed.
http://b/issue?id=2060720
Use the in-memory ssl preference table before posting a message to the WebCore
thread. Since the WebCore thread is blocked waiting for the ssl resource, we
cannot query the user for their preference. If the table does not contain the
user's decision, bail on the request to avoid a deadlock.
Also mark a few of the ssl handler's method's as synchronized. This was reported
by findbugs.
* changes:
The new webkit won't keep RAM cache if http header has "no-store". So remove it from StreamLoader. And fix the code where we only want to cache network result.
http://b/issue?id=2053685. This is a tricky one. When Browser is restarted,
we may get first layout even before viewport tag is parsed. This is rare,
but it happens to Google Reader site. So we need to setup the viewport explicitly
if it happens after first layout. There is a pairing webkit change.
http://b/issue?id=2054131. When Google talk is loaded, it goes through an auth
redirect site which means first layout is called with standardLoad as false.
In this case, even the final site uses viewport tag to get mobile experience,
the intermediate one doesn't. To make sure most of the mobile sites, who
define their viewport width as device width, work correctly, we always update
the mRestoreState when we set viewport.
http://b/issue?id=2054121. When Browser is first started or restarted, the
mCurrentViewWidth is 0 as we don't know the WebView's width yet. As we can't
send VIEW_SIZE_CHANGED message directly, we reset WebView's mLastWidthSent
so that VIEW_SIZE_CHANGED will be sent from WebView when it's width is available.
Decode the url before passing down to the local loaders since they do not decode
the url themselves. This was creating a crash on youtube.com since the data url
was percent-encoded and failing to parse from base64.
Requires a corresponding change to external/webkit. We were previously
letting WebTextView handle clicks, determine the change in selection,
and pass that down to webkit. This sometimes resulted in a different
placement of the caret if the WebTextView and the webkit-rendered
textfield did not line up exactly. Now, we pass the click directly
to webkit, which determines the new selection and passes that info
back to the WebTextView. This also has the benefit of letting
the WebTextView reflect changes in the selection that originated from
webkit. Also remove some unused parameters.
* changes:
Improve Browser performance by 1-2%. To address domain sanity bug, http://b/issue?id=1022797, we decoded/encoded the url for each request. As the url can be long, getBytes() and String.init are taking 1.5% in nytimes.com and 2.4% in cnn.com. By doing a simple URL encoding test, we can shave 1-2 secs thread time during loading.