W3C home > Mailing lists > Public > public-css-archive@w3.org > May 2017

[csswg-drafts] [cssom-view] Having getClientRects() return a sequence is not Web-compatible

From: Chris Dumez via GitHub <sysbot+gh@w3.org>
Date: Tue, 30 May 2017 17:58:57 +0000
To: public-css-archive@w3.org
Message-ID: <issues.opened-232333122-1496167135-sysbot+gh@w3.org>
cdumez has just created a new issue for https://github.com/w3c/csswg-drafts:

== [cssom-view] Having getClientRects() return a sequence is not Web-compatible ==
Having getClientRects() return a sequence is not Web-compatible:
- https://drafts.csswg.org/cssom-view/#extension-to-the-element-interface
- https://drafts.csswg.org/cssom-view/#extensions-to-the-range-interface

WebKit used to return a ClientRectList type that had an item() operation. We recently updated WebKit to match the specification and return an JS array of DOMRect objects.

However, this broke Google Spreadsheet as explained here:
- https://bugs.webkit.org/show_bug.cgi?id=172703

The relevant Google spreadsheet code seems to be:
function Epb(a) {
    Dpb(a);
    a = xpb(a).Pq().getClientRects();
    return {
        first: a.item(0),
        nV: a.item(a.length - 1)
    }
}

in https://docs.google.com/static/spreadsheets2/client/js/2594367115-ritz_waffle_i18n_core.js

Based on this, we will have to re-introduce a List type with an item() operation in WebKit and I would suggest for the specification to be updated (Maybe DOMRectList?) as well.

Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/1479 using your GitHub account
Received on Tuesday, 30 May 2017 17:59:03 UTC

This archive was generated by hypermail 2.3.1 : Monday, 23 October 2017 10:12:54 UTC