[Bug 20832] New: Consider defining methods for converting points between different transformed coordinate systems

https://www.w3.org/Bugs/Public/show_bug.cgi?id=20832

            Bug ID: 20832
           Summary: Consider defining methods for converting points
                    between different transformed coordinate systems
    Classification: Unclassified
           Product: CSS
           Version: unspecified
          Hardware: PC
                OS: Windows NT
            Status: NEW
          Severity: normal
          Priority: P2
         Component: CSSOM View
          Assignee: dave.null@w3.org
          Reporter: jrossi@microsoft.com
        QA Contact: public-css-bugzilla@w3.org

Opening this based on discussion in the Pointer Events WG [1]

>From Doug Schepers <schepers@w3.org>:

When elements are transformed (shifted X/y through translate, larger or smaller
through scale, etc.) using CSS transforms or SVG, dealing with pointer events
becomes more complicated and unintuitive... things just aren't where they
appear to be.

This leads to all sorts of confusion for authors in positioning things...
dragging, repositioning, or creating elements based on pointer position. (To a
lesser extent, this is a general problem with positioning relative to
transformed elements, but nesting context takes care of most
non-pointer-position cases.)

Jonathan Watt (Mozilla) has a handy script library [2] that helps authors solve
this in SVG, but unless someone knows about that script, it is frustrating. I
think this should be solved in a spec, perhaps as a method to get the relative
transformed coordinates in the appropriate coordinate space.

Also, webkit has non-standard APIs similar to this that might be a good
starting point. [3]

WebKit has, on DOMWindow,

    WebKitPoint webkitConvertPointFromPageToNode(in Node node, in WebKitPoint
p);
    WebKitPoint webkitConvertPointFromNodeToPage(in Node node,  in WebKitPoint
p);

and

interface WebKitPoint {
    attribute float x;
    attribute float y;
};


[1]
http://lists.w3.org/Archives/Public/public-pointer-events/2013JanMar/0046.html
[2] http://jwatt.org/svg/tmp/mouse-relative-positioning.svg
[3]
http://lists.w3.org/Archives/Public/public-pointer-events/2013JanMar/0049.html

-- 
You are receiving this mail because:
You are the QA Contact for the bug.

Received on Thursday, 31 January 2013 01:02:42 UTC