2011-06-25 Joseph Pecoraro <joepeck@webkit.org>
authorjoepeck@webkit.org <joepeck@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 25 Jun 2011 23:01:15 +0000 (23:01 +0000)
committerjoepeck@webkit.org <joepeck@webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Sat, 25 Jun 2011 23:01:15 +0000 (23:01 +0000)
commitafb149facdbe193bf880b734f85bfbb6c2cabcdf
treece03d7be339ae48b093208d0749d85411b7bce8d
parentcf20679a5184c26682e1c1ed9c8361d684799d8a
2011-06-25  Joseph Pecoraro  <joepeck@webkit.org>

        Reviewed by Simon Fraser.

        Inspector highlight rect is wrong for contents of transformed iframes
        https://bugs.webkit.org/show_bug.cgi?id=53627

        Part 1: Provide FloatQuad versions of convertFromRenderer,
        convertToContainingView, and convertChildToSelf, so that we
        can get the fully transformed quad of a renderer all the
        way up to the root widget.

        * page/FrameView.cpp:
        (WebCore::FrameView::convertFromRenderer):
        (WebCore::FrameView::convertToContainingView):
        * page/FrameView.h:
        * platform/ScrollView.h:
        (WebCore::ScrollView::convertChildToSelf):
        * platform/Widget.h:
        * platform/Widget.cpp:
        (WebCore::Widget::convertToContainingView):
        Provide FloatQuad versions of these already existing functions.

        (WebCore::Widget::convertToRootContainingView):
        Provide a helper conversion function to recursively
        convert a given FloatQuad up to the root widget.

        * inspector/DOMNodeHighlighter.cpp:
        (WebCore::DOMNodeHighlighter::DrawNodeHighlight):
        Use the new methods to convert the FloatQuad for the highlighted
        node to the root container, without losing transformation
        information. Add a FIXME for SVG, which is still broken.

        * WebCore.exp.in:
        Export the new Widget functions so WebKit can link properly.

git-svn-id: http://svn.webkit.org/repository/webkit/trunk@89753 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Source/WebCore/ChangeLog
Source/WebCore/WebCore.exp.in
Source/WebCore/inspector/DOMNodeHighlighter.cpp
Source/WebCore/page/FrameView.cpp
Source/WebCore/page/FrameView.h
Source/WebCore/platform/ScrollView.h
Source/WebCore/platform/Widget.cpp
Source/WebCore/platform/Widget.h