Commit Graph

441 Commits

Author SHA1 Message Date
Melanie Clements
f19670ac86 Fix for bug 2467152 files with spaces fail to open.
from http://code.google.com/p/android/issues/detail?id=4638

If you try to use a WebView to open an image (of any type)
that is stored in your project's assets/ directory the image
will be written to the screen as text (instead of drawn as
an image) if the filename contains a space.

The problem stems from MimeTypeMap, which determines the
file type from the url.  Spaces, represented as '%20'
are not included in the list of acceptable characters for
an image file name, causing the image to be treated as plain
text.  I am remedying this by adding '%' to the list.

Change-Id: I29e3da57f3cdaa63ed60b1e6977ba62a0dd108e5
2010-05-03 10:22:41 -04:00
Bart Sears
a1ab976671 Merge "DO NOT MERGE" into eclair 2010-02-10 09:35:37 -08:00
Grace Kloba
b3316d35ff DO NOT MERGE
cherry-pick https://android-git.corp.google.com/g/#change,29843 from eclair-mr2
This will cherry-pick SHA1: 58def690a8

This will workaround the following three bugs which are occuring because
the webview DB is getting corrupted:

http://b/issue?id=2338178
http://b/issue?id=2278210
http://b/issue?id=2405650

Here are the comments from the eclair-mr2 CL:

If openOrCreateDatabase() throws an exception, delete
the old db and re-do it. If it still fails, something
bad happens, like the directory may have the different
permission. Let it throw as WebView needs the db.

Fix http://b/issue?id=2179339
2010-02-10 09:24:31 -08:00
Grace Kloba
614f8450a7 DO NOT MERGE
cherry-pick https://android-git.corp.google.com/g/#change,39258 from master

Now mSupportMultiTouch is depending on WebSettings,
it can't be static any more.

Fix http://b/issue?id=2413364
2010-02-09 18:20:28 -08:00
Grace Kloba
769ed21c33 Fix http://b/issue?id=2400423.
When the same page is loaded, updateRestoreState
will be false when we finish the first layout. As
we are still in the same page, we don't want to
update the current zoom/scroll. But in some cases,
like a site switch from mobile to full site and
keeps the same url, we do want to update the zoom
range as the viewport spec changed. Otherwise, user
can't zoom in the full site as the WebView thought
it is still a mobile non-scalable page.
2010-01-27 12:24:38 -08:00
Mike Reed
f904be1659 Merge "disable high-quality filtering during scrolling, until I can cached the scaled images." into eclair 2010-01-25 06:19:17 -08:00
Mike Reed
729d8369b5 disable high-quality filtering during scrolling, until I can cached the scaled images. 2010-01-25 08:30:35 -05:00
Grace Kloba
5ff24d5da4 DO NOT MERGE
This reverts commit 52cb3cbd6f.
2010-01-22 12:45:54 -08:00
Grace Kloba
52cb3cbd6f DO NOT MERGE
Just scale the canvas instead of changing the real
scale factor during pinch.

Added over limit zoom feedback for pinch in the WebView.

Fix http://b/issue?id=2383539
2010-01-20 21:58:27 -08:00
Grace Kloba
8681df902e DO NOT MERGE
Adopt the sloppy detection in the ScaleGestureDetector.
Try to fix the fat thumb problem.

Fix http://b/issue?id=2385061
2010-01-20 19:15:44 -08:00
Mike Reed
12bcbdc681 Do not merge
port stretchy from master
2010-01-20 16:27:36 -05:00
Grace Kloba
f167c4bfca DO NOT MERGE
If pinched to overview mode, double tap should bring
it back to default instead of just setting the current
mode as overview mode.
2010-01-18 15:30:59 -08:00
Grace Kloba
17b14bd36a DO NOT MERGE
Make sure the mZoomOverviewWidth is as least as
wide as the current (adjusted) view width.

This should fix the weird state Bart got in with
m.wikipedia.org.
2010-01-18 15:29:46 -08:00
Grace Kloba
5a0bf1f03e DO NOT MERGE
Remove testing (enable plugin) code.

No reflow when zoom in, auto reflow when zoom out.

Fix http://b/issue?id=2375955
2010-01-18 15:29:46 -08:00
Grace Kloba
19c9df3c1d DO NOT MERGE
Bring back +/- when panning. Dismiss it when pinching.
2010-01-15 16:35:40 -08:00
Grace Kloba
4d69ac6695 Merge "DO NOT MERGE" into eclair 2010-01-14 19:29:09 -08:00
Grace Kloba
fd787ba79d DO NOT MERGE
When adjust scale for zoom overview, keep the state
of whether textWrapScale is matching mActualScale.
So if user pinch during loading, we won't reflow.

Fix http://b/issue?id=2370552
2010-01-14 18:30:45 -08:00
Grace Kloba
76336f2ccf DO NOT MERGE
If mViewportWidth is 0, it means screen width. If
textwrapWidth is not same as view width, which means
that we are in the state triggered by pinch, always
send textwrapWidth as width to WebKit to keep the
same layout.

Fix http://b/issue?id=2375232
2010-01-14 18:18:41 -08:00
Grace Kloba
5f01d7e268 DO NOT MERGE
Use the common ScaleGestureDetector to detect the
multi-touch motion.

Check both supportZoom and getBuiltInZoomControls
to decide whether enable the multi-touch behavior.
This should the new pinch behavior only replace the
old +/-.

Fix http://b/issue?id=2363260

Only update textWrapScale if it is different. This
should fix the performance decrease caused by initial
multi-touch code.

Fix http://b/issue?id=2371694
2010-01-13 22:02:53 -08:00
Grace Kloba
e67d5cee67 DO NOT MERGE.
Couple of tweak for multi-touch in WebView.

1. If we can't zoom, don't get in multitouch mode.
   This avoid the logo in google.com looks fuzzy.
2. Reset mAnchor after sending VIEW_SIZE_CHANGED.
3. Don't call zoom when finishing multitouch unless
   zoom is called before.
4. Change the width for nativeSetSize, which was modified
   in the last check-in. The new logic should make both
   msn.com and news.google.com looks correct.
5. Use the pressure instead of distance/time to filter
   out the jitter just before lifting the finger.

Fix http://b/issue?id=2360032
2010-01-12 09:58:43 -08:00
Grace Kloba
a2b0d38f8c First draft of multitouch in the WebView.
Currently we just handle a simple pinch action. We
will wait for framework support for more complicated
gesture.

When pinch in the webview, zoom level will be changed
on the fly. But we won't re-wrap the text until user
action like double tap, rotate screen.

Double tap will re-layout the page and wrap the text
to the screen width. We try to keep the spot you
tapped at the same place on the screen after relayout.
If the block after relayout fully fit on the current
screen, we will center it for easy reading.

Fix http://b/issue?id=2360032
2010-01-11 10:41:40 -08:00
Leon Scroggins
db08d5cd44 DO NOT MERGE.
Fix for http://b/issue?id=2292512

When pressing the trackball on a WebTextView, open the IME.

Change-Id: I5ea74ca7ce51ac509dc8649b8f8d1869287bb7a9
2009-12-01 14:42:55 -05:00
Ben Murdoch
0187e9ec40 Rename WebChromeClient.addMessageToConsole to WebChromeClient.onConsoleMessage. Do not merge.
BUG=b/2271636

This has already been submitted to eclair-mr2.

Change-Id: I81947f671f58be006ee3e1b30d73c6cb6cf2ebee
2009-11-24 12:32:02 +00:00
Ben Murdoch
545a2a12c1 Update JavaDoc for CacheManger.CacheResult, WebChromeClient.getDefaultVideoPoster and WebChromeClient.getVideoLoadingProgressView. Do not merge.
This has already been submitted to eclair-mr2.

Change-Id: Ibd184157a90b0031141c91c3b3bbbf4ef86e44e4
2009-11-24 12:31:37 +00:00
Steve Block
357997dd4a Improves documentation for GeolocationPermissions class. Do not merge.
Also sets an explicit type for GeolocationPermissions.getOrigins.

This is a partial fix for bug http://b/issue?id=2271636

This has already been submitted to eclair-mr2.

Change-Id: I0c77eca94eb56d16c2a9a29a72eb221e4a7a52a6
2009-11-24 12:27:50 +00:00
Grace Kloba
16efce7242 Honor the mInitialScale set on WebView. This was
lost when we fixed restoring the scale for a new
page.

Fix http://b/issue?id=2251716
2009-11-11 20:13:32 -08:00
Grace Kloba
bf5b632abb Use getViewHeightWithTitle() to honor the scrollbar
setting when computing the maxScrollY for fling.
This is honored in the regular scroll in 
computeVerticalScrollExtent().

Fix http://b/issue?id=2251694
2009-11-11 14:43:16 -08:00
Grace Kloba
d7439f4bdb Use computeVerticalScrollRange() to find the bottom
of the page as mContentHeight is not in the view system.

Fix http://b/issue?id=2251909
2009-11-11 14:38:55 -08:00
Grace Kloba
bb245ea7f5 Return an empty PluginList instead of null for the
deprecated getPluginList() api.

Fix http://b/issue?id=2249732
2009-11-10 13:13:24 -08:00
Grace Kloba
0691ad50ca Remove "@hide pending API council" in webkit to expose
the apis to SDK.

Remove @hide in GeolocationPermissions and WebStorage
to expose them to the SDK users.

Remove @hide for freeMemory() in WebView.

Remove @hide comment in CallbackProxy and
GoogleLocationSettingManager as they are not public class.
2009-11-07 10:39:07 -08:00
Cary Clark
4e9fe62b37 do not merge -- original checkin to mr2 here:
https://android-git.corp.google.com/g/#change,30204

check for native initialization before calling public function

Added more checks where it is possible to call a native function
after creating a WebView but before the native side is initialized.

These cases can be triggered by the monkey.

Fixes http://b/issue?id=2187719
2009-11-06 10:29:30 -05:00
Mike Reed
dafc19a140 do not merge
remove the filter when we're scrolling, so we don't degrade the quality

http://b/issue?id=2174463&cookieId=2009300052135424

same change (in spirit) in MR2

https://android-git.corp.google.com/g/#change,30860
2009-10-27 08:30:13 -04:00
Leon Scroggins
9d1abc43f5 In onKeyUp for DPAD_CENTER, show the IME for text input.
Fixes http://b/issue?id=2201966

Change-Id: Ifa8ab30e205e21e9e69e9a7405a0a6fc86c6c488
2009-10-21 15:35:33 -04:00
Cary Clark
39e6773431 do not merge: fix copy/paste using trackball on passion
This fix is alrady in mr2. It does not affect sholes --
this is a trackball only bug.

The selection caret and arrow now take the scale factor and
the height of the title bar into account when preparing the
canvas for drawing.

Clicking the trackball at the end of selecting text no longer
sends a click event.

Requires a companion fix in external/webkit
Fixes http://b/issue?id=2187591
2009-10-16 09:27:47 -04:00
Grace Kloba
124356f630 Continue caching "POST" result so that we won't get
the resubmission warning when back to Google search result.

Fix http://b/issue?id=1490379
Break/reopen http://b/issue?id=1980031
2009-10-12 17:39:50 -07:00
Grace Kloba
1184313cbe Setting WebCore cache limit depending on the memory class.
Fix http://b/issue?id=2176656
2009-10-08 21:01:49 -07:00
Grace Kloba
2919f49273 remove cert for SampleBrowserPlugin and only check
signature for the release build.
2009-09-30 21:52:56 -07:00
Grace Kloba
5b2c056a3f Keep the scrollbar on during TOUCH_MOVE events even
when there is no movement.

Fix http://b/issue?id=2151115
2009-09-30 20:43:24 -07:00
Grace Kloba
73477e7336 Add the signature checking for WebView plugins. The
first one is for SampleBrowserPlugin. The second
one is for Flash.
2009-09-30 20:14:26 -07:00
Leon Scroggins
10be754232 If the textfield is offscreen at the end of a zoom, remove it.
Fixes http://b/issue?id=2147168

Change-Id: I068746f7a7242bab5bc2116598f0421d7385ce25
2009-09-30 19:03:31 -04:00
Andrei Popescu
50c862324b Update <video> implementation after new IRC discussion with Eric Carlsson.
- move poster drawing on the WebKit side
- get rid of the child views
- add prepareToPlay method to the MediaPlayer iface.

Fixes http://b/issue?id=2156592
2009-09-30 20:09:29 +01:00
Cary Clark
0c5924e9dd preserve webkit-side text selection
When webkit modifies a text field programmatically, it may change
the selection. This competes with the UI thread attempting to
set the selection in response to the IME next button and changes
made by the trackball.

One recent fix (https://android-git.corp.google.com/g/#change,26904)
sets the selection from the UI side after the IME generated click.
Unfortunately, this can be generated under other circumstances,
so this change qualifies this with mOkayForFocusNotToMatch, which
is only set after the IME next button is pressed.

The other change qualfies onTextChanged calls so that if it was
triggered by setTextAndKeepSelection, the webkit-side selection
is unchanged.

fixes http://b/issue?id=2096746
2009-09-30 10:52:14 -04:00
Leon Clarke
194e345eb0 Re-instate the link coloring on startup, but going via the browser
to read the bookmark history, and restricting it to 100 results.

Link coloring - doing db lookup in new thread

Whitespace, following review
2009-09-30 10:09:49 +01:00
Mike LeBeau
2e4dbe70e7 Unhide APIs for enabling geolocation in web views. I've confirmed
with Grace that these are okay to unhide.
2009-09-29 19:40:28 -07:00
Cary Clark
4fbf81bc94 check for null item in web history in saveState
fixes http://b/issue?id=215369
2009-09-29 16:21:25 -04:00
Cary Clark
eaa18dec91 scroll text field with touch
Add a hidden public method to text/method/Touch.java that
computes the maximum scroll amount for a text field.

Remove 'faketouch' code; it causes a crash and is
no longer required.

Pass the percentage of the current scroll from the UI
thread to webkit. One additional fix is to allow very
small movements which are currently disallowed because
they are smaller than 'smallerSlop' in WebTextView.java.

Companion fix is in external/webkit.

Fixes http://b/issue?id=2133049
2009-09-29 15:42:37 -04:00
Leon Scroggins
d84e7d53d3 Allow scrolls to continue when getting a new content size.
In recordNewContentSize, rather than aborting any scrolls in progress,
find the final coordinates of the scroll and pin them to the new size,
and let the scroll continue.

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

Change-Id: I7bfa444b52e70a0ca817221f379df77efc3496b7
2009-09-29 14:43:05 -04:00
Grace Kloba
94c715d662 Skip requestRectangleOnScreen for WebTextView during
zoom animation. If it is in edit mode, we already adjust
WebTextView in the end of zoom animation.

Fix part 1 of http://b/issue?id=2147168
2009-09-28 23:23:53 -07:00
Mike Cleron
f116bf8884 Fading scrollbars return. But you have to opt in. 2009-09-28 10:47:04 -07:00
Android (Google) Code Review
5d062bc3de Merge change 27426 into eclair
* changes:
  Handle the case where GoogleLocationSettingObserver::onChange is called after GoogleLocationSettingObserver::doNotObserve().
2009-09-28 13:33:01 -04:00