OSDN Git Service

android-x86/external-webkit.git
14 years agoRemove a warning.
Leon Scroggins III [Thu, 25 Mar 2010 17:01:13 +0000 (13:01 -0400)]
Remove a warning.

Change-Id: Iffd11a306df9a5140b3406e825185713d17d273e

14 years agodon't track layer node twice
Cary Clark [Thu, 25 Mar 2010 14:18:35 +0000 (10:18 -0400)]
don't track layer node twice

If a cache node is both in a layer and contains a layer, don't
add it the second time.

Change-Id: I45cc302e234565bfbc87649ca503f515b1f487e8
http://b/2543736

14 years agoApparently this needs to happen again (at least, it did for my build).
Dan Egnor [Wed, 24 Mar 2010 22:32:36 +0000 (15:32 -0700)]
Apparently this needs to happen again (at least, it did for my build).

Change-Id: I89dbec1be74da68afb2a03b75ad5bf87426d8889

14 years agoMerge "Mark positioned elements as needing a relayout when checking for hit test...
Nicolas Roard [Wed, 24 Mar 2010 20:41:14 +0000 (13:41 -0700)]
Merge "Mark positioned elements as needing a relayout when checking for hit test. This is necessary when using composited fixed layers, as the layers position may have moved UI-side, while the webkit's related position of those layers may not have been updated yet."

14 years agoMark positioned elements as needing a relayout when checking for hit test.
Nicolas Roard [Wed, 24 Mar 2010 18:27:42 +0000 (18:27 +0000)]
Mark positioned elements as needing a relayout when checking for hit test.
This is necessary when using composited fixed layers, as the layers position
may have moved UI-side, while the webkit's related position of those layers
may not have been updated yet.

Fix Bug:2457215

Change-Id: If4f0e9c3d1a4786b29dcc7c2dc3510ba090b6a36

14 years agoMerge "compile fix for V8 with debug builds"
Kristian Monsen [Wed, 24 Mar 2010 19:35:36 +0000 (12:35 -0700)]
Merge "compile fix for V8 with debug builds"

14 years agocompile fix for V8 with debug builds
Kristian Monsen [Wed, 24 Mar 2010 19:26:22 +0000 (19:26 +0000)]
compile fix for V8 with debug builds

Change-Id: Icffc7b0d5f9a9b2da66dca37c0c8d084c11491b7

14 years agoMerge "Fixes XHR requests to use the username and password supplied from JavaScript"
Steve Block [Wed, 24 Mar 2010 18:28:50 +0000 (11:28 -0700)]
Merge "Fixes XHR requests to use the username and password supplied from JavaScript"

14 years agoFix the background of the placeholder.
Patrick Scott [Wed, 24 Mar 2010 18:18:50 +0000 (14:18 -0400)]
Fix the background of the placeholder.

Draw a light gray 1 pixel border instead of using an asset.

Bug: 2411524
Change-Id: Ibc95148e2bf13e0dcc58d747e3733cc6993dddf6

14 years agoFixes XHR requests to use the username and password supplied from JavaScript
Steve Block [Wed, 24 Mar 2010 16:27:17 +0000 (16:27 +0000)]
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: Ic232003a3f321167810fc7263d6ecb654eeeb5eb

14 years agoMerge "drawRect is defined (in header) to always stroke with 1.0"
Mike Reed [Wed, 24 Mar 2010 17:45:41 +0000 (10:45 -0700)]
Merge "drawRect is defined (in header) to always stroke with 1.0"

14 years agodrawRect is defined (in header) to always stroke with 1.0
Mike Reed [Wed, 24 Mar 2010 17:33:09 +0000 (13:33 -0400)]
drawRect is defined (in header) to always stroke with 1.0

Change-Id: I95bef5b769c9b2637424ae4f22ccd19ed6e4ff9a

14 years agoMerge "Renders fixed layers with the root canvas matrix. Fix some positioning issues."
Nicolas Roard [Wed, 24 Mar 2010 17:22:54 +0000 (10:22 -0700)]
Merge "Renders fixed layers with the root canvas matrix. Fix some positioning issues."

14 years agoRenders fixed layers with the root canvas matrix. Fix some positioning issues.
Nicolas Roard [Fri, 19 Mar 2010 17:10:50 +0000 (17:10 +0000)]
Renders fixed layers with the root canvas matrix. Fix some positioning issues.

Bug:2526966 Bug:1818168

The current rendering code exposes some issues with the fact that we have
fixed layers in the layers hierarchy -- parents transformations are also applied
to the fixed layers, which is not what we want (fixed layers should be applied
on the original canvas, with the original transform -- e.g. toolbar present or not --
but no more).

One previously discussed solution was to move the fixed layers to their own hierarchy;
but doing so would mean to also redo all the z-index management that we already have
in the current system. The simplest way is therefore to use the original matrix (the
canvas' matrix) when we have a fixed layer. The way we do this is by inserting a new
LayerAndroid before the LayerAndroid root, setting the matrix of that new root to be
the canvas' matrix. The drawing is then unaffected, but we can ask skia to draw using
the root's matrix.

The second issue solved in the CL is some positioning troubles; layers may have
different dimensions than their render view, and the previous code was considering that
the views were always drawn at the origin in the layer. By removing the parents layers
transforms, this is not the case anymore, and we therefore need to take the render view
offset into account. Finally there is some additional debug code in LayerAndroid.

Change-Id: Id353ad3dfd9808252643f0e4f0140dde67480719

14 years agoMerge "Add a special case to handle "wap" style html."
Grace Kloba [Wed, 24 Mar 2010 16:10:46 +0000 (09:10 -0700)]
Merge "Add a special case to handle "wap" style html."

14 years agoDo not redirect data to our placeholder.
Patrick Scott [Wed, 24 Mar 2010 13:50:27 +0000 (09:50 -0400)]
Do not redirect data to our placeholder.

Bug: 2539312
Change-Id: I952b854cc65c5481e9fed04d2169b0f01536d5a4

14 years agoAdd a special case to handle "wap" style html.
Grace Kloba [Tue, 23 Mar 2010 23:14:34 +0000 (16:14 -0700)]
Add a special case to handle "wap" style html.

If we get here, it is html mimetype, not wap mimetype.
Treat the "wap" style like "mobile" style by using
device-width as viewport width.

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

14 years agoMerge "Add on-demand plugin support."
Patrick Scott [Tue, 23 Mar 2010 20:36:20 +0000 (13:36 -0700)]
Merge "Add on-demand plugin support."

14 years agoMerge "Revert "Revive my change to not add anchor navigations to the history in some...
Patrick Scott [Tue, 23 Mar 2010 20:30:18 +0000 (13:30 -0700)]
Merge "Revert "Revive my change to not add anchor navigations to the history in some cases.""

14 years agoRevert "Revive my change to not add anchor navigations to the history in some cases."
Patrick Scott [Tue, 23 Mar 2010 20:27:00 +0000 (16:27 -0400)]
Revert "Revive my change to not add anchor navigations to the history in some cases."

This reverts commit a6e5d463b2fbb6ad4e154719d6846231a32764a7.

14 years agoAdd on-demand plugin support.
Patrick Scott [Mon, 22 Mar 2010 14:09:16 +0000 (10:09 -0400)]
Add on-demand plugin support.

The Settings object now has an on-demand flag for plugins (this was to avoid
more edits to webkit code). If plugins are on-demand and a plugin is installed
that can handle the content, insert a placeholder widget. If the user clicks on
the placeholder, the plugin will be enabled.

The widget currently does not clip the context correctly. It only clips based on
the widget frame. This is due to a bug (already filed) where the scroll offset
is producing bad clip rectangles.

Requires a framework change.

Bug: 2411524
Change-Id: If3931da8da2339a2385ae78b609c49fa069892ab

14 years agoMerge "Allowing native code access to the application context as long as there is...
Derek Sollenberger [Tue, 23 Mar 2010 19:25:14 +0000 (12:25 -0700)]
Merge "Allowing native code access to the application context as long as there is at least one valid instance of the webviewcore class."

14 years agoAllowing native code access to the application context as long as
Derek Sollenberger [Tue, 23 Mar 2010 18:07:05 +0000 (14:07 -0400)]
Allowing native code access to the application context as long as
there is at least one valid instance of the webviewcore class.

This change allows plugins access to the application context when
the plugin package is loaded, prior to any instances of the plugin
being created.

Change-Id: I74a58cf76cc3c2d0ef7bca19346f13f58f616830

14 years agoMerge "Only replaced flash content if youtube app is installed. Fix for bug 2521517."
Kristian Monsen [Tue, 23 Mar 2010 16:37:55 +0000 (09:37 -0700)]
Merge "Only replaced flash content if youtube app is installed. Fix for bug 2521517."

14 years agoOnly replaced flash content if youtube app is installed. Fix for bug 2521517.
Kristian Monsen [Tue, 23 Mar 2010 10:17:19 +0000 (10:17 +0000)]
Only replaced flash content if youtube app is installed. Fix for bug 2521517.

Change-Id: Id1b2401728d03410a10bac6674450f5123b4785e

14 years agoUse EmojiFoctory::GetShiftJisConverterName() instead of relying on static string.
Daisuke Miyakawa [Tue, 23 Mar 2010 02:07:30 +0000 (11:07 +0900)]
Use EmojiFoctory::GetShiftJisConverterName() instead of relying on static string.

This change should be with the change Iccbef288.

Bug: 2327318
Change-Id: Ie67d6c1ef60d8e57784e903e3e00a73d3bec0f82

14 years agoMerge "Only enable composited fixed elements for mobile sites."
Nicolas Roard [Mon, 22 Mar 2010 22:18:04 +0000 (15:18 -0700)]
Merge "Only enable composited fixed elements for mobile sites."

14 years agoOnly enable composited fixed elements for mobile sites.
Nicolas Roard [Fri, 19 Mar 2010 11:51:19 +0000 (11:51 +0000)]
Only enable composited fixed elements for mobile sites.

We can consider a website as being a 'mobile' site if:
- the viewport width is either undefined (-1) or equal to device-width (0)
- no scaling is allowed

Change-Id: Id88257278312077a170eb10d9f666c46bad135b6

14 years agoAdd a new API on the resource loader to pause the current load. We use this when...
Ben Murdoch [Fri, 12 Mar 2010 20:46:03 +0000 (20:46 +0000)]
Add a new API on the resource loader to pause the current load. We use this when the plugin cannot accept any more data to prevent WebKit
buffering the data that the plugin can't take. This can result in a crash if the buffer gets too big (when watching an HD movie clip in
flash, for example).

Requires a frameworks/base change.

Change-Id: Ibb63d38df1014ff70fa4d65275613cbf3a217c1a

14 years agoMerge "Implements layoutTestController.setAppCacheMaximumSize"
Steve Block [Mon, 22 Mar 2010 10:44:14 +0000 (03:44 -0700)]
Merge "Implements layoutTestController.setAppCacheMaximumSize"

14 years agouse picture recording flag to speed up clipPath (and avoid asserts in very large...
Mike Reed [Fri, 19 Mar 2010 17:26:35 +0000 (13:26 -0400)]
use picture recording flag to speed up clipPath (and avoid asserts in very large edgelists)
override (and no-op) clipPath() in IsEmptyCanvas, same reasons as above.

Change-Id: I70b1565a11c1e314fdde507c1b2118b9aba651e6

14 years agoAdd back a missing ifdef
Nicolas Roard [Fri, 19 Mar 2010 17:10:50 +0000 (17:10 +0000)]
Add back a missing ifdef

Change-Id: Ib0f0cf689e95b7333045df53ca645d34a0db21a4

14 years agoImplements layoutTestController.setAppCacheMaximumSize
Steve Block [Fri, 19 Mar 2010 15:31:42 +0000 (15:31 +0000)]
Implements layoutTestController.setAppCacheMaximumSize

Change-Id: I2cf3d3135fbd21158525866af458eb89f902fb66

14 years agoMerge "Fix comment from "WebView.LOAD_*" to "WebSettings.LOAD_*""
Brian Carlstrom [Fri, 19 Mar 2010 00:46:38 +0000 (17:46 -0700)]
Merge "Fix comment from "WebView.LOAD_*" to "WebSettings.LOAD_*""

14 years agoFix comment from "WebView.LOAD_*" to "WebSettings.LOAD_*"
Brian Carlstrom [Fri, 19 Mar 2010 00:06:20 +0000 (17:06 -0700)]
Fix comment from "WebView.LOAD_*" to "WebSettings.LOAD_*"

While improving the javadoc for
android.webkit.BrowserFrame.startLoadingResource, I noticed that the
Java class metioned in the C++ comments was wrong.

Change-Id: Ibf6234735fc6b92b444f6cf3b4c6bb5c33675525

14 years agoMerge "Fill in appropriate referer URL plugin initiated resource loading."
Shimeng (Simon) Wang [Thu, 18 Mar 2010 18:17:50 +0000 (11:17 -0700)]
Merge "Fill in appropriate referer URL plugin initiated resource loading."

14 years agoFill in appropriate referer URL plugin initiated resource loading.
Shimeng (Simon) Wang [Thu, 18 Mar 2010 17:13:46 +0000 (10:13 -0700)]
Fill in appropriate referer URL plugin initiated resource loading.

Didn't think of better way to code in the common code.

Bug:2512527
Change-Id: Ie656ce1c399f238187045be41ece1fc2feefab90

14 years agoMerge "Pass selection data along with message to open the keyboard."
Leon Scroggins [Thu, 18 Mar 2010 17:20:41 +0000 (10:20 -0700)]
Merge "Pass selection data along with message to open the keyboard."

14 years agoMerge "Implement margin for fixed elements. Last missing piece to fix Bug:2252505"
Nicolas Roard [Thu, 18 Mar 2010 16:57:34 +0000 (09:57 -0700)]
Merge "Implement margin for fixed elements. Last missing piece to fix Bug:2252505"

14 years agoPass selection data along with message to open the keyboard.
Leon Scroggins [Thu, 18 Mar 2010 16:43:35 +0000 (12:43 -0400)]
Pass selection data along with message to open the keyboard.

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

Requires a change to frameworks/base

Change-Id: I7f703746bdd00aaae2607a6a41ac4916f43d37b1

14 years agoImplement margin for fixed elements.
Nicolas Roard [Thu, 18 Mar 2010 16:35:27 +0000 (16:35 +0000)]
Implement margin for fixed elements.
Last missing piece to fix Bug:2252505

Billmonk.com uses a centered fixed element with negative margins,
and we were not accounting for those...
Accounting for the margins move the fixed layer at the same place
than webkit think it is, and therefore clicks do work.

Change-Id: I6a736d06273df7d2bbc597c17ce042aa8b75b4e2

14 years agoMerge "Adds Android-specific results for an appcache layout test"
Steve Block [Thu, 18 Mar 2010 15:55:23 +0000 (08:55 -0700)]
Merge "Adds Android-specific results for an appcache layout test"

14 years agoMerge "Fix click issues when using fixed elements. This CL also fix the positioning...
Nicolas Roard [Thu, 18 Mar 2010 15:35:01 +0000 (08:35 -0700)]
Merge "Fix click issues when using fixed elements. This CL also fix the positioning of a fixed layer when no position is defined, and also only use the screen to position only the fixed elements, not other types of positioned elements."

14 years agoAdds Android-specific results for an appcache layout test
Steve Block [Thu, 18 Mar 2010 15:12:02 +0000 (15:12 +0000)]
Adds Android-specific results for an appcache layout test

Currently this test fails only because of textual differences in the console
message produced on Android.

Change-Id: I6f2e75b1bad9f3e8d7636d5f2b59b2d4b22fd779

14 years agoFix click issues when using fixed elements. This CL also fix the positioning
Nicolas Roard [Wed, 17 Mar 2010 21:15:55 +0000 (21:15 +0000)]
Fix click issues when using fixed elements. This CL also fix the positioning
of a fixed layer when no position is defined, and also only use the screen
to position only the fixed elements, not other types of positioned elements.

Bug:2521087

The click issues were due to not returning the fixed element when looking
for a parent stackingContext in RenderLayer::stackingContext().
This resulted in incorrect coordinates for the layers children of a
fixed layer, that we then had to recompute in
RenderLayer::convertToLayerCoords(), but this in turns was invaliding
hit test detection...

Fixed elements are now positioned relative to the screen instead of the
virtual viewport (ANDROID_FIXED_ELEMENTS); but this was applying
indiscriminantly to all positioned elements, absolute elements included.
The CL modify RenderBox::containingBlockWidthForPositioned() and
RenderBox::containingBlockHeightForPositioned() to only do this for
fixed elements.

Finally, fixed layers were wrongly positioned if the positions were not
fully set (e.g. only setting top:0 but no left or right). The change to
LayerAndroid::updateFixedLayersPositions() fixes this.

Change-Id: I07a179dd631a2bc1a313e33ffcf69ef388ecb7ca

14 years agowindow may not be initialized when plugin is first called
Cary Clark [Thu, 18 Mar 2010 15:01:14 +0000 (11:01 -0400)]
window may not be initialized when plugin is first called

Change-Id: I37ba49b9cbd5170613f0d8e694aa79b49585a8ee
http://b/2524032

14 years agoget bounds of focused node
Cary Clark [Wed, 17 Mar 2010 19:55:24 +0000 (15:55 -0400)]
get bounds of focused node

companion fix in framework/base

Change-Id: I7d9191ea9c95dafac7f7e91a70d02c7d055c6967
http://b/2521087

14 years agoMerge "Fixes the Mac build"
Steve Block [Wed, 17 Mar 2010 19:22:09 +0000 (12:22 -0700)]
Merge "Fixes the Mac build"

14 years agoFixes the Mac build
Steve Block [Wed, 17 Mar 2010 18:23:16 +0000 (18:23 +0000)]
Fixes the Mac build

- JavaInstanceJSC.cpp - Adds ANDROID guards around some temporary logging
- Geolocation.cpp - Adds ANDROID guards around changes waiting to be upstreamed
- WebChromeClient.h / EmptyClients.h - Pulls the Mac part of a WebKit change for which only the Android part was cherry-picked in https://android-git.corp.google.com/g/#change,41747

Change-Id: Ide97cb6b05e78528fe4b9430466837dedaadc4cf

14 years agoMerge "Compare the client rather than the handle as the handle may not be set yet."
Patrick Scott [Wed, 17 Mar 2010 18:39:25 +0000 (11:39 -0700)]
Merge "Compare the client rather than the handle as the handle may not be set yet."

14 years agoCompare the client rather than the handle as the handle may not be set yet.
Patrick Scott [Wed, 17 Mar 2010 18:33:58 +0000 (14:33 -0400)]
Compare the client rather than the handle as the handle may not be set yet.

Bug: 2256744
Change-Id: I45baf86d56192c8752cb34f33795d2fa015ebe26

14 years agoMerge "Disable workers"
Steve Block [Wed, 17 Mar 2010 18:09:57 +0000 (11:09 -0700)]
Merge "Disable workers"

14 years agoDisable workers
Steve Block [Wed, 17 Mar 2010 14:37:19 +0000 (14:37 +0000)]
Disable workers

This is because V8 on Android does not have the required locking.
Also disables channel messaging, which is used only with workers.

Bug: 2522239
Change-Id: I6cb91b4048c7e1a0351e422561625397a2e98986

14 years agoMerge "Fix a webkit bug."
Shimeng (Simon) Wang [Wed, 17 Mar 2010 18:05:54 +0000 (11:05 -0700)]
Merge "Fix a webkit bug."

14 years agoMerge changes I23ce1e5a,Ieee214f4
Steve Block [Wed, 17 Mar 2010 17:49:56 +0000 (10:49 -0700)]
Merge changes I23ce1e5a,Ieee214f4

* changes:
  Add missing WORKERS guards to V8 bindings
  Cherry-pick WebKit change 56112 to add WORKERS guards to V8 bindings

14 years agoFix a webkit bug.
Shimeng (Simon) Wang [Tue, 16 Mar 2010 18:32:31 +0000 (11:32 -0700)]
Fix a webkit bug.

Change-Id: Ib8ae67e76c03027fcece73f2d36fc0ea41164e40

14 years agoMerge changes If72cb478,Ie6365073
Steve Block [Wed, 17 Mar 2010 17:47:17 +0000 (10:47 -0700)]
Merge changes If72cb478,Ie6365073

* changes:
  Cherry-pick WebKit change 55084 to add SHARED_WORKERS guard in V8 globalObjectPrototypeIsDOMWindow
  Cherry-pick WebKit change 54972 to merge DOMWindow and WorkerContext object wrapping in V8 bindings

14 years agoMerge "Refactor how we set up the layers hierarchy when using fixed composited layers...
Nicolas Roard [Wed, 17 Mar 2010 17:11:14 +0000 (10:11 -0700)]
Merge "Refactor how we set up the layers hierarchy when using fixed composited layers, and fix the z-index position."

14 years agoMerge "Fix for Bug 2486292, transparent backgrounds not transparent in Froyo."
Kristian Monsen [Wed, 17 Mar 2010 15:49:12 +0000 (08:49 -0700)]
Merge "Fix for Bug 2486292, transparent backgrounds not transparent in Froyo."

14 years agoMerge "Pass mouse events to the subframe as the other ports by calling subframe handler."
Grace Kloba [Wed, 17 Mar 2010 15:40:44 +0000 (08:40 -0700)]
Merge "Pass mouse events to the subframe as the other ports by calling subframe handler."

14 years agoAdd missing WORKERS guards to V8 bindings
Steve Block [Wed, 17 Mar 2010 15:02:30 +0000 (15:02 +0000)]
Add missing WORKERS guards to V8 bindings

The motivation for this change is to allow us to disable workers on Android,
because V8 on Android does not have the required locking.

This change will not be upstreamed because the code has been refactored in
tip-of-tree WebKit.

See http://trac.webkit.org/changeset/55096

Change-Id: I23ce1e5aecc2897da240b5229585b8e6617d8ebf

14 years agoCherry-pick WebKit change 56112 to add WORKERS guards to V8 bindings
Steve Block [Wed, 17 Mar 2010 15:01:37 +0000 (15:01 +0000)]
Cherry-pick WebKit change 56112 to add WORKERS guards to V8 bindings

The motivation for this change is to allow us to disable workers on Android,
because V8 on Android does not have the required locking.

See http://trac.webkit.org/changeset/56112

Change-Id: Ieee214f4765af3188bbdc51c56f14883f6a6779c

14 years agoCherry-pick WebKit change 55084 to add SHARED_WORKERS guard in V8 globalObjectPrototy...
Steve Block [Wed, 17 Mar 2010 14:36:17 +0000 (14:36 +0000)]
Cherry-pick WebKit change 55084 to add SHARED_WORKERS guard in V8 globalObjectPrototypeIsDOMWindow

The motivation for this change is to allow us to disable workers on Android,
because V8 on Android does not have the required locking.

See http://trac.webkit.org/changeset/55084

Change-Id: If72cb478fb7dad6be44eaa2c1ca19e9790a9dda0

14 years agoCherry-pick WebKit change 54972 to merge DOMWindow and WorkerContext object wrapping...
Steve Block [Wed, 17 Mar 2010 15:25:43 +0000 (15:25 +0000)]
Cherry-pick WebKit change 54972 to merge DOMWindow and WorkerContext object wrapping in V8 bindings

The motivation for this change is to disable workers on Android, because V8 on
Android does not have the required locking.

The current version of WebKit in Android (54731) uses workers features without
ENABLE(WORKERS) guards in the V8 bindings. In particular,
V8DOMWrapper::instantiateV8ObjectInWorkerContext is used from generated code
without guards.

Fixing the code generator would be difficult and would be wasted effort as
V8DOMWrapper::instantiateV8ObjectInWorkerContext no longer exists in tip-of-tree
WebKit. Instead, we cherry-pick the WebKit change which removes this method.

See http://trac.webkit.org/changeset/54972

Change-Id: Ie6365073d7a4d92aa7c1553d87a7e1c1ed514118

14 years agoRefactor how we set up the layers hierarchy when using fixed
Nicolas Roard [Tue, 16 Mar 2010 15:35:12 +0000 (15:35 +0000)]
Refactor how we set up the layers hierarchy when using fixed
composited layers, and fix the z-index position.

Bug:2497910 Bug:2450006

We add a new COMPOSITED_FIXED_ELEMENTS define to isolate the
changes in the webkit common code.

We previously had a problem where the hierarchy of GraphicsLayer
(i.e. the backed surfaces associated to the composited RenderLayer)
was not reflecting that layers were children of a fixed layer.
The workaround we currently have is not fully satisfactory, due to the way
we draw layers on screen (in some cases layers were wrongly translated,
see Bug:2497910).

Instead, modifying the webkit common code simplify things a lot, and makes
the patch more likely to be upstreamed to webkit, as it's now a
reasonably well-delimited feature (use composited layers for fixed elements).

What we do now is to consider fixed elements as a stacking context, which
makes all layers children of such elements children too in the
GraphicsLayer hierarchy, and modifying the offset of those children
accordingly (in RenderLayer.cpp).

In addition, we fixes the z-index bugs we had
by signaling that there is a fixed element to its siblings, and turning
the siblings as composited layers as well (so that the ordering works
fully UI-side).

Change-Id: I735c6c14d955ef54653f0053187d3495bef1f332

14 years agoFix for Bug 2486292, transparent backgrounds not transparent in Froyo.
Kristian Monsen [Mon, 15 Mar 2010 15:41:48 +0000 (15:41 +0000)]
Fix for Bug 2486292, transparent backgrounds not transparent in Froyo.

Recreating the transparent and color of old window when creating a new one, and setting transparent if all the colors are 0.
Updated patch to fix comments from Grace.

Change-Id: I934401630fd7041e7e4ae1cbeeaa198271025c87

14 years agoPass mouse events to the subframe as the other ports
Grace Kloba [Wed, 17 Mar 2010 04:10:18 +0000 (21:10 -0700)]
Pass mouse events to the subframe as the other ports
by calling subframe handler.

Most of the time, nav cache found the iframe and calls
the correct eventhandler. But when nav cache fails,
we use the top frame and we need to pass the mouse
events to the subframe.

http://b/issue?id=2521087

14 years agoMerge "Compute the position of the fixed elements to be relative to the screen and...
Nicolas Roard [Wed, 17 Mar 2010 03:34:40 +0000 (20:34 -0700)]
Merge "Compute the position of the fixed elements to be relative to the screen and not the virtual viewport."

14 years agoCompute the position of the fixed elements to be relative to the
Nicolas Roard [Wed, 17 Mar 2010 02:06:20 +0000 (02:06 +0000)]
Compute the position of the fixed elements to be relative to the
screen and not the virtual viewport.

This fixes Bug:2515587 and Bug:2457215

Change-Id: Ib987787cf9bf74b760b857dbbb397f85af334dce

14 years agoTo enable per file log, only need to define PLUGIN_DEBUG_LOCAL
Grace Kloba [Sat, 13 Mar 2010 02:45:47 +0000 (18:45 -0800)]
To enable per file log, only need to define PLUGIN_DEBUG_LOCAL

14 years agoEnsure a plugin is not shown if it is completely obscured by other
Derek Sollenberger [Tue, 16 Mar 2010 20:29:40 +0000 (16:29 -0400)]
Ensure a plugin is not shown if it is completely obscured by other
html content.

Change-Id: Iffcc30d47428708842ac5dddee41cc611d879c1c

14 years agoMerge "Revert "Fix V8 crashes with plugins. The extra call to _NPN_ReleaseObject...
Ben Murdoch [Tue, 16 Mar 2010 18:41:46 +0000 (11:41 -0700)]
Merge "Revert "Fix V8 crashes with plugins. The extra call to _NPN_ReleaseObject inside forgetV8ObjectForNPObject is causing a double deletion.""

14 years agoMerge "Fix the V8 NPObject reference count problem."
Grace Kloba [Tue, 16 Mar 2010 18:40:52 +0000 (11:40 -0700)]
Merge "Fix the V8 NPObject reference count problem."

14 years agoRevert "Fix V8 crashes with plugins. The extra call to _NPN_ReleaseObject inside...
Ben Murdoch [Tue, 16 Mar 2010 18:37:48 +0000 (18:37 +0000)]
Revert "Fix V8 crashes with plugins. The extra call to _NPN_ReleaseObject inside forgetV8ObjectForNPObject is causing a double deletion."

Right problem, wrong fix.

This reverts commit 9e0d526d0170e26b1dc2d0da8347cca28b5f3507.

14 years agoFix the V8 NPObject reference count problem.
Grace Kloba [Tue, 16 Mar 2010 18:19:34 +0000 (11:19 -0700)]
Fix the V8 NPObject reference count problem.

To match JSC version, after getNPObject() is called,
the object should have ref count 2. One will be released
in ~PluginView(). Another one will be released by
the plugin.

This should fix the crash of Flash using V8.

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

14 years agoMerge "Fix V8 crashes with plugins. The extra call to _NPN_ReleaseObject inside forge...
Ben Murdoch [Tue, 16 Mar 2010 15:58:16 +0000 (08:58 -0700)]
Merge "Fix V8 crashes with plugins. The extra call to _NPN_ReleaseObject inside forgetV8ObjectForNPObject is causing a double deletion."

14 years agoset up the loader so the plugin will receive the first block of data
Cary Clark [Tue, 16 Mar 2010 12:58:14 +0000 (08:58 -0400)]
set up the loader so the plugin will receive the first block of data

this makes our port follow the pattern of the gtk port

fixes http://b/2484987

Change-Id: I7119a4b84c12f5ed69a9f260148536a3b76016d6

14 years agoFix V8 crashes with plugins. The extra call to _NPN_ReleaseObject inside forgetV8Obje...
Ben Murdoch [Tue, 16 Mar 2010 11:28:32 +0000 (11:28 +0000)]
Fix V8 crashes with plugins. The extra call to _NPN_ReleaseObject inside forgetV8ObjectForNPObject is causing a double deletion.

In ScriptController::clearScriptObjects, we call Unregister (which without this change causes Release to get called in forgetV8ObjectForNpObject).
If the ref count gets to 0, we free the object in Release. Then when Unregister returns, we call Release again in the ScriptController with the
same just-free'd pointer. If we're unlucky, then the Deallocate and free gets called again. We're also trying to access members such as the reference
count and deallocation function through a dead pointer.

Also, in the case where the Flash does not clear it's window object, we call Deallocate directly inside ScriptController::clearScriptObjects. This causes
Unregister to get called (as the object is still alive) which calls Release through forgetV8ObjectForNPObject, which results in a recursive call to Deallocate,
which frees the memory. Then the stack unwinds and we happily try to free again from the first call to Deallocate.

Fix these issues by removing the extra call to NPN_ReleaseObject in forgetV8ObjectForNpObject.

Change-Id: I7f6d21cd4ff38e29bd1a178e4816d023560b6b16

14 years agoPutting Grace's change back in now that we have the new apk from Adobe.
Bart Sears [Mon, 15 Mar 2010 22:50:21 +0000 (15:50 -0700)]
Putting Grace's change back in now that we have the new apk from Adobe.

Revert "Temporary revert the new android_npapi. Waiting for"

This reverts commit 31ba9c5b345211c7c89d08a762c09582a3975738.

14 years agoMerge "read old focus before it's thrown away"
Cary Clark [Mon, 15 Mar 2010 20:50:26 +0000 (13:50 -0700)]
Merge "read old focus before it's thrown away"

14 years agoread old focus before it's thrown away
Cary Clark [Mon, 15 Mar 2010 20:34:21 +0000 (16:34 -0400)]
read old focus before it's thrown away

Change-Id: Iab6a64aec5f146e8b0286d1249d353567b49ea49
http://b/2515977

14 years agoIf the plugin is in an IFrame we need to reposition the plugins surface
Derek Sollenberger [Mon, 15 Mar 2010 18:22:08 +0000 (14:22 -0400)]
If the plugin is in an IFrame we need to reposition the plugins surface
every time the IFrame changes position within the document.

Change-Id: I03090bda439c3a3cac95dce42b3ea37901dc42f8

14 years agoMerge "Clean up full-screen mode plugins now that they handle touch in their java...
Derek Sollenberger [Mon, 15 Mar 2010 17:32:31 +0000 (10:32 -0700)]
Merge "Clean up full-screen mode plugins now that they handle touch in their java view."

14 years agoMerge "Adds some logging to JObjectWrapper"
Steve Block [Mon, 15 Mar 2010 17:31:10 +0000 (10:31 -0700)]
Merge "Adds some logging to JObjectWrapper"

14 years agoAdds some logging to JObjectWrapper
Steve Block [Mon, 15 Mar 2010 16:15:47 +0000 (16:15 +0000)]
Adds some logging to JObjectWrapper

This is an attempt to track down the cause of a crashing bug in the WebCore
bridge, which is only occasionally triggered by the monkey.

Bug: 2435360
Change-Id: I3171eb1978de285fcf258f908aa0a08d95b72968

14 years agoMerge "adjust cache layer position by offsets"
Cary Clark [Mon, 15 Mar 2010 12:40:48 +0000 (05:40 -0700)]
Merge "adjust cache layer position by offsets"

14 years agoClean up full-screen mode plugins now that they handle touch
Derek Sollenberger [Tue, 9 Mar 2010 22:40:44 +0000 (17:40 -0500)]
Clean up full-screen mode plugins now that they handle touch
in their java view.

There is a matching commit in frameworks/base

Change-Id: Ibe76eb22c2b5ccc7fb80e4807edcbbc4d25e4793

14 years agoTemporary revert the new android_npapi. Waiting for
Grace Kloba [Sat, 13 Mar 2010 02:45:47 +0000 (18:45 -0800)]
Temporary revert the new android_npapi. Waiting for
the new apk from Adobe.

14 years agoMerge "Use the bounds we layout the page for screenRect. This should fix the problem...
Grace Kloba [Fri, 12 Mar 2010 22:13:39 +0000 (14:13 -0800)]
Merge "Use the bounds we layout the page for screenRect. This should fix the problem where links in google.com news panel show up in the subwindow."

14 years agoAdd requestCenterFitZoom to android_npapi so that
Grace Kloba [Fri, 12 Mar 2010 21:34:26 +0000 (13:34 -0800)]
Add requestCenterFitZoom to android_npapi so that
Flash can trigger the smart-zoom

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

14 years agoUse the bounds we layout the page for screenRect.
Grace Kloba [Fri, 12 Mar 2010 21:54:21 +0000 (13:54 -0800)]
Use the bounds we layout the page for screenRect.
This should fix the problem where links in google.com
news panel show up in the subwindow.

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

14 years agoiterate through the children of the label to find its text
Cary Clark [Fri, 12 Mar 2010 20:54:48 +0000 (15:54 -0500)]
iterate through the children of the label to find its text

Change-Id: Ib4d713fd5797d9ee5c0a3080085a2db438c2bee0
http://b/2502091

14 years agoadjust cache layer position by offsets
Cary Clark [Fri, 12 Mar 2010 19:31:50 +0000 (14:31 -0500)]
adjust cache layer position by offsets

Nodes in layers need to know where they are relative to the layers
so that the cursor rings are correctly positioned as the layer
moves (in document coordinates). In addition to tracking the
global offset to make the coordinates relative to any parent
frames, the node is offset relative to the body.

Sometimes layers have zero height or width; in this case, don't
treat them as clips.

Change-Id: Id2811c31a4a0674d316aadda210570ec93311013
http://b/2503096

14 years agoMerge "Outset the rectangle containing the match after checking the clip."
Leon Scroggins [Fri, 12 Mar 2010 16:09:10 +0000 (08:09 -0800)]
Merge "Outset the rectangle containing the match after checking the clip."

14 years agoOutset the rectangle containing the match after checking the clip.
Leon Scroggins [Thu, 11 Mar 2010 21:53:18 +0000 (16:53 -0500)]
Outset the rectangle containing the match after checking the clip.

When considering whether a match is contained by the current clip,
do not outset it first.  Check to see if it is contained by the
clip, and then add the outset so the drawn rectangle is larger.

Fix for http://b/issue?id=2507893

Change-Id: I900d92432d412396e8c5b9e9e341085656ed0a2f

14 years agoMerge "fix nav algorithm when node is clipped"
Cary Clark [Thu, 11 Mar 2010 18:33:39 +0000 (10:33 -0800)]
Merge "fix nav algorithm when node is clipped"

14 years agoMerge "Prepare touch key modifiers for upstreaming."
Ben Murdoch [Thu, 11 Mar 2010 17:39:27 +0000 (09:39 -0800)]
Merge "Prepare touch key modifiers for upstreaming."

14 years agofix nav algorithm when node is clipped
Cary Clark [Thu, 11 Mar 2010 17:25:40 +0000 (12:25 -0500)]
fix nav algorithm when node is clipped

A fix for http://b/2319610 incorrectly retried finding
nodes if the node was clipped, possibly causing infinite
recursion. Leave all of the prior fix but only try once.

I tested the prior test case and ensured that it still
works.

Change-Id: Ib229b6fc0ba57c131a8c1f33350982ac22a445c0
http://b/2501914

14 years agoMerge "Actually call the script when plugins try to invoke scripts from v8 http:...
Leon Clarke [Thu, 11 Mar 2010 17:22:34 +0000 (09:22 -0800)]
Merge "Actually call the script when plugins try to invoke scripts from v8 b/issue?id=2506729"

14 years agoPrepare touch key modifiers for upstreaming.
Ben Murdoch [Mon, 1 Mar 2010 12:14:11 +0000 (12:14 +0000)]
Prepare touch key modifiers for upstreaming.

Fix two compiler warnings in EventHandler.cpp

The webkit bug tracking this was https://bugs.webkit.org/show_bug.cgi?id=35521
and was landed to the WebKit tree as r55843.

Change-Id: Id49ba00d49bf98797a79b6f55b1cb1f906f5e0ad