summaryrefslogtreecommitdiffstats
path: root/webkit/port/bindings/v8
Commit message (Collapse)AuthorAgeFilesLines
* This is a cleaned up fix of Christian's original patch in fqian@google.com2008-12-063-10/+92
| | | | | | | | | | | http://codereview.chromium.org/13176 I cleaned it a bit so it does not leak memory. There is a corner case that can crash a test, so I have to make a workaround. Review URL: http://codereview.chromium.org/13224 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6472 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "Original CL: http://codereview.chromium.org/12831, fix the build errortc@google.com2008-12-061-13/+2
| | | | | | | | | | | for http://codereview.chromium.org/13181." This reverts commit r6463. Review URL: http://codereview.chromium.org/13225 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6468 0039d316-1c4b-4281-b951-d872f2087c98
* Original CL: http://codereview.chromium.org/12831, fix the build error for ↵hclam@chromium.org2008-12-051-2/+13
| | | | | | | | http://codereview.chromium.org/13181. Review URL: http://codereview.chromium.org/13217 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6463 0039d316-1c4b-4281-b951-d872f2087c98
* Reverting 6439.nsylvain@chromium.org2008-12-051-11/+2
| | | | | | | Revision 6439 broke the build. I'm reverting it. Please monitor the build after submitting code Review URL: http://codereview.chromium.org/13181 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6441 0039d316-1c4b-4281-b951-d872f2087c98
* Same as CL 12831, create a new one to get rid of the eol-style commit error.hclam@chromium.org2008-12-051-2/+11
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6439 0039d316-1c4b-4281-b951-d872f2087c98
* Reverted not-quite-working fix for hotmail issue.plesner@google.com2008-12-053-49/+5
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6431 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed crash when stack overflow occurs while creating the constructorplesner@google.com2008-12-051-0/+4
| | | | | | | for a don wrapper type. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6429 0039d316-1c4b-4281-b951-d872f2087c98
* Fixed dom node and constructor instantiation so that dom constructorsplesner@google.com2008-12-053-5/+45
| | | | | | | | now have the object prototype as their implicit prototype, rather than the function prototype. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6428 0039d316-1c4b-4281-b951-d872f2087c98
* Added line number and source URL information to inspector console messages.sgjesse@chromium.org2008-12-053-2/+97
| | | | | | | | | | | | | This uses a debugger API in V8 which can look at the JavaScript execution stack and find the line number and source URL for the top stack frame. The JavaScript functions required for this are added to a new utility context created in V8Proxy. This context is created as a singleton (on demand) as it has no dependency in the page currently running. I will not submit this change until V8 version 0.4.5 is used in Chrome as this change depends on a new V8 debugger API added to that version. The change also requires a second step to udate the WebKit DEPS. BUG=2960 Review URL: http://codereview.chromium.org/12804 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6425 0039d316-1c4b-4281-b951-d872f2087c98
* Move ASSERT that was accidentally moved to the wrong position. Theager@google.com2008-12-041-6/+7
| | | | | | | | | | ASSERT is invalid in the new position and it is causing layout test failures in debug mode. TBR=feng Review URL: http://codereview.chromium.org/13123 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6352 0039d316-1c4b-4281-b951-d872f2087c98
* Fix the compilation error in debug build on linux.fqian@google.com2008-12-041-0/+1
| | | | | | | | TBR = tony Review URL: http://codereview.chromium.org/12932 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6345 0039d316-1c4b-4281-b951-d872f2087c98
* De-peerable part 2. Lot of changes on the binding side.fqian@google.com2008-12-049-385/+535
| | | | | | | | | | | The binding code relies on the type id to cast 'void*' to the right C++ type in order to call ref() and deref(). Bump third_party/WebKit to 6342 to include depeered RefCounted files and etc. Review URL: http://codereview.chromium.org/12903 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6343 0039d316-1c4b-4281-b951-d872f2087c98
* fix WebKitCSSTransformValue not being initializedtc@google.com2008-12-031-1/+6
| | | | | | | Review URL: http://codereview.chromium.org/13107 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6327 0039d316-1c4b-4281-b951-d872f2087c98
* src/webkit side of webkit merge 38760:38800ojan@google.com2008-12-037-109/+196
| | | | | | Review URL: http://codereview.chromium.org/13034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6325 0039d316-1c4b-4281-b951-d872f2087c98
* Some cleanup of ScriptValue.fqian@google.com2008-12-032-8/+38
| | | | | | Review URL: http://codereview.chromium.org/13102 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6310 0039d316-1c4b-4281-b951-d872f2087c98
* Unfork HTMLOptionsCollection.idl. This was forked a long time ago andager@google.com2008-11-282-3/+14
| | | | | | | | | | | | we no longer need it. The only unfortunate things is that to unfork we have to add another custom getter that does not really need to be customized. The commit will be a two-step process. I'll update the WebKit DEPS once I know the new version. Review URL: http://codereview.chromium.org/10996 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6111 0039d316-1c4b-4281-b951-d872f2087c98
* src/webkit side of webKit merge 38653:38729ojan@google.com2008-11-274-11/+145
| | | | | | Review URL: http://codereview.chromium.org/12708 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6081 0039d316-1c4b-4281-b951-d872f2087c98
* src/webkit side of webKit merge 38625:38653ojan@google.com2008-11-262-0/+11
| | | | | | Review URL: http://codereview.chromium.org/12690 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6052 0039d316-1c4b-4281-b951-d872f2087c98
* Remove dependencies on base/glue from these 2 port files.jam@chromium.org2008-11-262-28/+7
| | | | | | Review URL: http://codereview.chromium.org/12460 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6046 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up v8_binding.h by putting config.h at the top.darin@chromium.org2008-11-261-18/+4
| | | | | | | | R=fqian Review URL: http://codereview.chromium.org/12461 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6031 0039d316-1c4b-4281-b951-d872f2087c98
* src/webkit side of webKit merge 38600:38625.ojan@google.com2008-11-264-43/+134
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6023 0039d316-1c4b-4281-b951-d872f2087c98
* Move RGBColor.{h,cpp} into port/bindings/v8 since they are specific to the V8darin@chromium.org2008-11-262-0/+78
| | | | | | | | | | bindings ;-) R=dglazkov Review URL: http://codereview.chromium.org/12658 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@6012 0039d316-1c4b-4281-b951-d872f2087c98
* Bridge calls to get the root NPObject from a WebPluginContainer.darin@chromium.org2008-11-242-30/+3
| | | | | | | | | | | | | | | | I also did a little cleanup in getPlugins. I found that there was a WebPluginInfo struct declared within the WebCore namespace that was causing us to need '::' in front of WebPluginInfo. I killed the erroneous declaration so that the rest could be cleaned up. I also renamed getPlugins to plugins since I think that is more consistent with how Apple names these kinds of methods. There was some old, unused USE(JSC) code in ScriptController.cpp that I deleted. R=erikkay Review URL: http://codereview.chromium.org/12601 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5928 0039d316-1c4b-4281-b951-d872f2087c98
* Revert part of changes made in http://codereview.chromium.org/10687fqian@google.com2008-11-242-8/+41
| | | | | | | | | The document wrapper wasn't kept alive in the life time of the frame. This results issue 4532. I don't how to create a test case yet, but verified that dromaeo test runs fine with this fix. Review URL: http://codereview.chromium.org/11376 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5924 0039d316-1c4b-4281-b951-d872f2087c98
* Remove use of wide characters in stats table identifiers.evanm@google.com2008-11-224-152/+152
| | | | | | | Review URL: http://codereview.chromium.org/11544 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5880 0039d316-1c4b-4281-b951-d872f2087c98
* Move ScheduledAction.h into bindings/v8 where it belongs.darin@chromium.org2008-11-211-0/+21
| | | | | | | | R=dglazkov Review URL: http://codereview.chromium.org/11529 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5866 0039d316-1c4b-4281-b951-d872f2087c98
* Rollback "Remove use of wide characters in stats table identifiers."evanm@google.com2008-11-214-152/+152
| | | | | | | This reverts commit r5847. git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5850 0039d316-1c4b-4281-b951-d872f2087c98
* Remove use of wide characters in stats table identifiers.evanm@google.com2008-11-214-152/+152
| | | | | | | Review URL: http://codereview.chromium.org/11544 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5847 0039d316-1c4b-4281-b951-d872f2087c98
* Relanding this fix. The earlier attempt broke test_shell_tests. The fixananta@chromium.org2008-11-211-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | has been added to this CB. Fix Silverlight windowless plugin painting issues. This fixes the following issues:- 1. http://code.google.com/p/chromium/issues/detail?id=4272 2. http://code.google.com/p/chromium/issues/detail?id=301 (Partially) The fixes are as below:- 1. Silverlight in the NPP_HandleEvent call for WM_PAINT, calls NPN_GetProperty for a bunch of properties like pageXOffset, pageYOffset, etc. It expects these properties to have integer types on return. We always return double. Firefox returns integer for these properties. Added a check in the conversion to NPVariant function in v8 to check for whether the value is an integer and return the intger type. 2. When the windowless plugin calls NPN_InvalidateRect we ask the plugin to paint in the same call, which the Silverlight plugin does not like. It relies on the fact that browsers would initiate invalidation asynchronously and eventually paint. This is a perfectly legal assumption. The Flash plugin does work if we synchronously ask it to paint. However other plugins could have similar issues. I verified with worldofwarcraft.com to see if the async paint has any sideeffects and there were none. 3.If the Silverlight plugin is not visible initially as on msdn.microsoft.com, it does not paint. This occurs because the plugin expects proper paints to come from the browser. It does not invalidate itself in UpdateGeometry as Flash. The plugin widget on msdn is not dynamic. It does call NPN_InvalidateRect initially when it is not visible. We don't send the call to the renderer as the plugin is not visible. To workaround this we now track the damaged rect even if the rect does not intersect the clipping rect of the plugin. In a geometry update if the plugin is visible, we send over the accumulated damaged rect to the renderer. The Silverlight plugin instance on msdn.microsoft.com does not work correctly even with these fixes. However it paints correctly. R=jam Bug=4272,301 Review URL: http://codereview.chromium.org/11569 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5829 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r5816 due to InvokeMethods failures in test_shell_tests.sgk@google.com2008-11-211-4/+1
| | | | | | Review URL: http://codereview.chromium.org/11342 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5818 0039d316-1c4b-4281-b951-d872f2087c98
* Fix Silverlight windowless plugin painting issues. This fixes theananta@chromium.org2008-11-211-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | following issues:- 1. http://code.google.com/p/chromium/issues/detail?id=4272 2. http://code.google.com/p/chromium/issues/detail?id=301 (Partially) The fixes are as below:- 1. Silverlight in the NPP_HandleEvent call for WM_PAINT, calls NPN_GetProperty for a bunch of properties like pageXOffset, pageYOffset, etc. It expects these properties to have integer types on return. We always return double. Firefox returns integer for these properties. Added a check in the conversion to NPVariant function in v8 to check for whether the value is an integer and return the intger type. 2. When the windowless plugin calls NPN_InvalidateRect we ask the plugin to paint in the same call, which the Silverlight plugin does not like. It relies on the fact that browsers would initiate invalidation asynchronously and eventually paint. This is a perfectly legal assumption. The Flash plugin does work if we synchronously ask it to paint. However other plugins could have similar issues. I verified with worldofwarcraft.com to see if the async paint has any sideeffects and there were none. 3.If the Silverlight plugin is not visible initially as on msdn.microsoft.com, it does not paint. This occurs because the plugin expects proper paints to come from the browser. It does not invalidate itself in UpdateGeometry as Flash. The plugin widget on msdn is not dynamic. It does call NPN_InvalidateRect initially when it is not visible. We don't send the call to the renderer as the plugin is not visible. To workaround this we now track the damaged rect even if the rect does not intersect the clipping rect of the plugin. In a geometry update if the plugin is visible, we send over the accumulated damaged rect to the renderer. The Silverlight plugin instance on msdn.microsoft.com does not work correctly even with these fixes. However it paints correctly. R=jam Bug=4272,301 Review URL: http://codereview.chromium.org/11492 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5816 0039d316-1c4b-4281-b951-d872f2087c98
* src/webkit side of merge 38500:38550.ojan@google.com2008-11-214-3/+3
| | | | | | Review URL: http://codereview.chromium.org/11551 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5803 0039d316-1c4b-4281-b951-d872f2087c98
* Added GC protection support for objects with possible pending activity which ↵sgjesse@chromium.org2008-11-206-15/+168
| | | | | | | | | | | | | | | | | | | | | | is only backed by weak wrappers. The objects which can have pending activity are XMLHttpRequest and MessagePort. In WebKit these two classes are both instances of ActiveDOMObject. In the V8 binding layer these two types of objects are now beeing tracked so that before GC their wrappers can be made not weak if there is currently pending activity. In addition to that MessagePort wrappers now have an additional internal field to reference their entangled port when entangled. Before MessagePort where added to WebKit pending activity for XMLHttpRequest was handled through a direct GC protect mechanism which protected/unprotected the object when its state changed. However, using this for MessagePort would require an GC protection check in each MessagePort message as the transition to/from pending is not as explicit as for XMLHttpRequest. Changed direct calls to dom_object_map().set(...) to use SetJSWrapperForDOMObject and added an ASSERT to check that SetJSWrapperForDOMObject is called with a DOM wrapper object. Changed the order of calls to SetDOMWrapper and SetJSWrapperForDOMObject to make sure that SetDOMWrapper is called first. This fixes 3 GC related layout tests chrome/fast/dom/xmlhttprequest-gc.html LayoutTests/fast/events/message-channel-gc-2.html LayoutTests/fast/events/message-channel-gc-3.html Added a chrome specific GC layout test for MessagePort (chrome/fast/dom/xmlhttprequest-gc.html) to match the existing one for XMLHttpRequest (chrome/fast/dom/xmlhttprequest-gc.html). This change forks MessagePort.cpp. Review URL: http://codereview.chromium.org/11205 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5770 0039d316-1c4b-4281-b951-d872f2087c98
* Added parameter checking to window.postMessage. Before this change passing ↵sgjesse@chromium.org2008-11-181-3/+5
| | | | | | | | | anything else than a message port as the second parameter would crash. Acccording to the draft standard passing null as the second parameter should act as if only two parameters (parameter 1 and 3) where passed. WebKit treats anything else than a message port as the second parameter as if it was not passed (the draft standard is not explicit on that) so we do the same. Added a layout test to test window.postMessage parameter checking. Review URL: http://codereview.chromium.org/11405 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5605 0039d316-1c4b-4281-b951-d872f2087c98
* Fix a renderer crashing bug with NPObject method references.michaeln@google.com2008-11-141-3/+7
| | | | | | | | http://www.corp.google.com/~michaeln/flash_crash/crash.html Review URL: http://codereview.chromium.org/10763 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5516 0039d316-1c4b-4281-b951-d872f2087c98
* Added stats counters and trace event to ChromiumBridge.erikkay@google.com2008-11-143-15/+12
| | | | | | Review URL: http://codereview.chromium.org/10752 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5491 0039d316-1c4b-4281-b951-d872f2087c98
* removed a bunch of minor glue dependencies from porterikkay@google.com2008-11-141-7/+4
| | | | | | Review URL: http://codereview.chromium.org/10919 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5485 0039d316-1c4b-4281-b951-d872f2087c98
* Add GCController support to test_shell.fqian@google.com2008-11-143-2/+33
| | | | | | | | | | | | | | | | | This is done in the binding layer, GCController is a JS object, GCController.collect() is a JS function which calls gc(). GCController object can be enabled by calling ScriptController::setShouldExposeGCController(true); GCController.collect() needs V8 expose gc function, which is controlled by a flag '--expose-gc'. Otherwise GCController.collect() has no effect. By default, test_shell exposes both gc function and GCController object. Review URL: http://codereview.chromium.org/10719 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5482 0039d316-1c4b-4281-b951-d872f2087c98
* Unfork EventTarget.idl and CSSPrimitiveValue.idl.ager@google.com2008-11-141-15/+0
| | | | | | | | We no longer use EventTarget.idl and CSSPrimitiveValue.idl can be used directly from WebKit with a minor change to the code generator. Review URL: http://codereview.chromium.org/10879 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5468 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up the proxy code for handling frame navigation.fqian@google.com2008-11-134-109/+62
| | | | | | | | | | | | | | When a frame navigates to a new page, the old context handle is disposed, and the global proxy object is detached from the old context. A new context is created using the global proxy object. However, the security token is not created because, at this point, the security origin is not updated to new URL. When the new document is ready, V8Proxy updates the security token using the security origin of the document. Our code relies on the fact that ScriptController::clearWindowShell be called only when the frame loads a page, but not at closing time. Review URL: http://codereview.chromium.org/10687 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5396 0039d316-1c4b-4281-b951-d872f2087c98
* Unfork SVGElementInstance.idl and EventTargetNode.idl.ager@google.com2008-11-131-12/+0
| | | | | | | | | | EventListener attributes have been added to the WebKit idl files and we can now use them as is with a minor change to the code generator. Also cleaned up DOMWindow.idl and got rid of some of the differences. Review URL: http://codereview.chromium.org/10684 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5349 0039d316-1c4b-4281-b951-d872f2087c98
* * add MIME type functions to ChromiumBridgeerikkay@google.com2008-11-121-2/+3
| | | | | | | | * add resource protocol to ChromiumBridge Review URL: http://codereview.chromium.org/10836 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5297 0039d316-1c4b-4281-b951-d872f2087c98
* Minor cleanup in port/. Eliminate some unused files and a redundant include ↵darin@chromium.org2008-11-121-1/+0
| | | | | | | | | | in v8_proxy.cpp R=ojan Review URL: http://codereview.chromium.org/10628 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5247 0039d316-1c4b-4281-b951-d872f2087c98
* Some changes necessary to build an optimized binary on Linux.evanm@google.com2008-11-111-0/+2
| | | | | | | | | | | | | | | | | Two other speedup changes that I'm not including: root_env = Environment( tools = ['component_setup'], + RPATH=[], And linux_env.Tool('target_platform_linux') -linux_env.Tool('target_debug') +linux_env.Tool('target_optimized') Review URL: http://codereview.chromium.org/10292 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5193 0039d316-1c4b-4281-b951-d872f2087c98
* Fix Chromium bug 4178jhaas@chromium.org2008-11-111-1/+5
| | | | | | | | | | | "new Image()" was aliased in the V8 bindings to document.createElement('image'). While the behavior of new Image() doesn't appear to be well-defined in spec, all other browsers always create an HTML image element, regardless of the type of the current document. Changed our implementation to conform. Review URL: http://codereview.chromium.org/10268 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5186 0039d316-1c4b-4281-b951-d872f2087c98
* Newlines, argh TBR=agldglazkov@google.com2008-11-112-2/+2
| | | | | | Review URL: http://codereview.chromium.org/10277 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5146 0039d316-1c4b-4281-b951-d872f2087c98
* Fix Linux tree by adding a newline to JSDOMBinding.cppagl@chromium.org2008-11-111-1/+1
| | | | | | | Review URL: http://codereview.chromium.org/9758 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5143 0039d316-1c4b-4281-b951-d872f2087c98
* Get rid of ExceptionContext (2/2)dglazkov@google.com2008-11-107-42/+240
| | | | | | Review URL: http://codereview.chromium.org/9754 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5141 0039d316-1c4b-4281-b951-d872f2087c98
* Landing 37604:38097 mergedglazkov@google.com2008-11-109-67/+114
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5110 0039d316-1c4b-4281-b951-d872f2087c98
* Keep MessagePort wrappers alive for the life-time of the correspondingager@google.com2008-11-073-11/+45
| | | | | | | | | | | | | MessageChannel. I create the MessagePort wrappers when a MessageChannel is constructed and put references to them in internal fields in the MessageChannel. This is a fix for http://code.google.com/p/chromium/issues/detail?id=4195 Review URL: http://codereview.chromium.org/9508 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5006 0039d316-1c4b-4281-b951-d872f2087c98