Commit Graph

734 Commits

Author SHA1 Message Date
Leon Scroggins
b415779e3b Pass selection data with the message to open the keyboard.
Fix for http://b/issue?id=2431351

Requires a change to external/webkit.

Change-Id: I501c3b1a9ae602458b830d34f779ccedf51dba9b
2010-03-18 12:51:08 -04:00
Cary Clark
e84a0db030 simplify utility to hit-test focused plugin
After about 4 taps, this starts to return that the tap was
in the plugin. Before that, the plugin doesn't have focus.
Derek may want to verify that everything is working as it
should -- maybe it just takes that long for webkit to take
focus.

companion fix in external/webkit

Change-Id: I80ffba6c55876b0af9c305c539a10e8e8ed7cb3c
http://b/2521087
2010-03-18 08:46:41 -04:00
Adam Powell
8a836a8b98 Eliminate haptic feedback when hitting an overscroll barrier due to a fling.
Change-Id: I434ec3edd95a19677ad9dbd1ac5ca3f3f5d091cb
2010-03-17 20:33:07 -07:00
Leon Scroggins
69a63b0c52 Allow the shift key to be passed to plugin.
Fix for http://b/issue?id=2519667

Do not return so that we can fall through and pass the shift up
to the page.

Change-Id: Ib3c07f2d39e772f88dd6eee6390034e5a3e3e026
2010-03-17 09:57:19 -04:00
Steve Block
247c065aec Merge "Fix loading from the cache for synchronous requests" 2010-03-16 15:42:14 -07:00
Steve Block
0b43747206 Fix loading from the cache for synchronous requests
This fixes crashes in several XHR layout tests.

Bug: 2218794
Change-Id: Iebe3a2d19f1fa43b8d9c9d7763e818f7195b8ceb
2010-03-16 22:31:52 +00:00
Brian Carlstrom
4ab72cb7e7 b/2511635 Browser displays incorrect SSL cert information
WebView's mCertificate member was not cleared when going to new
pages. Rather than clearing mCertificate as was done in previously in
WebView.goBackOrForward, we now clear when CallbackProxy receives a
PAGE_STARTED message.

This problem was highlighted whenever we went to a https page that was
in the cache, since the cache does not store certificate information,
so "More > Page Info > View Certifcate" was showing the certificate of
the last non-cached page because it had not been cleared. See also
b/2516638 "SslCertificate information not cached by CacheManager"

Change-Id: I40284f22ceb7150a6b20ecc2741f6153ed9a3276
2010-03-16 15:14:22 -07:00
Grace Kloba
1e65d9e561 Use float instead of cast to int when calculating
the new zoom center. This should avoid the rounding
difference which caused the video in nytimes.com
not fully fit in the current view.

Fix http://b/issue?id=2512510
2010-03-16 14:21:21 -07:00
Derek Sollenberger
d222a16286 Plugin surfaces will be limited to 270% of the devices screen size.
Change-Id: I7e5ff1f5b8919b9e2e70a703009f9544f457a0e1
2010-03-16 16:52:20 -04:00
Derek Sollenberger
41df3f7e15 Restrict plugins to a fixed size surface after exceeding a pixel threshold.
fixes bug: http://b/issue?id=2428737

Change-Id: I8d8f2c591ac8539a345e0167b05bec8539f34535
2010-03-16 13:47:04 -04:00
Leon Clarke
c0b778e10f http://b/issue?id=2501101
Create a concept of blocking messages on destruction similar to that in
WebViewCore.java. This is to prevent what I think is a race condition
caused by an orientation event occuring just before the frame is destroyed,
resulting in the orientation listener being called back just before it
is disabled, but posting its message after the messages have been removed.
This results in the orientation event being delivered to a NULL native frame.
2010-03-16 15:28:39 +00:00
Cary Clark
fc2ece4ab6 update comment on WebView loadData
Change-Id: I20fbfabde7eafb8017036a7360ed83fa457cc42c
http://2400117
2010-03-15 16:32:41 -04:00
Derek Sollenberger
c28ff44b1e Allow plugin's surface to handle touch when in full-screen.
There is a matching commit in external/webkit

Change-Id: I88d8c533eb821c564c453dfd7293616669b3bf37
2010-03-15 08:36:19 -04:00
Grace Kloba
e8300a1dc5 Expose smart-zoom, or centerFitRect to native.
Clean up the old centerPluginOnScreen so it can be
used to center fit any rectangle on the screen.

Fix http://b/issue?id=2510670
2010-03-12 13:32:55 -08:00
Grace Kloba
2563ffb84f If we can't over scroll horizontally, set vx to 0 in
doFling. Otherwise if vx is greater than vy, as we
pin x later in onOverscrolled(), the fling doesn't
work as expected.

Fix http://b/issue?id=2507550
2010-03-12 09:37:46 -08:00
Cary Clark
a91e972752 missing checks for native class before calling native code
Change-Id: I1dc77c10e7aff68f8327708291fcff5551722703
http://b/2509668
2010-03-12 12:14:07 -05:00
Grace Kloba
e47ac47d6c If the Picture is not ready, just draw the background
and return. This should help to avoid the flash in gm.

Fix http://b/issue?id=2494990
2010-03-12 08:55:26 -08:00
Patrick Scott
08e1f21dd4 Merge "Do not send the not-modified response when validating the cache." 2010-03-11 11:47:22 -08:00
Grace Kloba
c6f95fe523 Implement smart-zoom per Adobe request.
When double tap on plugin object, we toggle between
centering plugin object and overview mode.

Fix http://b/issue?id=2501726
2010-03-11 11:40:46 -08:00
Patrick Scott
5ac85ccabb Do not send the not-modified response when validating the cache.
Bug: 2450517
Change-Id: Ibdff4c4b573bb63ac5de94ec7277241bb0242203
2010-03-11 12:41:20 -05:00
Cary Clark
2809631e59 use the correct LayoutParams to fix going to fullscreen view
Change-Id: Id4d1841d720011c6fda6c43fe7ffb55762cef259
http://2467842
2010-03-11 08:25:33 -05:00
Mike Reed
180403ac10 pin our visible content bounds to the bounds of the doc itself, to account for overscroll
Change-Id: I3c8165338e31da45a70b3f65ba8389a7a50d6e07
http://b/issue?id=2496502
2010-03-10 13:11:48 -05:00
Leon Scroggins
62459c0fa5 If the new text and old text are "", return from onTextChanged.
Fixes http://b/issue?id=2496329

Change-Id: I239f143c0e539710342e46783157344a4d7ccc08
2010-03-10 09:08:47 -05:00
Kristian Monsen
a401d559ec Don't cut the url on a redirect
This is a fix for issue 2485033. It is not a final fix, but just starting with this so it can be discussed on code review. The line in question
was added to fix issue 1690652.

Updated fix. Stores the url before it is cut during a redirect. Forwards this to the reponse instead of the cut url.

Update 2: Using the old originalUrl

Change-Id: I286084451aa45e51d5d07811f9d119cf83849592
2010-03-10 12:40:04 +00:00
Grace Kloba
2d17e1d212 Add an api to set WebView over scroll background.
If the WebView doesn't support zoom, or WebView does
not use wide viewport and horizontal is just fit,
don't do over scroll.

Fix http://b/issue?id=2498403
Fix http://b/issue?id=2497901
2010-03-09 13:14:04 -08:00
Leon Scroggins
7a37587664 Set mShiftIsPressed properly when the focus is a plugin.
Fix for http://b/issue?id=2484986

Change-Id: I3140c3c3a0bd44af85939aceb0bbd07c0861cde4
2010-03-09 14:52:40 -05:00
Grace Kloba
c2242f2b5f Rewrite the WebView touch to support Flash.
When a page is loaded, Flash won't be the touch target.
This is ensured by another CL in external/webkit. When
user taps or uses nav key to make the Flash to be the
document focused node, it will take all the touch
events without time out. If Flash didn't call prevent
default, these touch events will be reprocessed by
the Browser. For double tap and long press, Browser
needs to detect and generate them for Flash.

While Flash is in full screen mode, it will take all
the touch events. If Flash doesn't consume them, they
won't be reprocessed by the Browser. Browser does need
to detect and generate the special events like double
tap and long press for full screen Flash.

Here are changes made for JavaScript touch events.

1. preventDefault on touchMove works now. If the author
calls preventDefault on touchStart, UI will not handle
this touch sequence. If the author didn't call preventDefault
on touchStart, it can call preventDefault on the first
touchMove to prevent UI from panning the page. We
currently do not support alternating preventDefault
during touchMove.

2. The first touchMove is only sent when the movement
is more than the system slop. There was a bug introduced by
https://android-git.corp.google.com/g/#change,42848
where the touch events are not sent to WebCore if 
preventDefault is called. This is fixed now.

3. Move sending TOUCH_EVENT to WebCore into each state.
So if user stops a fling and continue drag, it won't
send the touch_down as we are in drag mode.

4. Remove event time as Adobe doesn't need it any more

Fix http://b/issue?id=2438503
Fix http://b/issue?id=2478701
Fix http://b/issue?id=2390587
2010-03-09 11:33:51 -08:00
Andrei Popescu
0409857f8f Make sure access to WebView::mWebViewCore is synchronized.
Fix bug: 2498784
2010-03-09 18:04:35 +00:00
Leon Scroggins
3dc02fecbe For flash trackball, send several downs followed by a single up.
Change-Id: I2ca892bc409372ab1389f2da8254f13b2d84351c
2010-03-09 11:27:34 -05:00
Cary Clark
31b8367570 requestChildRectangleOnScreen takes layers into account
Call native LayerAndroid::subtractLayers so
the layers can be removed from the visible portion of the screen
when computing how much to scroll.

companion fix in external/webkit

Change-Id: Ib441b826ab5b2baaba20f41f392848a28a9e09ee
http://b/2453841
2010-03-09 10:00:30 -05:00
Leon Scroggins
198e40dcbe Merge "Pass keys to plugin while shift is held down." 2010-03-08 10:42:42 -08:00
Patrick Scott
2807dbd594 If both cookies have null values, use the name difference.
Change-Id: Idee9763a14dd559f136ee8b1eea9abaf265d15a1
2010-03-08 12:12:13 -05:00
Leon Scroggins
b127c8ff0e Pass keys to plugin while shift is held down.
Fix for http://b/issue?id=2484986

Change-Id: Ie252527957958d977cec044a1d383c229d3a3268
2010-03-08 12:04:48 -05:00
Patrick Scott
8da530c9b8 Merge "Cookies like "a=b" were broken due to my previous change." 2010-03-08 08:22:59 -08:00
Steve Block
271f7ae4e3 Merge "For synchronous loads, load file URLs in the WebCore thread, rather than in the new WebViewWorker thread" 2010-03-08 08:16:41 -08:00
Cary Clark
ad7dd48361 scroll into view considers layers
Remove view metrics data, which is a duplicate of
an existing interface (calcOurContentVisibleRect)

companion fix in external/webkit

http://b/2485168
2010-03-08 09:20:16 -05:00
Patrick Scott
d2b49d931a Cookies like "a=b" were broken due to my previous change.
Update the cookie parser to correctly detect "a=b" cookies and add comments.
Also change the comparator to compare null values before the name so that all
cookies with null values come after cookies with values.

Also added a cts test in cts project.

Bug: 2487245
2010-03-08 08:04:21 -05:00
Raphael
30df237f19 ADT: Mark WebView as a Widget. Eclipse/ADT will display it in the GUI creator.
SDK Bug 1588698

Change-Id: I47321a0e21a0761d20ed5e61a1a1db1024a141c5
2010-03-06 10:09:54 -08:00
Grace Kloba
d7625dd281 Adding over scroll to webview. We will always apply
over scroll vertically. In horizontal direction, if
the page can't be zoomed and the current content just
fit, we will not do over scroll.

Per UI request, only draw the shadow when title bar
is not visible.
2010-03-05 11:51:02 -08:00
Steve Block
76619af64c For synchronous loads, load file URLs in the WebCore thread, rather than in the new WebViewWorker thread
This fixes the layout test failure in fast/xmlhttprequest/xmlhttprequest-html-response-encoding.html

Bug: 2218794
Change-Id: If86c5dbb72b21400bd0fb6981de1a6fdf9b40fe7
2010-03-05 18:39:30 +00:00
Ben Murdoch
9a823c4d81 Merge "It is possible that we may get a call from WebCore that the first layout has completed before we've successfully syncd the webview dimensions from Java to native and in this case, we end up syncing a height of 0 to WebKit. This causes hit detection to fail, as WebKit thinks we have a 0-height visible area. This patch fixes this scenario by syncing the height of the webview back to WebKit in the case that the first layout comes back before we've sent our dimensions." 2010-03-05 09:42:06 -08:00
Ben Murdoch
d1bee05d64 It is possible that we may get a call from WebCore that the first layout has
completed before we've successfully syncd the webview dimensions from Java to
native and in this case, we end up syncing a height of 0 to WebKit. This causes
hit detection to fail, as WebKit thinks we have a 0-height visible area. This
patch fixes this scenario by syncing the height of the webview back to WebKit
in the case that the first layout comes back before we've sent our dimensions.

Fix for b/2449863

Change-Id: Id72c37b17411f3409edc7104d83ca5ffd17ab09b
2010-03-05 17:25:44 +00:00
Shimeng (Simon) Wang
1c02c6a7d8 Squashed commit of the following:
commit 35ade1c72b5fe34c177712108ccbc070eab11a87
Author: Shimeng (Simon) Wang <swang@google.com>
Date:   Thu Mar 4 16:29:01 2010 -0800

    Alternative way to fix the history picture drawing issue.

    Disable zoom part for history picture mode.

    Bug: 2462039

commit 1a27acaa36c60546e5e6b2e1caf4ce5488dad14b
Author: Shimeng (Simon) Wang <swang@google.com>
Date:   Thu Mar 4 16:06:41 2010 -0800

    Use the screen width to derive the desired scale.

    This is to fix the history picture draw issue.  Since the mActualScale
    will be changed in some other places.

    Bug: 2462039
2010-03-05 09:22:41 -08:00
Mike Reed
189e7355e6 return false if any exception is thrown from savePicture 2010-03-05 10:12:29 -05:00
Cary Clark
966641a8da add comment for public function
http://b/242036
2010-03-04 08:58:33 -05:00
Leon Scroggins
75a36c2bc7 Remove an overzealous call to setDefaultSelection.
This was added to try and fix an earlier bug,
http://b/issue?id=2431351  However, it results in all
touches setting to the default selection, which
is incorrect.

Fix for http://b/issue?id=2486721
2010-03-04 08:44:56 -05:00
Grace Kloba
f6bd0ba630 Don't send ACTION_MOVE to webkit until the distance
is confirmed to be a drag.

Always send touch events to webkit if a subview, plugin,
is in full screen mode.

Fix http://b/issue?id=2478701
2010-03-03 10:28:55 -08:00
Leon Scroggins
c833119c14 Merge "Remove the TAB key from <textarea>s." 2010-03-03 09:21:14 -08:00
Leon Scroggins
7af1b837ff Remove the TAB key from <textarea>s.
Do not use flag for web edit, so that the IME does not have the
TAB key.

Fix for http://b/issue?id=2484101
2010-03-03 12:09:45 -05:00
Cary Clark
3403eb3156 refactor find state and scrolling
Separate out state when find is up and is empty.
Request a scroll when setting a match, rather than when drawing.
Don't draw if there's no match.

Companion fix in external/webkit and packages/apps/Browser

http://b/2370069
2010-03-03 11:12:33 -05:00