v8 binding of ClientRectList doesn't have indexed access method. For example, on translate.google.com chromium doesn't show balloon because of the following code throws JavaScript exception. p = a.getClientRects(); ... ; ... p[0].top // p[0] is undefined in chromium According to CSSOM View Module spec, ClientRectList must provide indexed access method that acts like item() method. http://dev.w3.org/csswg/cssom-view/#clientrectlist
Created attachment 29695 [details] Add V8ClientRectListCustom.cpp WebCore/ChangeLog | 9 +++ .../bindings/v8/custom/V8ClientRectListCustom.cpp | 55 ++++++++++++++++++++ 2 files changed, 64 insertions(+), 0 deletions(-)
Comment on attachment 29695 [details] Add V8ClientRectListCustom.cpp Looks good, except for: Add Bug URL (https://bugs.webkit.org/show_bug.cgi?id=25329) here.. > + Add indexed access method in v8 binding of ClientRectList. > + > + * bindings/v8/custom/V8ClientRectListCustom.cpp: Added. > + (WebCore::INDEXED_PROPERTY_GETTER):
Created attachment 29696 [details] Add V8ClientRectListCustom.cpp WebCore/ChangeLog | 9 +++ .../bindings/v8/custom/V8ClientRectListCustom.cpp | 55 ++++++++++++++++++++ 2 files changed, 64 insertions(+), 0 deletions(-)
Created attachment 29697 [details] add bug URL in ChangeLog WebCore/ChangeLog | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)
Landed as http://trac.webkit.org/changeset/42829.
Moving all JavaScriptGlue bugs to JavaScriptCore. The JavaScriptGlue framework itself is long gone. And most of the more recent bugs put in this component were put there by people who thought this was for some other aspect of “JavaScript glue” and have nothing to do with the actual original reason for the existence of this component, which was an OS-X-only framework named JavaScriptGlue.