Commit Graph

789 Commits

Author SHA1 Message Date
Cary Clark
3eefc126e5 check for webviewcore before reading settings
In setActive(), the WebViewCore instance may
have already been destroyed before the settings
object can be read.

Change-Id: I46b2a57b2d92fc7216b1c984f7044fea1fc2409e
http://b/2570700
2010-04-05 15:25:26 -04:00
Leon Scroggins
f9b1a092b6 Only include WEB_EDIT if there are more textfields.
Fixes http://b/issue?id=2559070

Requires a change to external/webkit.

Change-Id: I411a04d260c781a91d16832704bb5c34e9751bc1
2010-04-05 14:31:37 -04:00
Grace Kloba
327dce9e36 Make sure when WebView modified mScrollX/Y directly,
onScrollChanged() is called so that the View system
can do what it needs to adjust.

As WebView's onScrollChanged will call sendOurVisibleRect(),
we don't need to call it explicitly any more.

Fix http://b/issue?id=2438457
2010-04-02 15:38:55 -07:00
Grace Kloba
61c3a13e5f Merge "Instead of holding an ApplicationContext, JWebCoreJavaBridge will have a reference of the current window's main WebView. It is only non-null if the WebView's window has the focus." into froyo 2010-04-02 09:14:39 -07:00
Grace Kloba
9b95ab17ec Instead of holding an ApplicationContext, JWebCoreJavaBridge
will have a reference of the current window's main
WebView. It is only non-null if the WebView's window
has the focus.

Extract setActive() from onWindowFocusChanged() so
that onAttachedToWindow() can call it directly. The
old way has a mis-matching call to onWindowFocusChanged.

Fix http://b/issue?id=2559152
2010-04-01 17:40:07 -07:00
Derek Sollenberger
11fb614460 Match RFC requirement that the domain portion of a cookie should be case-insensitive.
fixes bug #2549818.

Change-Id: I1372171568828545e78690f1ddc0ddcf25ddd428
2010-04-01 14:53:06 -04:00
Kristian Monsen
70c22a48e6 Merge "Fix for bug 2558156: Encodig is null" into froyo 2010-04-01 09:54:47 -07:00
Kristian Monsen
d08127fff1 Fix for bug 2558156: Encodig is null
This does not actually pass the test since the test has wrong expectations, but it is at least doing the right thing.

Change-Id: I7da29a3f101647bb628805514cf2bdef24864e50
2010-04-01 17:38:07 +01:00
Ben Murdoch
352cf1a45e Merge changes Ic9531e3c,I3f04433b into froyo
* changes:
  Cherry pick from master.
  Cherry pick from master.
2010-04-01 08:42:14 -07:00
Steve Block
0348440e4a Cherry pick from master.
This change forwards to the WebView HTTP authentication credentials that
are supplied to an XHR from JavaScript. This allows the WebView to store these
credentials for use with later requests.

This is a re-working of https://android-git.corp.google.com/g/46430

Bug: 2544330
Change-Id: I3f04433b00233d7b7bf4f7e3471d8d15d8817f93
2010-04-01 16:19:39 +01:00
Grace Kloba
ad7a1d79f7 As we don't support over scroll any more, we need
to pin the (x,y) if we handle the drag after the
plugin choose not to handle the event.

Fix http://b/issue?id=2563143
2010-03-31 23:04:56 -07:00
Grace Kloba
397ffdfcb0 Remove the shadow under url bar.
This was introduced when we remove the over scroll.

Fix http://b/issue?id=2557916
2010-03-30 14:16:43 -07:00
Patrick Scott
0cf6046b8d Fix a simple logic mistake.
If the icon is precomposed or the icon IS null, set the touch icon url. This
ensures there will be a touch icon set if either precomposed or regular is
specified. Precomposed icons take precedence.

Bug: 2546984
Change-Id: Id9291006ecda8659b823ab9629eb98a6f8d45f5e
2010-03-30 14:02:29 -04:00
Adam Powell
9d32d24dbd Remove overscrolling
Change-Id: I7e9db8d8a9b8ef67f0c0c82bf57c9155b7ebabea
2010-03-29 20:46:45 -07:00
Grace Kloba
51b97011b7 cherry-pick 4a4f9886a7 into froyo
Use the content width to calculate the zoom overview
width. We used to use the minimum preferred width
to calculate the overview width as it is what we
use to define the viewport width. But some sites,
like cbsnews, engadget, the content width will be
slightly wider than the viewport width decided by
the min preferred width. The result is we can still
scroll a little bit in the overview mode. This issue
is magnified when we introduce the overscroll feature.

By using content width as zoom overview width, we
will have content fit in the overview mode. But
some sites, like
"http://www.sfjazz.org/concerts/2010/spring/artists/towner.php"
will be layout wider in the overview mode than it
is in the zoom in state. This is a tradeoff.

Fix http://b/issue?id=2551119
2010-03-29 09:32:36 -07:00
Leon Clarke
7c3006f53a http://b/issue?id=2496591
When receiving a message to delete the root layer, delay it until the next
new picture message, so that the layers only disappear when we start displaying
the new page, and not the moment the DOM on the old page is destroyed.
2010-03-29 16:49:16 +01:00
Grace Kloba
378f028000 Remove long_press when WebView lost window focus.
Reset touch mode too.

Fix http://b/issue?id=2542711.

Also move dismissZoomControl() before calling
super.onDetachedFromWindow(). This is a guess to
fix http://b/issue?id=2547574
2010-03-26 15:01:30 -07:00
Grace Kloba
7e8bc24f62 cherry-picked bf4650ca39 to froyo
According to GMail profile, almost half of WebView
init time is spent in creating the zoomControl which
is not used by them. So change to lazy initialize
the ZoomButtonControl which will be used by Browser.

Fix http://b/issue?id=2546481
2010-03-26 11:44:48 -07:00
Patrick Scott
661a19765b Merge "Add .3gpp as the preferred extension for video/3gpp." 2010-03-25 13:27:57 -07:00
Patrick Scott
c9048a683d Add .3gpp as the preferred extension for video/3gpp.
As it appears earlier in the list, .3gpp will be used as the extension for
video/3gpp mime types.

Bug: 2542939
Change-Id: I7d9188b460774af7bc29f4e8f1ebada43bf2ed10
2010-03-25 16:18:05 -04:00
Steve Block
c6a90a59b3 Provides ability to store HTTP authentication credentials supplied to an XHR from JavaScript
This change forwards to the WebViewClient HTTP authentication credentials that
are supplied to an XHR from JavaScript. This allows the client to store these
credentials for use with later requests.

Currently, the browser only stores credentials that have been entered manually
by the user through the authentication dialog.

Bug: 2544330
Change-Id: I913e35d80b7ad41ff75586092408b86ea9f543d8
2010-03-25 18:18:36 +00:00
Grace Kloba
26f1faa122 Turn on plugin signature checking.
Fix http://b/issue?id=2465450
2010-03-25 10:25:59 -07:00
Patrick Scott
11f5738424 Use ViewRoot.addConfigCallback instead of a BroadcastReceiver.
Store a list of Handlers in a global ComponentCallbacks instance. Use
WeakReference to avoid leaking BrowserFrame objects.

Bug: 2542935
Change-Id: I67b102288f47f9fa6e855ba6558f2b1d611e8427
2010-03-25 11:51:37 -04:00
Grace Kloba
9c4750a676 Draw a hairline border in the overscroll mode.
Fix http://b/issue?id=2542449
2010-03-25 08:32:22 -07:00
Grace Kloba
1cd1c8e8be There are two computeHorizontalScrollRange() got
missed in the last conversion.

Fix http://b/issue?id=2542555
2010-03-24 18:05:37 -07:00
Patrick Scott
dbde425e21 Use the Display orientation rather than the accelerometer.
Register to receive configuration changes and query the Display rotation as that
will reflect both device orientation and an open keyboard.

Bug: 2219138
Change-Id: Ibd6119ae0c7d473e1a9ede3af24bb4b584c9db71
2010-03-24 16:03:56 -04:00
Steve Block
ea08c51354 Fixes XHR requests to use the username and password supplied from JavaScript
Currently, the browser does not use the credentials supplied from JavaScript.
If a request returns a 401 Unauthorized, the browser always prompts the user.
This violates http://www.w3.org/TR/XMLHttpRequest/#the-send-method

Bug: 2533522
Change-Id: I8e72c1a0be187d193c4ad6b2ca8a624c7ae06fa1
2010-03-24 18:22:32 +00:00
Steve Block
c76bfa5bb5 Fixes synchronous XHR requests which require authentication to complete synchronously
Bug: 2540515
Change-Id: I58eebdf2db9388f66c75d86dc26b8055f513b038
2010-03-24 17:49:42 +00:00
Leon Scroggins
1bb1a911c3 If failUrl(now historyUrl) is null, use "about:blank" instead of "".
This prevents a crash that is caused by calling
WebView.loadDataWithBaseUrl with a null failUrl (which I have renamed
to historyUrl).  Also update the docs to be more accurate.

Fixes the general case of bug 2522457

Change-Id: I832351ce1e0016b00e924a2f9b0097ae15fba34a
2010-03-24 10:25:40 -04:00
Leon Clarke
7f49b9e474 Merge "Fix for when flash loads cached crossdomain.xml files. Cache the x-permitted-cross-domain-policies header. http://b/issue?id=2519669" 2010-03-24 05:09:53 -07:00
Adam Powell
2cd5c59b5a Make WebView scroll bars compress during overscroll.
Change-Id: Ia0caaf67088134efa78b5a0c87fea7a9be93f467
2010-03-23 16:34:34 -07:00
Patrick Scott
300f2e95a4 Add on-demand setting for plugins.
Deprecate the old apis for enabling plugins in favor of the multi-state plugin
flag. Add the assets for WebView to display the plugin placeholder for on-demand
plugins.

Bug: 2411524
Change-Id: I5a35cc6d0afced1489f54d4dcb8bb92d36de52d8
2010-03-23 16:35:37 -04:00
Derek Sollenberger
1fa70928d3 fixing problem with allocating too much memory to a surface by fixing
the size of the surface when it exceeds a threshold and resizing the
surface when it falls beneath the threshold.

This change also causes the surface to fix its size while it is
being zoomed in order to prevent the surface from getting multiple
surfaceChangedEvents as the result of a zoom.  This also allows us
to have a smooth zoom animation for the surface.

Change-Id: I30e208f98d3a32660032bf1df9de77d0a813d756
2010-03-23 15:34:33 -04:00
Leon Clarke
60708a7512 Fix for when flash loads cached crossdomain.xml files.
Cache the x-permitted-cross-domain-policies header.
http://b/issue?id=2519669
2010-03-23 18:36:58 +00:00
Mike Reed
b64f6f8953 only send new visiblerect and size on onscrollchanged if we're not in overscroll mode
Change-Id: Ifa290121db8f0a3612f40c40bab4f92494ce93df
2010-03-23 11:43:02 -04:00
Shimeng (Simon) Wang
4d8ef42003 Check mWebViewCore to prevent potential NPE.
Bug:2532493
Change-Id: I917c57dced8638f36252638bb9814e26cdbc2768
2010-03-22 17:06:17 -07:00
Ben Murdoch
5b494c1ca4 Add an API on the Java side to allow WebKit to pause the current load. This is used when the plugin is streaming data but it's
buffer is full. In that case, WebCore instructs the laoder to pause loading to give the plugin a chance to clear it's buffer and
continue.

Requires an external/webkit change.

Change-Id: Iec96a6325d92e979cbdc53289c2a20cad940ded2
2010-03-22 20:50:16 +00:00
Leon Scroggins
0fc140431d Close Cursors in finally blocks.
Fix for http://b/issue?id=2533750

Change-Id: I3ebcc6147e4035ce1c4bf6b76a359ce14196e357
2010-03-22 16:33:07 -04:00
Cary Clark
ac96fa575f use the stream instead of the cursor data to return its size
Most content providers set up the data size in the cursor that
provides the file name, but sound recorder does not. Use the
stream size instead, which will work with all sources and
probably is no slower.

fixes http://b/2529352 http://b/2524574

Change-Id: I32d101d07ca1d0fa2ff17c3c68393356902096d3
2010-03-22 11:12:46 -04:00
Steve Block
547b83328e Merge "Implements layoutTestController.setAppCacheMaximumSize" 2010-03-22 03:44:09 -07:00
Grace Kloba
cad9ab60ce In some case, like in Email, the WebView can be
detached from Window long after it is destroyed.
As we freed the native side by setting mWebViewCore
to null, we can't access settings any more. In this
case, just hide both styles of zoom control.

Fix http://b/issue?id=2532401
2010-03-21 14:05:14 -07:00
Steve Block
427efcca19 Implements layoutTestController.setAppCacheMaximumSize
Change-Id: Ib64123738bc384213ef80e2e60e4a0d9407c09d8
2010-03-20 11:03:53 +00:00
Grace Kloba
7865fa9724 As http header can't be empty, check length before
setting lastModified and etag to the cacheResult.

Fix http://b/issue?id=2531047
2010-03-19 19:48:28 -07:00
Grace Kloba
ee8500eeb0 Don't overscroll horizontally if the content just
fit in the WebView.

Fix http://b/issue?id=2530843
2010-03-19 19:40:17 -07:00
Grace Kloba
21817f6e29 Explicitly dismiss the zoom control if
1. start double tap
 2. start pinch
 3. start a popup window
 4. about to detach from window
 5. WebView size change which happens when IME is up
    or rotation changed.

Partial fix http://b/issue?id=2530401. Dismiss the
zoom control of the main window when bringing up
the sub window
2010-03-19 19:36:35 -07:00
Patrick Scott
1bb63afca1 Merge "Compare the cookie names to ensure a consistent ordering." 2010-03-19 17:59:39 -07:00
Brian Carlstrom
dba8cb7637 b/2511635 Browser displays incorrect SSL cert information
Two more cases of "View certificate" problems like b/2511635

One problem is that if there are multiple resources downloaded for a
page. In that case the mCertificate shown ends up being from the last
loaded resource instead of the main resource of the page. The solution
is to only set the certificate if the LoadListener is the
mIsMainResourceLoader as well as the mIsMainPageLoader.

A larger problem was the fact that the EventHandler.certificate
interface method (in this case the LoadListener.certificate
implementation) once per https connection instead of once per request
as was documented. That meant if an https connection was reused (which
happens frequently on login pages such as
https://www.google.com/accounts which use the POST -> redirect -> GET
idiom to avoid POST data page refresh warnings) then later pages never
were associated with an SslCertificate.

The solution was to change EventHandler.certificate to be called once
per request, specifcally before the request. This means we no longer
call the certificate method in the handleSslErrorRequest case, which
is okay because it includes the SslCertificate within the SslError and
that is what the BrowserActivity expects.

Change-Id: Icbd9bd98c89db82762d1d06de85e1cde2470300d
2010-03-19 17:09:01 -07:00
Grace Kloba
f4418b0113 Change api for webview overscroll background. 2010-03-19 16:18:25 -07:00
Mike Reed
e5e63f4921 remove special-case logic to allow the titlebar to always scroll off the screen. This means that we
now won't force pages to resize due to scrolling.

fixes http://b/issue?id=2512549

Change-Id: Icd91d032ccfc78db6011f293b33543ff2f27f3cf
2010-03-19 15:54:20 -04:00
Patrick Scott
06312cae6b Compare the cookie names to ensure a consistent ordering.
Comparing the hash code provided a consistent order but it was not a logical,
testable order as the hash code was not related to lexicographic ordering.

Remove a spurious '=' from a comment.

Bug: 2527671
Change-Id: Ia2248cb8acbc4d5759a624eec13da3837f7406b8
2010-03-19 15:40:05 -04:00