Commit Graph

539 Commits

Author SHA1 Message Date
Patrick Scott
021b7b443f Add a static method to obtain the mime type from extension.
This method is used by WebKit to obtain the mime type from an extension.

Bug: 2368893
2010-01-13 14:12:43 -05:00
Leon Scroggins
2edd68260f Create a new ImeOption that disables fullscreen in landscape, and use it.
EditorInfo:
Add a flag to tell the InputMethodService to never go into fullscreen
mode.

InputMethodService:
When the new flag is set, onEvaluateFullscreenMode always returns
false.

WebTextView:
Use the new flag, along with IME_FLAG_NO_EXTRACT_UI.  Fixes
http://b/issue?id=2358360
2010-01-12 17:29:25 -05:00
Derek Sollenberger
fef4874afd fixing build break by removing unused imports. 2010-01-11 16:26:07 -05:00
Derek Sollenberger
7c5bf4666c consolidating to only use one surface per plugin. give plugin access to java context.
There is a companion commit in external webkit.
2010-01-11 13:47:54 -05:00
Leon Scroggins
04e0a1018f Bring up IME after receiving a response from webkit.
Fix for http://b/issue?id=2361658

Requires a change to external/webkit
2010-01-11 09:10:20 -05:00
Leon Scroggins
c89b13b962 Use Calendar.add() instead of Calendar.roll()
Calendar.roll() breaks the year at the beginning of the year, so
use add() instead, which changes larger fields.

Also, only use 4 bins, since the last bin's boundary is not relevant.

Lastly, no need to return Calendar in beginningOfDay.

Fixes http://b/issue?id=2361382
2010-01-08 09:18:37 -05:00
Cary Clark
affa5d2c0f remove unused jni interfaces
Also make package interfaces unused outside of WebView.java
private.

companion change in external/webkit
2010-01-07 13:02:42 -05:00
Leon Scroggins
3a5033996e Request <label> info only when accessing a textfield.
Previously, we were storing the label info each time we build the
navigation cache.

Requires a change to external/webkit.
2010-01-07 08:33:34 -05:00
Leon Scroggins
e38fc18981 Show label information as hint text
Fix for http://b/issue?id=2331526

Requires a change to external/webkit.
2010-01-06 10:15:00 -05:00
Nicolas Roard
3886333644 layers support 2010-01-04 19:30:55 +00:00
Grace Kloba
67166b6eae Merge "Cleanup the cache file when we decide not saving it. This logic was lost when we switched back using FLASH instead of RAM for the cache." into eclair-mr2 2010-01-04 09:55:54 -08:00
Leon Scroggins
e26efa321c If the DOM changes textfield focus, make the IME work properly.
Fix for http://b/issue?id=2219166

Requires a change to external/webkit

Remove the old change to update the WebTextView when a key is pressed,
since the IME does not generate key events.  Instead, when the focus
changes, and the IME is serving the WebTextView, immediately clear
the cursor and update the WebTextView, so the user can continue
typing.
2010-01-04 09:43:57 -05:00
Grace Kloba
998c05b3b5 Cleanup the cache file when we decide not saving it.
This logic was lost when we switched back using FLASH
instead of RAM for the cache.

Add back the CACHE_MAX_SIZE to limit the maximum
cacheable file.

Fix http://b/issue?id=2346132
2009-12-27 18:25:21 -08:00
Grace Kloba
4350e1451c Move the full screen's matching embedded view to be
fully visible so that the touch will always work.
2009-12-21 18:05:04 -08:00
Grace Kloba
9a67c82089 Address the multiple resizing during initializing
problem adobe run into.

When a child view is created, we first hide it if
the webview is not ready to draw yet. This will avoid
the multiple resizing notification.
2009-12-20 11:33:58 -08:00
Mike Reed
19f3f0e329 add DragTracker class 2009-12-18 12:25:30 -05:00
Grace Kloba
11438c371e Implement the full screen WebView plugin.
Use a NoTitleBar_Fullscreen dialog to implement the
full screen plugin. This runs in the same thread as
WebView (UI in the Browser case). One catch is that
the SurfaceView provided by the plugin needs to be
opaque if it doesn't want to see through the WebView.

The PluginFullScreenHolder translates the events to
the underline WebView. Special treatment in the touch
case as it needs to translate the coordinates.

WebView can't be panned, or double tap to zoom, or
long press to trigger the context menu while having
a full screen plugin.

Inside webkit, we also give the plugin element focus
when it goes to the full screen so that it takes key
events. While handling key events, we don't let it 
loose focus or scroll out.

Todo:
When a plugin goes to full screen, we should make
sure the embedded plugin is fully visible. Otherwise
when we translate the touch events back, they will be
outside of the visible rect and will be ignored.

This is part 1 of 2-project check in.
2009-12-16 11:39:12 -08:00
Cary Clark
1cb97eed56 check to see if nav cache is up to date on tap
Pass point to click in three steps.
1) See if point corresponds to cached node.
2) If so,send a message to webkit to see if the node is good.
3) Call webkit with point, and good/bad info.

This is a two-part change with external/webkit.

Fixes http://b/2249425
2009-12-15 13:40:43 -05:00
Leon Scroggins
aacced6bc5 Provide localized strings for <input> labels.
Fix for http://b/issue?id=2178786

Provide strings for input types file, submit, and reset, and allow
them to be passed down to native.

Requires a change in external/webkit.
2009-12-15 08:49:59 -05:00
Derek Sollenberger
b6ddc7ae35 Notify native plugin code when the browser discards the customView. 2009-12-14 08:48:42 -05:00
Grace Kloba
70b942d34d Post a Runnable to execute setNewZoomScale when
WebView's onSizeChanged is called. This will ensure
requestLayout of the Child View works.

Fix http://b/issue?id=2323445
2009-12-12 12:35:54 -08:00
Mike Reed
8b30209727 Update the zoom buttons after moving to a new page.
Move set VISIBLE out of updateZoomButtonsEnabled.
And add it to a place it needs it.

Fix http://b/issue?id=2257742
2009-12-10 17:52:10 -08:00
Android (Google) Code Review
c7f7c94034 Merge change Id469ba88 into eclair-mr2
* changes:
  Listen for window orientation events.
2009-12-09 11:30:00 -08:00
Patrick Scott
f06364b8c6 Listen for window orientation events.
These will be sent to webcore as orientation events.
2009-12-09 14:27:24 -05:00
Grace Kloba
5f68d6fafc Enable longpress and doubletap to WebKit as touch
event if it is requested.
2009-12-09 11:13:30 -08:00
Android (Google) Code Review
a50d450863 Merge change I75481cb8 into eclair-mr2
* changes:
  Check that the resolved activity is not in our package.
2009-12-09 09:52:24 -08:00
Patrick Scott
75481cb860 Check that the resolved activity is not in our package.
Ideally, I would like to allow Activities in the same package to intercept mime
types but there is no way to get the current Activity information from a generic
Context object. For now, skip resolved Activities that are in the same package.

Bug: 2314904
2009-12-09 11:09:04 -05:00
Leon Scroggins
47fabbfcbf Pass a message to move the focus when user hits "Next".
Directly move the focus rather than passing a click.

Fixes http://b/issue?id=2292683

Requires a change to external/webkit
2009-12-09 10:19:10 -05:00
Grace Kloba
3f40bd48d2 Remove the code where we suspect webkit draw during
drag. It was added for the better performance of panning
while loading. But it does make sites using touch event
look bad as we don't have the display tree until touch up.

Fix http://b/issue?id=2310295
2009-12-08 13:49:50 -08:00
Leon Scroggins
6be3bf2393 Some fixes for positioning the WebTextView.
Move the change in position/size before the call to bring into view,
so that the properly positioned field will be brought into view.  It
is also now before we check to see if it is the same textfield, so
it happens in both cases.

Also remove some code which checks the selection and then sets it
unnecessarily.  It was originally surrounding some code which called
setRect, which had a side-effect of changing the selection.  That
code was removed (rendering the remaining code useless), and setRect
no longer has the side effect (the side effect was a result of calling
reqestFocus, which it no longer does - further, the change in selection from
requestFocus no longer affects the textfield's text).
2009-12-08 14:15:25 -05:00
Derek Sollenberger
51ef573a83 Switching from activity based full screen plugins to a view system overlay. 2009-12-08 08:12:44 -05:00
Android (Google) Code Review
6761e85d41 Merge change Idff5eb2a into eclair-mr2
* changes:
  Set InputType of WebTextView according to <input> field's type.
2009-12-07 13:39:22 -08:00
Leon Scroggins
aa7b9d7826 Set InputType of WebTextView according to <input> field's type.
Help fix http://b/issue?id=2150538 and http://b/issue?id=1890360

Use the <input type> information to set the InputType, so that
the IME can show the correct options.  Also consolidate setup
of WebTextView into setType().

Requires a change in external/webkit.
2009-12-07 16:36:34 -05:00
Grace Kloba
ddcea3d216 Expose onReceivedSslError() so that the WebView client
can accept the error and continue.

Fix http://b/issue?id=2299152
2009-12-07 13:20:33 -08:00
Grace Kloba
bd5c823e28 Add "res" support for WebView.
http://b/issue?id=2296839
2009-12-07 12:36:05 -08:00
Leon Scroggins
9e3e2d3a69 Show search icon for <input type="search"> fields.
Along with a change to external/webkit, fixes http://b/issue?id=2299650
2009-12-07 10:21:41 -05:00
Patrick Scott
7c24ed6904 Check if another Activity wants to intercept an xml mime type.
WebCore treats */*+xml as content that it can render. This prevents Activities
from intercepting those mime types. Check the same regular expression as
DOMImplementation and then use the PackageManager to look for a matching
Activity.

Requires a change to webcore.

Bug: 2256744
2009-12-04 13:19:52 -05:00
Leon Scroggins
b5c7ef331c When passing the Message for saved form data, pass the node pointer properly.
Partial fix for http://b/issue?id=2232001

We were calling obtainMessage with the node pointer as an argument.  What we
really need to do is set arg1 to the node pointer.  Also, avoid checking for
saved form data for password fields and fields whose names are blank.
2009-12-02 15:06:41 -05:00
Android (Google) Code Review
4eeace3db5 Merge change I097b1e77 into eclair-mr2
* changes:
  Add PageCacheCapacity to the WebSettings.
2009-12-02 11:43:56 -08:00
Leon Scroggins
cfc2915d92 In setDefaultSelection ensure that webkit is notified of the new selection.
Fix for http://b/issue?id=2254732
2009-12-02 10:27:22 -05:00
Romain Guy
f7b4accbda Fix scroll jump in ScrollView.
If a touch event was targeted at a ScrollView child, the content would jump after
the user moved her finger by the required threshold. This is inconsistent with
ListView's behavior.

Fixes #2296622.
2009-12-01 18:58:46 -08:00
Android (Google) Code Review
cf98f4268c Merge change I325e22ca into eclair-mr2
* changes:
  Fix a leak in WebView.
2009-12-01 16:40:07 -08:00
Romain Guy
01d0fbfa68 Fix a leak in WebView.
Fixes #2296601.

WebView and its related APIs are keeping static objects that hold references to
Context instance. This could cause applications to leak their first Activity
and all the associated resources.
2009-12-01 16:37:59 -08:00
Android (Google) Code Review
732a1223b2 Merge change I42d00fbe into eclair-mr2
* changes:
  fix issue with plugin surfaces not updating properly within the view system.
2009-12-01 12:26:54 -08:00
Derek Sollenberger
42d00fbe55 fix issue with plugin surfaces not updating properly within the view system. 2009-12-01 15:19:42 -05:00
Leon Scroggins
ed90811e71 Do not peform a click/move if longpress has been performed in WebTextView. 2009-12-01 11:39:46 -05:00
Derek Sollenberger
51e45ff0d5 Cleanup how a plugin goes full-screen.
The plugin activity now fetches the plugin's existing java class from native code instead of creating a new one.
2009-12-01 08:50:24 -05:00
Derek Sollenberger
cb37e71509 Refactoring plugins to use new java interfaces.
This change adds 3 new interfaces for plugins to the framework. This
change also includes extensive cleanup as we consolidate internal plugin
functions into the pluginManager.  Also using the new interfaces we no
longer need to pass  additional parameters in quite a few methods.
2009-11-30 08:42:43 -05:00
Leon Scroggins
f90b1261a5 When clicking on a WebTextView, always call nativeMotionUp.
We were previously calling nativeTextInputMotionUp, which was
intended to be faster than nativeMotionUp, which does more work.
However, as discussed in http://b/issue?id=2257787 , I think we
should simply call nativeMotionUp, which does everything the old
method did, while also correcting things if necessary.  This fixes
the second problem listed in http://b/issue?id=2266756 , since
nativeMotionUp will recognize that the <select> element should
take the click.

Since I have removed a native method, this requires a change to
external/webkit.
2009-11-25 10:14:50 -05:00
Grace Kloba
097b1e777a Add PageCacheCapacity to the WebSettings.
By default, page cache is disabled.

http://b/issue?id=2284168
2009-11-24 17:53:13 -08:00